Soru Bir grupta birden çok wordpress web sunucusu senkronizasyonu


Şirketim kısaca bir blog oluşturacak ve wordpress web sitesini fazlalık için barındıracak iki web sunucusu kurmayı planlıyorum. Normalde, bir çiftlikteki bir siteye bültenler yaptığımızda, bir tarafa doğru itilir, test edilir ve ardından diğer tarafa bırakılır. Wordpress güncellemeleri için bunu kolayca yapabiliriz. Ancak sorun, wp-content klasörünün nasıl işleneceği olur. Kullanıcılar yayınları yayınlayacağından ve grafikleri yükleyeceğinden, bunların hangi sunucuda kullanıcı tarafından yüklendiğine bakmaksızın çiftlikte bulunan diğer sunucuyla senkronize edilmesi gerekir.

Dosyaları çoğaltmak için DFS'yi kurabilirdim, ama bu aşırı dikiş gibi dikişler.

Robocopy'i her 15 dakikada bir ya da başka bir şekilde çalıştırabilirim, sonra da yayınlara zamanının en az 15 dakika içinde yayınlanmasını planladığından emin olun, böylece dosyaların çoğaltılması için zamanınız olur.

Dışarıda daha iyi çözümler var mı? Belki de bir wordpress eklentisi, grafikler postaya yüklendiğinde, otomatik olarak çiftlikte diğer sunuculara kopyalanırlar mı?

Windows 2008'de Wordpress'i çalıştırıyorum, bu yüzden Linux çözümleri çok fazla yardımcı olmayacak.


7
2018-06-29 21:51


Menşei




Cevaplar:


Geçmişte böyle şeyler için Süper Esnek Dosya Synchronizer'ı kullandık. Gerçekten iyi çalışıyor ve senkronizasyonu kontrol etmek için bir dizi seçenek var.


1
2017-07-01 02:03



Süper Esnek Dosya Synchronizer'ı beğeniyorum. Değişiklikleri algılayacak ve klasörleri otomatik olarak senkronize edecek bir özellik var gibi görünüyor. Bu özelliği kullandınız mı? Ne kadar iyi çalışıyor? - mrdenny
Bu özelliği kullanmadım, ancak dosyaları bir klasörden diğerine otomatik olarak taşımak için klasör izleme özelliğini kullandım. Unutulmaması gereken bir şey, "zamanlayıcı" nın hem bir uygulama hem de bir hizmet olarak çalışabilmesidir, böylece bir hizmet olarak çalıştığından emin olmak isteyeceksiniz. - Adam Brand


Ben IIS ile bir sihirbaz değilim, ama umarım teknik çevirir.

İki sunucu arasında yük dengeli bir paylaşılan ana bilgisayar adı olduğunu ve ayrıca her biri için genel olarak erişilebilir bir ad olduğunu varsayalım.

İstediğiniz, iki sunucudan birinde bir çeşit dosya eşitlemesiyle birlikte koşullu bir yönlendirme. URI, / wp-content ile başlar ve dosya varsa, yerel olarak sunun. Aksi takdirde diğer sunucuya yönlendirin. A sunucusu B'ye yönlendirir ve tersi de geçerlidir.

Bu, görüntüleyenler için sorunsuz bir deneyim ile sonuçlanmalıdır - bunlar, gönderim ile senkronizasyonun çalışması arasındaki pencerede resimler için geçici bir yönlendirme alacaktır. Bant genişliği veya artıklık endişelerine bağlı olarak, senkronizasyon aralığınız 15 dakikadan daha uzun olabilir, çünkü site yazının başladığı anda düzgün bir şekilde oluşturulmalıdır.

Nginx'te bunu şöyle bir blokla yapardım:

location ~ ^/wp-content {
  if( -f $request_filename ) {
    expires max;
    break;
  }
  rewrite ^/(.+)$ http://otherserver.com/$1 last;
}

Windows için nginx kullanılabilir, ancak bunu yapmak için web sunucusu yazılımını değiştirmek istediğinizden şüpheliyim. Umarım, fikir IIS’ye veya hangi yazılımı kullanıyor olmanıza dönüştürülebilir.


1
2018-06-29 22:14



