Tới quý 2 năm 2018, mạng xã hội Facebook đã có hơn 2,23 tỉ người dùng hoạt động hàng tháng. Với số người dùng như vậy, đây là một trong những trang mạng bận rộn nhất trên thế giới Internet và phải xây dựng một kiến trúc cơ sở dữ liệu đặc biệt để đáp ứng.
Facebook ra mắt vào tháng 2/2004, ban đầu được Mark Zuckerberg tung ra trong trường đại học của anh (Havard University) và dùng một máy chủ duy nhất. Nhưng khi số người dùng ngày càng tăng, số máy chủ và các trung tâm dữ liệu của trang mạng xã hội lớn nhất thế giới này cũng ngày càng mở rộng, lan ra khắp các nơi trên thế giới.
Mỗi trung tâm dữ liệu đặt hàng ngàn máy chủ kết nối với nhau và với thế giới bên ngoài bằng các sợi quang. Mỗi khi bạn chia sẻ thông tin trên Facebook, máy chủ trên các trung tâm dữ liệu này nhận thông tin và phân phối chúng tới “bạn bè” của mình.
Đến tháng 3.2018, Facebook đã có 12 trung tâm dữ liệu trên toàn cầu, trong đó có 9 ở Mỹ và 3 ở các quốc gia khác với tổng diện tích gần 15 triệu feet vuông (đã hoàn thành và đang xây dựng). Mỗi trung tâm có chiều dài xấp xỉ 1000 feet, gồm nhiều dãy với hàng chục ngàn máy chủ.
Trung tâm dữ liệu của Facebook tại Thụy Điển
Làm sao Facebook duy trì máy chủ của mình?
Câu trả lời là Hip Hop for PHP và Hip Hop Virtual Machine - 2 công nghệ được Facebook phát triển để có thể xử lý lưu lượng (traffic) lớn hơn gấp 500 lần trong cùng một khoảng thời gian trên máy chủ. Mục tiêu của họ không chỉ là xử lý lưu lượng hiệu quả hơn mà còn tốn ít dữ liệu Internet hơn, giúp người dùng di động không phải lo tốn lưu lượng di động khi dùng Facebook trên thiết bị di động. Những công nghệ này cùng với khả năng cân bằng tải giúp Facebook mở rộng khả năng lưu trữ mà không phải hy sinh tốc độ tải.
Hip Hop for PHP (HPHPc) là trình biên dịch source-to-source (nguồn sang nguồn), theo đó PHP được biên dịch sang C++ thành các tập tin nhị phân và chạy như một tập tin thực thi. Bên cạnh HPHPc, các kĩ sư Facebook còn tạo ra “một phiên bản dành cho nhà phát triển” của Hip Hop (phiên bản dịch engine thực thi PHP, có tên HPHPi) và công cụ debug Hip Hop (có tên HPHPd).
Hip Hop Virtual Machine (HHVM) là một nền tảng xử lý PHP giúp tăng tốc PHP nhờ sử dụng máy xử lý ảo dựa trên trình biên dịch JIT (Just-in-Time).
Xem thêm: