Hiç web dev phpin gerçek bir sınıra vurmak mı?

3 Cevap

Kenara ölçeklenebilirlik sorunları, burada herkes aslında PHP sadece kesmek ve başka bir dil / platform için gitmek zorunda değil, bir web-geliştirme sorununa sendeledi?

Ben özellikle senaryo ve onlar ele edilmiştir şekillerde ilgileniyorum.

Teşekkürler.

3 Cevap

Ben bir PHP developper (sometimes on projects not too small) fazla 3 yıl için, ve I have never really met anything that PHP wouldn't allow me to do olarak çalışıyorum.

Tabii ki, bazen / her zaman birkaç sunucularını, yazılım diğer bazı parça (database, reverse proxy, cache, ...) kullanmak zorunda; ama bu oyunun bir parçası ;-)

Actually, the best thing about PHP is its "glue" nature : what PHP does is allow you to glue stuff together, to build your application using different components.
And PHP does that really well.

Bazen, başka hiç kimse (there are a lot of PHP extension which do that already like mysql or curl, to say only two names) kullandı şey tutkal için, bir PHP uzantısı kod C programm olurdu; ama zaten ben bunu yaşadım ki mevcut pek çok uzantıları var - Ben probabaly sadece eğlence için, bir gün ya da bir başka nedenle yapacağım bile ;-)


An important thing to note is that there is probably always a solution to your problems :

  • Sen ölçeklenebilirlik hakkında konuşma konum; ne önbelleğe hakkında? birkaç sunucuyu? Bir ters proxy kullanarak? PHP bu ile hiçbir sorunu var.
  • Eğer SO (ve pek çok yerde) görebileceğiniz gibi,: PHP büyük bir topluluk var!


If I had to think about one thing that PHP is not well suited for, I'd say "comet" : PHP model of one process per request is not good for long polling and the like...

PHP çok, uzun süren partiler için oldukça iyi değildir; ve sık sık web uygulamasının yanında olanların bazıları var; ve aynı dili kullanarak kodunu yeniden sağlar - hala, ben her zaman bir (not too difficult) çözüm buldum.

Oh, ve ben de söyleyebilirim: PHP web uygulamaları için mükemmeldir ... Ama masaüstü uygulamalar söz konusu olduğu zaman büyük değil - bu mümkün olsa bile (see PHP-GTK for example).

Ben hiç bir programcı olarak ulaştınız tek sınır kendi yeteneklerini oldu. Ben birkaç yüz isabet bir gün yaptım ve 1M uniques / gün toplam üzerinden yapıyor sitelerin bir ağ için yazılım tutulan siteler üzerinde çalıştığım ve hem yazılım aynı parça üzerinde koştu. Basınç PHP değildi, basınç PHP, sunucu ve hepsi düzgün bunlardan faydalanmak ve ölçeklenebilir bir şekilde şeyler yapmak için birlikte çalışmak veritabanlarını yapmak için bana oldu.

  • Sorgu optimizasyonu
  • Veritabanı optimizasyonu
  • HTTP Önbellekleme
  • Memcache / APC
  • Sunucu optimizasyonu
  • Master / Slave veritabanı kurulum
  • Profilleme
  • DB normalleşme sadece doğru miktarda seçimi
  • Uygun günlüğü (sadece yararlı ne yapıp çok yararsız olur günlük değil)
  • Detaylara dikkat
  • Uygun test
  • Kod organizasyonu
  • Iyi dallanma / etiketleme ile sürüm kontrolü
  • Veritabanı sunucuları vs web sunucuları vs Dosya sunucuları
  • Reverse proxies
  • (SQL Injection önlenmesi XSS attacks, Session hijacking, vb önlenmesi) genel güvenlik

Her şeyi kendimi daha iyi bir programcı yapmak için yol boyunca öğrendim. Arkasında uygun donanım olmadan internet üzerinde herhangi bir site koşamam çok az dil var. Bir programcı olarak iş o kadar donanım yararlanmak için en iyi yolu bulmaktır.

Şeyler PHP doğası tarafından hiç iyi olmadığını, ancak vardır. Böyle şeyler şunlardır:

  • Masaüstü yazılım (mümkün olsa da)
  • Daemons (yine mümkün)
  • Zamanında (örneğin siteleri kazıma gibi) büyük ölçekli dize işleme

PHP Turing-tam olduğunu, bu nedenle teknik olarak başka bir dil yok daha herhangi bir sınırlama yoktur. Ancak, başka dillerde yapılacak daha kolay bulabilirsiniz şeyler vardır.