Yazılımınızı çevrimiçi alana uyarlarken çevik olmalısınız. Her büyüklükteki işletme büyük miktarda trafik görmeye ve birden çok sunucuya dağılmış büyük miktarda veriyle çalışmaya başlıyor. Bu, birçok soruna neden olabilir. Sorun karmaşık, ama endişelenme. Birkaç çözüm mevcuttur.
Geleneksel olarak tescilli ticari yazılım kullanan şirketler için, Netflix, Facebook ve LinkedIn gibi şirketlerde kullanılan açık kaynaklı yazılımları benimseme zamanı. Artık herhangi bir şirket, bu maliyetler ve yazılım lisans ücretlerinde bir kuruş ödemeden bu endüstri devleriyle aynı yazılımı çalıştırabilir. Bu, şirketlerin bir ürünü piyasaya sürmeden önce yüz binlerce dolara altyapı yatırımı yaptığı ilk dot-com patlamasından oldukça farklı.
Sadece kredi kartı ve 15 dakika ile donatılmış olan Amazon Web Services (AWS) veya Rackspace Cloud'da 100 sunucudan oluşan bir çiftlik açabilirsiniz. Açık kaynaklı yazılım, kurumsal bir veritabanı sunucusunu tek bir komutla indirip yükleyebileceğiniz noktaya kadar olgunlaştı.
Sunucu geçişi
Amazon ve benzerlerinden gelen servislerle sunucuları kurmak çok daha kolay olabilir, ancak oradan yazılımınızın bulutta güvenli bir şekilde kurulmasına ve çalışmasına nasıl gidersiniz? Başlarken keşfedeceğiniz dört çözüm:
- Hizmet Olarak Platform (PaaS): Barındırma sağlayıcılarının bu türün çoğunu yönetecek yeni bir cins doğdu . Şöyle çalışır: Kodunuzu yükler ve hangi hizmetlere ihtiyacınız olduğunu söylersiniz. Bu, altyapı yerine yazılımınıza odaklanmanızı sağlar. Ancak PaaS hizmetlerinin kendi sunucularınızı çalıştırmaktan çok daha pahalı olduğunu ve çalıştırabileceğiniz yazılımda genellikle daha az esneklik sağladığını unutmayın. Heroku şu anda bu alanda lider gibi görünüyor, ancak dotCloud ve Google App Engine gibi hizmetlerin de cazip teklifleri var.
- Yapılandırma Yönetim Araçları: Bulut sunucuların geçici niteliğinde, birkaç saat içinde birden fazla sunucuyu döndürmek ve sonra maliyetten tasarruf etmek için hepsini yıkmak yaygındır. Yapılandırma yönetimi (CM), tüm bu süreci açıklayıcı bir dilde yazmanıza olanak tanır; ilk kurulumdan sonra çok az manuel çaba gerektirmez veya hiç çaba gerektirmez. Bu CM araçları, aynı anda bir sunucu filosuna yapılandırma ve yazılım güncellemelerini gönderebilir. Ancak, ilk kurulum sırasında genellikle önemli çabaların yanı sıra devam eden tweaking gerektirirler. Şef ve Kukla burada popüler araçlardır, ancak en yeni, mevcut yapılandırma yönetimi araçlarının ötesinde tonlarca işlevsellik sağlayan Salt hakkında heyecan duyuyoruz.
- Üçüncü Taraf Hizmetleri: Sistemlerin günlüğe kaydetme ve uyarma işlemlerinin çoğu üçüncü taraf hizmetleri tarafından gerçekleştirilebilir. Aslında, üçüncü taraf sağlayıcıların işi kendi içinde yapmaktan daha iyi bir seçenek olduğu iddia edilebilir. Bu alandaki popüler şirketler arasında New Relic, Sentry, Pingdom ve PagerDuty bulunur.
- Üçüncü Taraf Danışmanları: Tüm bu araçlar için ilk öğrenme eğrisi diktir. Sadece araçları nasıl kullanacağınızı öğrenmekle kalmaz, aynı zamanda hangi araçlara ihtiyacınız olduğunu da öğrenmeniz gerekir. Birçok şirket için, ilk kurulum ve eğitim için bu teknolojide deneyimli uzmanlar getirmek mantıklıdır.
Bağlantı komplikasyonları
Gözetimsiz bırakılırsa, sunucularınızdaki komplikasyonlar felaket olabilir. Hesaplama sorunlarını geçmişte ele almamız gerekmeyen bir ölçekte görüyoruz. İnternette, tek bir web sitesi günde milyonlarca sayfa görüntüleme sunabilir. Bu tür trafiği tek bir makine ile ele alamazsınız. Facebook ve Google gibi şirketler, her gün gördükleri büyük miktarda trafik ve veriyle başa çıkmak için yüz binlerce sunucuyu bulunduruyor.
Bu sorun ancak Web daha gerçek zamanlı hale geldikçe daha da artmaktadır. Tarayıcınızı Twitter ve Facebook güncellemeleriyle güncellemek için bilgisayarınız ya sunucuya uzun süredir devam eden bir bağlantı açık tutuyor ya da sürekli yeni veri istemek için bağlantılar açıyor. Bu, şu soruyu soran C10k sorununun merkezinde: Bir sunucunun aynı anda 10.000 bağlantıyı ele almasını nasıl sağlayabiliriz? Bazı insanlar 10.000 sayıya ulaşmış olsa da ( Urban Airship 500.000'den fazla yapıyor ), hala bir üst sınır var ve yüksek trafikli bir web sitesinde desteklememiz gereken kullanıcı sayısından daha az.
Teknolojinin yapılandırmasını ve dağıtımını birden çok sunucuda yönetmek, başta ezici bir sorundur. Bir yanlış adım, büyük bir güvenlik açığı veya tüm bir web sitesini kaldırmak anlamına gelebilir. Güçlü bir altyapı oluşturmak için zaman ve kaynak harcamak, bir onsluk önlemenin bir pound tedaviye değeceği eski atasının bir gerekliliği ve eşdeğeridir. Önceden kasıtlı planlama yaparak ürününüze yatırım yapmak için daha fazla zaman harcayabilirsiniz.Peter Baumgartner , dağıtılmış ekiplerin iletişim kurmasına yardımcı olan çevrimiçi bir platform olan Ginger'ın yapımcıları olan tam hizmetli web stüdyosu Lincoln Loop'un kurucusudur . Peter, Django tabanlı web geliştirme konusunda uzmandır ve girişimcilik ve uzaktan ekip çalışmasında fikir lideridir. Twitter veya Google + ' da kendisine ulaşmak için herkesi memnuniyetle karşılar .