Facebook birçok değişikliğe uğradı ve başlangıçta verimli olacak şekilde tasarlanmadı. İşini yapmak için tasarlandı. Kodun neye benzediğine dair hiçbir fikrim yok ve muhtemelen (açık güvenlik ve telif hakkı nedenleriyle) hakkında çok fazla bilgi bulamayacaksınız, ancak sadece API'ye bir göz atın. Ne sıklıkta değiştiğine ve ne kadarının düzgün, artık veya hiç çalışmadığına bakın.
Onların kolundaki en büyük asın Hiphop olduğunu düşünüyorum.
http://developers.facebook.com/blog/post/358
HipHop'u kendiniz kullanabilirsiniz:
https://github.com/facebook/hiphop-php/wiki
Ama bana sorarsanız, bu çok iddialı ve muhtemelen zaman israfıdır. Hiphop sadece çok destekliyor, her şeyi C ++ 'ya dönüştüremiyor. Peki, bu bize ne anlatmaya çalışıyor? Bize Facebook'un PHP dilinden tam olarak faydalanmadığını söylüyor. En son 5.3'ü kullanmıyor ve hala PHP 4 uyumlu bir çok şey olduğunu iddia ediyorum. Aksi takdirde HipHop kullanamazlardı. HipHop İYİ BİR FİKİRDİR ve büyümesi ve genişlemesi gerekir, ancak şu anki durumunda YENİ PHP uygulamaları geliştiren birçok kişi için gerçekten yararlı değildir.
Ayrıca Resin / Quercus gibi şeyler üzerinden PHP JAVA var. Yine, her şeyi desteklemiyor ...
Dikkat edilmesi gereken başka bir şey, standart olmayan herhangi bir PHP modülü kullanıyorsanız, bu kodu C ++ veya Java'ya da dönüştüremeyeceğinizdir. Ancak ... PHP modüllerine bakalım. Bunlar C ++ 'da derlenmiştir. Eğer bir şeyler (PHP ayrıştırma vb.) Yapmak PHP modülleri inşa edebilirsiniz Yani, o zaman temelde (bazı etkileşim eksi) aynı hızda çalışıyor. Tabii ki sadece mümkün olan her ihtiyaç ve tüm uygulamanız için bir PHP modülü yapamazsınız çünkü yeniden derlemek zorunda kalacaksınız ve kodlamak çok daha zor olacaktır.
Ancak ... hız endişeleri ile yardımcı olabilecek bazı kullanışlı PHP modülleri vardır. Günün sonunda, "bulut" olarak bilinen bu harika şeye sahibiz ve bununla birlikte, uygulamalarımızı (PHP dahil) ölçeklendirebiliriz, böylece artık önemli değil. Donanım giderek daha ucuz hale geliyor. Amazon fiyatları tekrar konuştu.
PHP uygulamanızı bir günlük ölçeğe ihtiyaç duyacağı fikri etrafında kodladığınız sürece ... O zaman iyi olduğunu düşünüyorum ve Facebook'a ve ne yaptıklarına bile bakacağımdan emin değilim çünkü bunu yaptılar, bu tamamen farklı bir dünyaydı ve şimdi bu altyapıyı korumaya ve korumaya çalışıyor ... HipHop gibi şeyler alıyorsunuz.
Şimdi HipHop size nasıl yardımcı olacak? Olmaz. Yapamaz. Yeni başlıyorsunuz, PHP 5.3'ü kullanabilirsiniz. Ben çok PHP 5.3 çerçeveler ve PHP 5.3 SPL kütüphaneleri ile birlikte masaya getirdiği tüm yeni faydaları bakarak tavsiye ve ayrıca veritabanınızı düşünün. Büyük olasılıkla bir veritabanından içerik sunuyorsunuz, bu nedenle MongoDB ve şema içermeyen ve belge odaklı diğer veritabanlarına göz atın. Web sitesi / uygulamanın en yaygın türü için çok daha hızlı ve daha iyidir.
Foursquare ve Smugmug gibi YENİ şirketlere ve YENİ teknolojiyi kullanan ve bunu NASIL kullandıklarına bakın. Facebook kadar başarılı olduğu için, dürüstçe onlara verimli bir web sitesi / uygulama oluşturmak için "nasıl" bakmazdı. Orada çalışan (problemlerini) yaratıcı bir şekilde çözen çok (çok) yetenekli insanlara sahip olmadıklarını söylemiyorum ... Ayrıca Facebook'un genel olarak harika bir fikir olmadığını ve bunun başarılı ve ondan fikir almamalısınız .... Sadece kaynak kodlarının tamamını görüntüleyebiliyorsanız, muhtemelen bundan faydalanamayacağınızı söylüyorum.