Vâng Facebook đã trải qua nhiều thay đổi và ban đầu nó không được thiết kế để có hiệu quả. Nó được thiết kế để làm công việc của nó. Tôi hoàn toàn không biết mã trông như thế nào và có thể bạn sẽ không tìm thấy nhiều thông tin về nó (vì lý do bảo mật và bản quyền rõ ràng), nhưng hãy xem API. Hãy xem nó thường xuyên thay đổi như thế nào và số tiền đó không hoạt động đúng cách, hay không.
Tôi nghĩ rằng ace lớn nhất lên tay áo của họ là Hiphop. http://developers.facebook.com/blog/post/358 Bạn có thể sử dụng HipHop mình: http://wiki.github.com/facebook/hiphop-php
Nhưng nếu bạn hỏi tôi đó là một nhiệm vụ rất tham vọng và có lẽ thời gian lãng phí. Hiphop chỉ hỗ trợ rất nhiều, nó không thể chuyển đổi mọi thứ thành C++. Vậy điều này cho chúng ta biết điều gì? Vâng, nó cho chúng ta biết rằng Facebook KHÔNG tận dụng triệt để ngôn ngữ PHP. Nó không sử dụng 5.3 mới nhất và tôi sẵn sàng đặt cược vẫn còn rất nhiều đó là PHP 4 tương thích. Nếu không, họ không thể sử dụng HipHop. HipHop LÀ MỘT IDEA TỐT và cần phát triển và mở rộng, nhưng ở trạng thái hiện tại, nó không thực sự hữu ích cho nhiều người đang xây dựng các ứng dụng PHP MỚI.
Ngoài ra còn có PHP để JAVA qua những thứ như Resin/Quercus. Một điều nữa cần lưu ý là nếu bạn sử dụng bất kỳ mô-đun PHP không chuẩn nào, bạn cũng sẽ không thể chuyển đổi mã đó thành C++ hoặc Java được nữa. Tuy nhiên ... Chúng ta hãy xem các mô-đun PHP. Chúng được biên dịch bằng C++. Vì vậy, nếu bạn có thể xây dựng các mô-đun PHP làm việc (như phân tích cú pháp XML, vv) thì bạn về cơ bản (trừ đi một số tương tác) làm việc ở cùng một tốc độ.Tất nhiên bạn không thể chỉ tạo ra một mô-đun PHP cho mọi nhu cầu có thể và toàn bộ ứng dụng của bạn bởi vì bạn sẽ phải biên dịch lại và sẽ khó mã hơn nhiều, v.v.
Tuy nhiên ... Có một số PHP tiện dụng các mô-đun có thể giúp các mối quan tâm về tốc độ. Mặc dù vào cuối ngày, chúng tôi có điều tuyệt vời này được gọi là "đám mây" và với nó, chúng tôi có thể mở rộng các ứng dụng của chúng tôi (bao gồm PHP) để nó không còn quan trọng nữa. Phần cứng đang trở nên rẻ hơn và rẻ hơn. Amazon chỉ giảm giá của nó (một lần nữa) nói về.
Vì vậy, miễn là bạn mã ứng dụng PHP của bạn xung quanh ý tưởng rằng nó sẽ cần đến một quy mô ngày ... Sau đó, tôi nghĩ rằng bạn đang tốt và tôi không thực sự chắc chắn tôi thậm chí sẽ nhìn vào Facebook và những gì họ đã làm bởi vì khi họ đã làm nó, nó là một thế giới hoàn toàn khác và bây giờ cố gắng giữ cơ sở hạ tầng đó và duy trì nó ... Vâng, bạn có những thứ như HipHop.
Bây giờ, HipHop sẽ giúp bạn như thế nào? Nó sẽ không. Nó không thể. Bạn đang bắt đầu mới, bạn có thể sử dụng PHP 5.3. Tôi rất muốn giới thiệu xem xét các khuôn khổ PHP 5.3 và tất cả các lợi ích mới mà PHP 5.3 mang lại cho bảng cùng với các thư viện SPL và cũng nghĩ về cơ sở dữ liệu của bạn. Bạn có nhiều khả năng phân phát nội dung từ cơ sở dữ liệu, vì vậy hãy xem MongoDB và các loại cơ sở dữ liệu khác có lược đồ ít hơn và định hướng tài liệu. Chúng nhanh hơn rất nhiều và tốt hơn cho loại trang web/ứng dụng "phổ biến nhất".
Nhìn vào các công ty MỚI như Foursquare và Smugmug và một số công ty khác đang sử dụng công nghệ MỚI và CÁCH họ đang sử dụng công nghệ này. Đối với thành công như Facebook, tôi thành thật sẽ không nhìn vào chúng cho "làm thế nào" để xây dựng một trang web/ứng dụng hiệu quả. Tôi không nói rằng họ không có (rất) những người tài năng làm việc ở đó đang giải quyết (vấn đề) của họ một cách sáng tạo ... Tôi cũng không nói rằng Facebook không phải là một ý tưởng tuyệt vời nói chung và rằng nó không thành công và bạn không nên lấy ý tưởng từ nó .... Tôi chỉ nói rằng nếu bạn có thể xem toàn bộ mã nguồn của họ, bạn có thể sẽ không được hưởng lợi từ nó.
2. Quy mô tại Facebook (Video) - http: // www .infoq.com/presentation/Quy mô-tại-Facebook 3. Trò chuyện trên Facebook - ht tp: //www.infoq.com/news/2008/05/facebookchatarchitecture –
Ngoài ra http://highscalability.com/ có vẻ là một nơi tuyệt vời để tìm hiểu về kiến trúc cho rất nhiều trang web phổ biến. Không có ý tưởng bao nhiêu điều này là đúng và bao nhiêu đầu cơ, nhưng nó ra khỏi đó & chỉ là một cái gì đó để munch trên ... –
[facebook kỹ thuật blog] (http://www.facebook.com/notes.php?id= 9445547199) đôi khi có những hiểu biết sâu sắc về kiến trúc và thách thức mở rộng quy mô của họ. –