Ölçeklenebilir, yüksek performanslı bir PHP-uygulamalarda Bugünün en iyi yaklaşımlar [kapalı]

2 Cevap php

Biz müşterilerin büyümesine ya da sayı azalacak hızlı ve kolay yukarı / aşağı ölçeklemesinin izin vermek için bir bulut sunucu üzerine yerleştirilir olacak yeni bir PHP webapp başlangıç ​​inşa aşamasındadır. Büyük olasılıkla, yüksek kalkınma hızını muhafaza etmek için bir PHP çerçeve (Codeigniter) kullanacaktır.

Bir sonraki adımımız kullanmak veritabanlarını performans artışı (cacheing vb) ve seçimi için özellikler uygulamaktır.

Memcached ve eAccelerator gibi çözümler ilk ne de aklımıza geliyor tabii ki, ama mevcut hatta daha iyi çözümleri bugün vardır?

Yüksek performanslı odakta olduğu mySQL gerçekten dünkü seçim mi?

Yani, lütfen - fikirlerinizi ve yüksek performanslı bir webapp için temel taşlarından nasıl oluşturulacağı ile ilgili düşüncelerinizi paylaşın!

Teşekkürler!

2 Cevap

Bilmeniz gereken iki şey:

  1. 10 başlatılması üzerinden 8 veya 9 başarısız; ve
  2. Olağanüstü bir şey 1-5 milyon uniques bir ay sizi elde etmek için gereklidir. Ve eğer 5 + milyon uniques ou olsun muhtemelen uygulama 2-6 defa yeniden yazılabilir olacaktır.

Eğer bir sorununuz varsa kadar Yani temelde bu "sorun" hakkında endişelenmeyin.

Ayrıca bulut sunucuları patlama kullanımı için iyi ama veri ücretleri onları sürekli kullanım için kötü bir seçim yapmak eğilimindedir. Tipik bir ilerlemedir:

  1. Paylaşılan (bu atlayabilirsiniz) hosting;
  2. VPS (siz de bu atlamak olabilir);
  3. Dedicated sunucu; o zaman
  4. Co-location.

Kullanmak için hangi araçları gelince, iyi ki sizin app bağlıdır. MySQL çoğu durumlar için iyi bir seçimdir. APC veya eAccelerator gibi bir opcode önbellek genellikle iyi bir fikirdir. Memcache uygulamalar belirli türleri için yararlı olabilir.

Ben iyi bir app inşa odaklanmak ve bu konularda yeterince büyük bir kullanıcı tabanına sahip bir kez performansı hakkında endişe gerektiğini düşünüyorum. Yani akılda performansı olmadan kod gerektiğini söylemek değildir. Eğer bile gerçek kullanıcımız var önce optimize etmeye çalışıyorsanız gibi Ancak bu sesler. Yapmanız herhangi bir performans ayarlama aslında belirli bir uygulama ile ne dayalı teorik ve olmayacaktır. Eğer kullanım alışkanlıklarına ve uygulama özellikle neden şişe boyunlarına görebilirsiniz önce kullanıcıların bir sürü var gerekecek. Ayrıca, bu seviyede performansı hakkında çok, PHP kullanarak gitmek için yol olmadığını gerçekten endişeli iseniz. PHP hızlı yapılabilir, ancak derlenmiş diğer dillere göre, o her zaman daha yavaş olacaktır. Cevap yok. Bu tüm uygulama yaptığını bağlıdır. Sunucu çoğu zaman veritabanı gibi başka bir yere harcanan ise PHP iyi çalışabilir. MySQL ne yaptığınızı bağlı olarak ince olabilir ve sizin için kullanmaya çalıştığınız ne tür bilgiler.