Giriş
Birçok toplu iş veriler, her gün milyonlarca kaydın işlenmesi ve ben birkaç saat hiçbir şey yapmadan her gün oturup tüm makineler hakkında son zamanlarda düşünüyordum çalıştırmak nerede bir şirkette çalışmak. Bizim sistemlerinin işlem gücü desteklemek için bu makineleri kullanabilir olsa iyi olmaz mıydı? Bu makaleler set ben bir ofis istihdam potansiyel yararları bakmak için gidiyorum ızgara sanallaştırılmış ortamlarda kullanarak.
Olarak Bölüm 4 biz elde edilen sonuçlar her zaman en son iş bilgilerini ve mantık ile güncel böylece biz kod ve veri kaynaklarının son sürümü kullanıp sağlamak için araçlarını kullanarak baktı.
Ön Dağıtım
Yaptığın bir şey ve bir şey tek başına var eğer ızgara sistemi dağıtmadan önce bu kriter mevcut sistemi olacak! Eğer numaralar teminatlar kadar bu yedeklemek için yoksa sistem yapacaksın ne kadar ekstra çalışma arkadaşları hakkında söylemek ne olursa olsun bir şey değildir. Bu yüzden,
- Şu anda kaç kayıt işleyebilir? Günlük? Saat Başına?
- Ne kadar tipik bir iş dönüp alır?
- Ne kadar daha fazla kapasite var?
Ek sorular da var:
- Sizin işleme sunucu (veya işleme sunuculardan biri) bu nasıl yeteneklerinizi etkileyecek aşağı giderse, sakat olacak?
- Eğer / ızgara sistemi almak için bekliyoruz ne gibi avantajlar umuyorsunuz?
- Ofisinizde makineleri işler çalıştırabilen var mı?
- Sizin (veya iş dönüştürülebilir) çalışan bu tarzda wrok mıdır?
Son büyük nokta böyle önemli bir değişikliği üzerinde zaman almaktır. Tekrar yeni bir metodoloji, kriter kullanarak çalışmak için işlem kodu güncelleyin. Muhtemelen, bir sanal makine çalıştırmak için işleme sunucu kurmak, tüm işleme sunucu hemen sonra (nispeten sadece çok güçlü bir) başka bir işçi olacak. Yeni süreç yerleşmek için izin ver.
Dağıtım
Benim önerim ofis hafta içine pop, tüm tesisat ve kurulumu gerçekleştirmek olacaktır. Sadece bir iki haftalık tatil önce bunu yapın ve sonuçları ... belki de değil başa chap böylece diğer yoksul bırakmak ...
Bu gibi bir dağıtım sistemi için yavaş olması gerekmektedir. Bu sistemi kurmak oldukça basit olmasına rağmen, tüm ofis altyapısı (iyi dijital bir) etkileyecektir. Öncelikle, bir anda makinelerin bir çift için çalışan bilgisayarlar bir gün için günlük bazda nasıl performans monitör ağ trafiğini, dışarı rulo. Sen bulgulara tepki olarak iş yapılandırmasını değiştirmek gerekebilir.
Sistem birkaç makineleri (haydi tüm ofis makinelerinin% 10, yani 5 söylüyorlar) izleme ağ trafiği ve ana makine tekrar performance. Sonraki kriter tutmak ile geçtikten sonra, şimdi ilk deneylerimize göre% 33 daha fazla iş işleme yapılmalıdır. Bu yüzden olup olmadığını kontrol edin, veya bu ballpark en az olduğunuzu. Değilse, geçmeden önce ne olup bittiğini araştırmak. Eğer mutlu Tüm ofis makineleri tek tek makine performansı öldürme veya sekteye ağınıza taşlama olmadan çalışan kadar bu döngü tekrarlayın.
Tüm zamanlarda, tüm dağıtımlar yapılır sonra bile, kıyaslama tutun. Tüm işçiler, raporlama ve işlerini işlemek kontrol edin, yeni kod güncellemeleri sisteminizin hızını nasıl etkilediğini kontrol edin. Yavaşça (çok yavaş) ve işçilerine ağdan iyi almak için iş yapılandırma artırmak.
Dur!
Ne zaman çalışan sizin işçileri durdurmak isterseniz? Hepsi orada, yenileyici çalışan ve aç böcekler gibi verileri işlemek için ellerinden geleni çalışıyorlar. Cevap apaçık ortada ancak değer sadece durumda onun ardı ekledi. Sadece bir çıkış (0) ile işleme dosyasını düzenlemek or die () veya diğer bazı tablosunun işleme işi öldürmek için. Biz her zaman herhangi bir koşudan önce en son işlem komut dosyası için güncellemeyi deneyin neden önemli bir neden!
Gösteri Sistemi
Ben teknolojileri ve yöntemleri göstermek için çok küçük bir kılavuz hazırlandı kısa yazılar bu set yazmak için. Ben makaleler, öğreticiler çok okumak, ve kurulum ve neler olup bittiğini izlemek için çeşitli araçlar kullanılır. Hiçbir şekilde dışarı gitti ve trafik ve ne de bir bütün ofis doymuş var ben ev sahibi performansı nasıl etkilendiğini şöyle görmek için düzenli bir personelin bilgisayara erişimi vardı.
Benim gösteri sistemi gerçekten çok mütevazi idi. Ben bir iş denetimi sunucusu olarak kurmak benim normal masaüstü kullanılır. Bu konuda ben yüklü olan MySQL sunucusu çoğaltma konusunda master olarak ayarlanmış yüklü PHP ile bağlantılı, Â ve SVN apache (işçi VM üzerinden erişim için).
Daha sonra 6 yaşındaki bir windows XP dizüstü VirtualBox bir CentOS işçinin makine yarattı. Ben makine üzerine VM kopyaladıktan sonra belirtilen zamanlanmış görevler kurulum ve gidelim.
Sanal makine PHP, subversion, ve mySQL ile kurulmuştur. İşimi kontrolü sunucuları deposundan 'işçi' adlı bir şube, kontrol ve 'svn update' kullanarak güncelleştirilmiş olabilir emin oldum. Sonraki Ben bir köle olarak kurulum mySQL ve veri işçi VM iş denetimi sunucuda mySQL gelen çoğaltarak olduğunu kontrol etti. Bütün bunlardan sonra ben bash betiği ve cron işi ayarlamak.
Benim işleme komut temelde bu hatları (çok basit şeyler) birlikte gitti:
- Adı alanına Oku
- VM yapılan veri kaynağından bir tablo içinde benzer isimler sayısı sayılır
- Boşluklarla yukarıda ama yarma adı (yani adı, orta, soyadı) gibi isimlerin sayısı sayılır
- Bu proses 1000 defa tekrarlanır
Her iş çalıştırmak için yaklaşık 20 dakika sürdü. Bir noktada ben pencereleri laptop işçi VM birkaç kopya açtı ve işler işçinin her bir IP adresi tarafından kapalı kontrol edilmesi izledi. Bu noktada ben de çoğaltmayı otomatik olarak yeniden doğruladı.
Iş kontrolü sunucudan işlerini işlemek için başlayan bir işçi sonuçlandı rölantide dizüstü bırakmak. Dizüstü bilgisayar kullanımı sürdürme 30-60 saniyelik bir gecikme oldu, bu zaman ve personelin adil bir miktar makine dönerken onların makine kısa bir süre duraklama olabilir farkında yapılması gereken olacaktınız. Yeni makineler bu uzun bir duraklama olmayabilir. Boşta dönemlerinde bu makineleri tarafından gerçekleştirilen işleme miktarı yararı daha bir sabah kendi makinelerine gelmeden kısa bir süre (1 dakika demek) beklemek zorunda personeli daha ağır olacak (Ben sık sık uzun süre beklemek bir Windows Defender için bu ) yer almak güncelleştirmek onlar (bir sabah kahvesi kapmak için yararlı bir zaman!) bunun farkında yapıldı sağladı.
Genel olarak ben böyle bir sistem oluşturmak için kullanılabilecek teknolojiler göstermiştir emin hissediyorum. Ben böyle bir sistemin bir (çok) küçük ölçekte ve biraz daha bir ofisin makineleri kaynakları kullanmak kadar ölçekli olabilir deneme ile çalışır göstermiştir. Bunu yapma noktasına alamazsanız biliyorum / başkasının yaptığında görmek çok ilgi olurdu.
Sonuç / Değerlendirme
Sonraki apaçık adım, aslında gerçek bir dünyadan bir örnek almak ve bir ofis ortamında bu gibi bir sistem dağıtmak ve ne olacağını görmek için başlatmak olacaktır. Teknoloji ve etkinliğini biraz zor olabilir kanıtlamak için bir iz yanan şirket olmadan bu işlemek için bir iş sorma. Grid / Dağıtık bilgi-işlem çok popüler olan bazı çevreler ve bazı büyük uygulama (BIONC, SETI @ Home, Katlanır @ Home, vb) vardır. Ben, ancak, bir ofis ortamında dışarı atılmasında olabilir benim aramalarında bu gibi daha küçük bir ölçekte ve basit bir sistem bulamadı.
Neredeyse herhangi bir ofis mevcuttur çoğunlukla açık kaynak yazılım ve araçları kullanarak bir temelde sistemi oluşturdu. Teknolojileri temelde gösterdi ve beklendiği gibi gerçekleştirmek ve işe göstermek edildi. Umarım çok fazla değil çalışma ile ve çok basit bir kurulum ile aynı zamanda güçlü, ucuz, Â ve ölçeklenebilir bir ofis grid bilgi işlem sistemini dağıtabileceği gösterisi var.
Bir kez, bir sistem ve orada çalışan neredeyse özelleştirme ve siz yapabilirsiniz gelişmeler miktarı sonu yoktur. Örneğin istatistikleri / kıyaslama kolayca her gün böyle bir sistemin değerini gösteren eklenebilir. Yeni makineler hızlı ve kolay bir şekilde eklendi ve mevcut donanım yükseltmeleri ile geldiğinizde sizin işlem gücünü destekleme yapılabilir.
Seni Bu makaleler serisinin okuma zevk aldım ve bir ofis ızgara sistemi üzerinde çalışan düşünce için yiyecek verilen umuyoruz. Burada sunulan çözüm mutlaka her durumda çalışmaz ancak kendi çözüm kullanarak veri işleme yapılması için izin de uyumlu olmalıdır.
Bana herhangi bir yorum, düzeltilmesi veya iyileştirmeler göndermek için çekinmeyin ve ben eşleşecek şekilde güncelleştirilir bu makalede tutmak için elimden geleni yapacağım olun.