Angrybirds İnternet mağazası için yaptığımız şey şu:
Magento'da İngilizce sunum yapmayı düşünün 2012.
Meet Magento'da Almanca sunumu # 6.12
Şu anki Almanca "PHP Magazin" ayrıca 6 sayfalık bir makaleye sahiptir (Almanca olarak).
Fabrizio'nun yukarıda sıralanan tüm sunumlarını defalarca okuduktan sonra, bu cevabın gerçekten en iyisi olduğunu düşünüyorum, ancak daha fazla açıklama ve temel fikirlerin sunumlardan çıkarılmasını kullanabileceğini kabul ediyorum. Bu güncellemeyi gönderdiğim zaman 404'deydi).
Sunumlardaki ana kavramlara ekleyeceğim tek şey AWS / rakip teknolojilerindeki modern gelişmelerin, Cloudfront’un CDN performans iyileştirmeleri için gzip’i desteklediği gerçeği gibi ... CloudFlare'nun sunduğu gibi size ücretsiz SSL sonlandırması veriyor mu ? Onların Route 53 DNS’leri de CloudFlares kadar hızlı veya özellik açısından zengin değil, AWS’nin de hepsi CloudFlare’da sunulan benzer bir Web Uygulaması Güvenlik Duvarı veya DDOS korumasına sahip değil ...
Fabrizio'nun orijinal sunumunu geliştirmenin birkaç olası yolu var, fakat her şeyi bıraksam iyi bir danışman olmazdım, cevapladığım her StackExchange yazısında bildiğim gibi olur mu? Ayrıca, en yeni tekliflerden bazıları, kullanılan farklı seçeneklerle AWS'den daha fazla sıkılsam bile, yine de STILL'in mükemmel performans sunacağı orijinal sunumlardaki önerileri büyük ölçüde değiştirecektir.
Anahtar Kavramların Özeti :
Darboğazlarınızı Tanıyın : ve uygun şekilde optimize edin. Yığının her katmanı belirli darboğazlara (bant genişliği, işlemci, veritabanı) sahiptir ve her kattaki darboğazları çözmek, her bir zorluk için optimize edilmiş farklı bir çözüm gerektirir, ancak gerçekte önbellekleme, her seviyede ortak önbellek ...
Her Şeyi Önbelleğe Al: Mümkün olduğu durumlarda AWS sistemlerinden yararlanın (Redis / Memcache türü veri önbelleğe alma için Elasticache, CDN aracılığıyla son kullanıcılara en yakın önbellek görüntüsü, js ve css varlıkları için CDfront) ve ilk varlık seviyesine sunucu örneği yanıtlarını hızlandırmak için Vernik CDN'den gelen önbellek istekleri. Ayrıca, dağıtım sistemlerinizi CDN’lere dağıtmadan ÖNCE sıkıştırıp küçültmeyi de unutmayın.
Otomatik ölçeklendirme Temeldir : Talep, manuel olarak izleyebileceğiniz ve tepki verdiğinizden daha sık ve daha hızlı değişir. Bu değişikliklere gerçek zamanlı olarak adapte olmak, bu göreve en uygun sistemin parçalarını döndürmek için AWS'de bulunan Otomatik Ölçeklendirme Grupları gibi otomasyon araçlarının kullanılmasını gerektirir. AWS bunu CloudFront CDN, Route 53 DNS, Elastik Yük Dengeleyicileri ve S3 Kovaları için şeffaf bir şekilde ele alıyor, EC2 Örnekleri için boyutlandırma ve otomatik ölçeklendirme ve sadece RDS ve Elasticache katmanları için boyutlandırma / ayarlama yaparak halletmeniz gerekiyor.
Bunları etkin bir şekilde bir araya getirmenin tek yolu otomasyondur : bazıları dağıtım zamanında, bazıları dağıtımdan hemen sonra başlatılması gereken birçok birbiriyle ilişkili bileşenle, optimum performans için ayarlanmış bir sistemi yönetmek otomasyon gerektirir. Önbellek temizliği, önbellek ısınması, görüntü işleme vb. İçin dağıtım ve sistem otomasyonunu kullanmak, bu birçok farklı alt sistemi yönetmenin ve onları iyi yağlanmış ve sorunsuz tutmanın tek makul yoludur.
Ancak test otomasyonu olmadan bu mümkün bile değil : Bu hareketli parçalarla bir şey neredeyse her türlü değişikliğe neden olacak. Ve Magento ve AWS'deki gelişmelere ayak uydurmak için değişiklik yapmanız gerekecek. Ve bunlar OFTEN olacak . Bu nedenle, değişim maliyetini minimuma indirmek için, tüm test formlarının hem uygulamalı hem de otomatikleştirilmesi gerekir - ünite testlerinden entegrasyon testine, üretim ortamını taklit eden fiili test yapılandırmalarında başlatılan asıl sitenin Selenyum bazlı fonksiyonel testlerine kadar. Artık tüm dağıtım işlemlerinizi otomatikleştirdiğinize sevindiniz, değil mi?