IIS kullanıyorum. Sitenin benzersiz genel IP'leri yok, dolayısıyla dosya tekrarlanana kadar onları diğer sunucuya nasıl yönlendirebileceğimi bilmiyorum. Bu sunucu tarafından barındırılan yaklaşık 40 tane başka sitem var, blog bunlardan biri olacak, bu yüzden web sunucumu değiştiremiyorum. Bu fikri beğenirim. Dosya yerel olarak yoksa, ağ paylaşımını diğer düğümle kontrol etmek için IIS (veya wordpress) yapılandırmanın bir yolu olup olmadığını merak ediyorum. İdeal olarak 2 düğümden daha büyük ölçekli bir çözüm istiyorum ama alabileceğim şeyi alacağım. - mrdenny


Bunu ayrı bir yanıt olarak söylüyorum çünkü bu farklı bir yaklaşım:

Görüntüleri bulut depolama alanına (Amazon S3 veya benzeri) koyma ve kullanıcılarınızın buluta bağlantılar kullanmalarını sağlama. Bant genişliği maliyetleri biraz daha yüksek olabilir ve kullanıcıların öncelikle buluta yükleme yapması için gerekli eğitim sorunları olabilir, ancak yerel dosya sistemi veya çapraz sunucu kontrollerine olan ihtiyacı ortadan kaldırır.

Ayrıca, dağıttığınız sunucuların sayısından bağımsız olarak ölçeklendirilmelidir.


1
2018-06-30 06:43



Satış elemanlarımız sistemi kullanıyor olacaklar. Söyleyelim, teknik değiller. S3'e yükleme yapmak muhtemelen yapabileceklerinin ötesindedir ve bu maliyeti ücretsiz olarak yapmaya çalışıyorum çünkü sunuculara, depolara ve bant genişliğine bir servet harcadık. - mrdenny
Bunun eski olduğunu biliyorum, ancak artık WordPress'deki yüklemeleri belirli bir S3 hesabına otomatik olarak senkronize eden "WordPress için Amazon S3" adlı bir WordPress eklentisi var. Her zaman sahip oldukları aynı yükleme işlevlerini kullanan yönetici için şeffaftır. - MightyE


Tek bir ağ dosya paylaşımında (DFS yok) bir seçenek içeriyor mu?

Ne dersin ahenk?


0
2018-06-30 00:40



Yapmamayı tercih ederim. Tüm tek hata noktalarından kaçınmaya çalışıyoruz ve dosya sunucularımız zaten sahip oldukları ağ paylaşımlarıyla yeterince meşgul. - mrdenny


Bunun için rsync'i kullanabilirsiniz. Aksi takdirde, kaynak kontrolü altında dosyalarınız varsa, farklı makinelere (hatta gerekirse geri alma) geri dönebilmek için Capistrano gibi bir şey kullanabilirsiniz.

Birden fazla makineye sahip olduğunuzda, dağıtmak ve geri almak mümkün çok kullanışlı.


0
2017-07-01 02:28



rsync kötü bir fikir olmaz. Robocopy zaten sistemlerde olduğu kadar kolay olurdu. Senkronizasyonu zamanlamak zorunda kalmama problemini çözmez. - mrdenny


Aşağıdaki anahtarlar ile robocopy hakkında nasıl: 1. Değişiklikleri tespit etmek ve senkronizasyonu çalıştırmak için - / MON: n :: MONitor kaynağı; n'den daha fazla değişiklik olduğunda tekrar çalıştırın. / MOT: m :: MOnitor kaynağı; m dakika cinsinden tekrar çalıştırın.

  1. bant genişliği tasarrufu seçenekleri - / RH: hhmm-hhmm :: Çalışma Saatleri - yeni kopyaların başlatılacağı zamanlar. / PF :: Dosya Başına (geçiş başına değil) çalışma saatlerini kontrol edin.

neways, nihayet bu konu için neyi kullandın?


0
2017-11-10 23:45



İşi yapmak için DFS kullanarak bitti. Aynı sunucularda sunucudan sunucuya anında veri kopyalamaya ihtiyaç duyan başka siteler de vardı, bu nedenle DFS diğer sitelerin gereksinimlerine uyuyor. Aynı şeyi yapmak için iki paket çalıştırmanın bir anlamı olmadığından, bu site için DFS'yi de kullanmaya başladım. - mrdenny