followers 1 popularity
2
following 1

followers  view all

following  view all

Groups
danghungk50 is not in any groups
danghungk50

Kỹ thuật thiết kế website đằng sau facebook

Dec 6th 2015 at 7:24 PM

Kỹ thuật thiết kế website đằng sau facebook

Một thử thách rất lớn dành cho các kỹ sư tại Facebook là phải giữ cho website hoạt động ổn định, nhẹ nhàng, và nhanh chóng cho hơn một tỷ active users.

>> thiết kế website doanh nghiệp

Facebook phục vụ 570 tỷ page views mỗi tháng (Google Ad Planner)

Số lượng ảnh có trên Facebook lớn hơn tổng số lượng ảnh của tất cả các trang chia sẻ/hosting ảnh khác (bao gồm cả những site như Flickr)

Hơn 3 tỷ ảnh được tải lên hàng tháng.

Facebook xử lý 1.2 triệu ảnh mỗi giây.

Hơn 25 tỷ mẩu tin/status/links/comments được chia sẻ hàng tháng.

Facebook có hơn 30,000 servers (dữ liệu này khá cũ cách đây khoảng 5 năm).

Ở khía cạnh nào đó, ta vẫn có thể coi Facebook là LAMP, nhưng nó đã phải thay đổi, nâng cấp những chức năng, dịch vụ sẵn có ở nhiều mức độ.  >> thiết kế website bất động sản

Facebook vẫn sử dụng PHP, nhưng nó đã xây dựng một compiler để có thể chuyển đổi mã nguồn thành native code chạy trên webserver -> tăng hiệu năng.

Facebook sử dụng Linux, nhưng đã tối ưu hệ thống cho mục địch sử dụng cụ thể của site (đặc biệt là giao tiếp mạng).

Facebook sử dụng MySQL, nhưng phần lớn lưu giữ kiểu key-value, đưa các logic trong câu lệnh join lên web servers sao cho việc tối ưu có thể được thực hiện hiệu quả nhất ở đây.

Tiếp theo đó là một loạt các hệ thống được viết và tích hợp thêm như Haystack, Scribe.  >> thiết kế website giáo dục

Và bây giờ ta sẽ lượt qua một số Phần mềm được sử dụng bởi trang mạng xã hội lớn nhất thế giới hiện nay

Memcached

Memcached là một hệ thống bộ nhớ phân tán mà Facebook đã sử dụng như một caching layer giữa web servers và MySQL server. Facebook đã tối ưu hóa Memcached và các phần liên quan và xây dựng một hệ thống bao gồm hàng ngàn servers với hàng chục terabytes dữ liệu được cached tại mỗi thời điểm. Có thể coi đây là hệ thống Memcached lớn nhất thế giới tại thời điểm này.

HipHop

PHP bản chất là scripting language, như vậy sẽ chậm hơn so với code chạy native trên servers. Một số kỹ sư của Facebook đã dành 18 tháng để xây dựng HipHop nhằm mục đích chuyển đổi PHP sang mã nguồn của C++ , có thể biên dịch để chạy nhằm tăng hiệu năng.

Haystack

Là hệ thống lưu giữ và xử lý ảnh với hiệu năng cao của Facebook.

BigPipe

Cũng là một hệ thống do Facebook phát triển, nhằm phục vụ những trang web động, pagelet như cửa sổ chat, notification. Những pagelets này có thể được lấy & xử lý song song để đảm báo hiệu năng, giảm thiểu những rủi ro hay làm ngắt quãng hoạt động của users.

Cassandra

Là một hệ thống lưu giữ phân tán hoàn hảo, sử dụng những lý thuyết truy xuất của NoSQL.

Scribe

Là hệ thống logging linh hoạt được Facebook sử dụng cho nhiều mục đích khác nhau.

Hadoop and Hive

Mã nguồn mở và có vai trò tiên quyết trong việc xử lý các phép tính với lượng dữ liệu khổng lồ. Facebook sử dụng cho việc phân tích dữ liệu. Ngoài ra, Yahoo & Twitter cũng sử dụng hệ thống này.

Thrift

Facebook sử dụng những ngôn ngữ khác nhau cho từng services của họ. PHP cho front-end, Erlang cho Chat, Java và C++ cũng được sử dụng ở nhiều nơi. Như vậy, Thrift là cross-language platform được phát triển để kết hợp chặt chẽ các ngôn ngữ lập trình lại với nhau, làm cho chúng có thể giao tiếp được.

Varnish

 

Là hệ thống tăng tốc trong giao thức HTTP, hoạt động giống như load-balancer và cũng có khả năng cache nội dung để giảm tải truy xuất. Varnish được sử dụng rộng rãi trong việc quản lý ảnh, profile và xử lý hàng tỷ requests mỗi ngày.

0 comments
Please to comment

sign in

Username
Password
Remember Me


New to IM faceplate? join free!

Lost Password? click here