Ruby PHP geçiş - bu performans cevabı?

8 Cevap php

I get more often the answer, when asking performance related stuff regarding PHP applications, that PHP really isn't the language for high-performance applications, and that a compiled language really is the way to go. The only thing holding me back to PHP is that it's what I have learned to work with for some while now and the development is quite rapid.

Yani, PHP geçmişte bir şeydir ve örneğin, Ruby lehine web uygulamaları bir kenara koymak gerekir?

Update:

Erken optimizasyon çok erken sürecinde şeyler optimize çok odaklı olunca ben bir cevap olarak ne aldık genellikle, ama oldukça uzakta en iyi önkoşulları vardır sağ dilini seçerek olduğunu hissediyorum.

Teşekkürler

8 Cevap

Ruby PHP geçmek için iyi nedenler ton vardır. Performans bunlardan biri değildir. Web kullanım PHP en büyük sitelerinden bazıları. Bu doğru kullanırsanız eğer iyi bir performans mükemmel yetenekli.

Yüksek performanslı bir uygulama üzerinde çalışıyorsanız, hız için optimize ederken göz önünde birçok şey vardır:

  • Nerede darboğazları nelerdir? Veritabanı veya uygulama düzeyinde?
  • Eğer istekleri hızlandırmak için önbelleğe alma kullanıyor musunuz?
  • Eğer yük dengeleme veya web sunucusundan veritabanı sunucusu ayıran üzeri performans artışı elde edebilirsiniz. Donanım ucuz, programcılar değil.
  • Arka ucunda bir performans optimize edilmiş bir dil kullanmayı düşünün, ama ön ucunda PHP kullanmaya devam.

Diğerine programlama dilini değiştirme büyük performans artışları ya da kayıplara neden gitmiyor. the way kod yazmak değiştirilmesi çok daha büyük etkileri olması daha muhtemeldir.

Eğer Ruby PHP geçerseniz, bu performansı daha başka bir nedenle olsun.

Ruby ya derlenmiş bir dil değil, ve ben baktım son kez PHP daha önemli ölçüde daha hızlı değildi. Dil tercüman darboğaz ise, C + +, C # veya Java gibi bir programlama dili geçmek.

Burada some random benchmarks.

Ruby ve PHP hem geç bağlama diller, ve Ruby, PHP üzerinde bazı optimizasyon varken, performansı yaşıyorsanız eğer kod bakmak için ilk yerdir verir. Ayrıca, Joel ve Jeff gibi bir kez bir dil ile ilk beş ağrı noktaları tespit edemez eğer, sadece performans ile ilgili nedenlerden dolayı, yepyeni bir dil öğrenme haklı dili hakkında yeterli bilmiyorum, podcast söyledi.

Bildiğim kadarıyla PHP, Ruby daha hızlıdır (ve Yakut tüketen çok daha fazla bellek olduğunu). Ancak gerçekten Ruby yazmak için seviyorum.

Çoğu durumda, PHP yeterince hızlıdır. Ancak Facebook için yeterince hızlı değildi, bu yüzden onlar bir çözüm ve shared it kendi yarattı. Web uygulamaları PHP% 99 için bence yeterlidir. @ Macek iyi bir nokta vardır!

Performans söz konusu olduğunda, PHP ve Ruby kullanıcıları arasındaki anlaşmazlık neredeyse tamamen dini ve fanboy-ish. Kullandığınız iki biri muhtemelen bu kadar performansınızı etkilemez Hangi.

Daha büyük olasılıkla sorun bazı temizleme ve / veya optimizasyon kullanabilirsiniz kodudur.

Yavaş bir PHP kodu yazar, o muhtemelen çok yavaş Ruby kod yazacağız. Bu araçlar meselesi değil ama onlar nasıl kullanıldığını.

C # gibi derlenmiş kod daha hızlı olabilir ama Ruby daha hızlı (bilge geliştirme) olacak şeyler alabilirsiniz gibi görünüyor. Bildiğiniz ne sopa, ya da daha pazarlanabilir, pikap Rayları veya ASP.NET olmak istiyorum.

Herhangi bir web uygulaması, önbelleğe alma ve istemci tarafında kod gibi app daha duyarlı yapacaktır.

Ben PHP kullanılan ve performansı daha başka nedenlerle Ruby geçti.

Bu istediğiniz ne ise, zaman alır ne de yakından bir göz atın.

Opcode önbellek xcache ve Memcached sizin app hızlandırmaya yardımcı için bir lib gibi PHP çözümleri vardır.