View profile

#154 - OAuth không được thiết kế cho user authorization

Revue
 
 

Grokking Newsletter

January 3 · Issue #155 · View online

Tuyển tập những bài viết hay cùng sự kiện bổ ích dành cho kĩ sư phần mềm tại Việt Nam.


Công nghệ blockchain được tiên phong bởi sự ra đời của đồng tiền mã hoá bitcoin đang ngày càng phổ biến và được ứng dụng rộng rãi hơn. Điều này mở ra thêm nhiều cơ hội việc làm hơn cho các kỹ sư phần mềm ở tất cả mọi nơi trên thế giới. 
Để có thể nắm bắt được những cơ hội này và trở thành một blockchain engineer thì cần phải làm gì? Webinar này sẽ cho chúng ta câu trả lời từ speakers là những blockchain engineers nhiều kinh nghiệm.
Thông tin chi tiết về sự kiện này bạn có thể tham khảo tại đây.
Những bài viết hay
Optimizing data warehouse storage Optimizing data warehouse storage
OAuth is Not User Authorization
Nhật ký hốt sh*t—Chuyện về cái service A
Góc Distributed System
Bạn có biết facebook có hệ thống public time server và không sử dụng ntpd?
Trong các hệ thống phân tán, vấn đề đồng bộ thời gian giữa các server là quan trọng. Bạn có thể gặp vấn đề sai lệch về transaction, hoặc thứ tự xảy ra của events (và nhiều vấn đề khác nữa) nếu thời gian bị sai lệch dù chỉ vài giây. Trong kỷ nguyên Internet, có một dịch vụ nền tảng đã ra đời và được công nhận là có thời gian online liên tục lâu nhất trong lịch sử tính tới thời điểm này, đó là dịch vụ NTP (network time protocol). Hiểu nôm na, NTP là một giao thức giúp các máy client có thể đồng bộ thời gian từ các máy NTP server public khi có kết nối internet. NTP servers là “rất nhiều” máy chủ public, có kết nối trực tiếp hoặc gián tiếp tới “một số” máy chủ private để đồng bộ thời gian (máy chủ private có thiết bị nhận tín hiệu thời gian từ các trạm không gian quay quanh Trái Đất, nơi có đặt đồng hồ vật lý được công nhận là chính xác tuyệt đối tới thời điểm này (atomic clock).
Hệ thống Facebook ban đầu cũng có xây dựng một số NTP public server có địa chỉ tại: time.facebook.com và hệ thống của Facebook cũng đồng bộ thời gian dựa vào giao thức NTP. Tuy nhiên, độ sai lệch vẫn ở mức cao tầm 100ms giữa hai máy chủ ngẫu nhiên. Facebook đã chuyển từ NTPD (NTP daemon) sang Chrony - là một phiên bản daemon khác được phát triển bởi Miroslav Lichvar, RedHat sử dụng chung giao thức NTP, giúp giảm thiểu độ sai lệch xuống dưới 10ms. Bài báo dưới đây mô tả cách Facebook sử dụng Chrony cũng như cách họ làm benchmark để so sánh với NTP. Nội dung bài báo cũng đề cập một số thông tin cơ bản về giao thức NTP cũng như bài toán leap-second smearing, là bài toán chủ đạo trong vấn đề đồng bộ thời gian với đồng hồ atomic.
Tham khảo:
Góc Database
Facebook đã đạt tới gần hai tỉ rưỡi MAU (monthly active user) vào cuối quý 3/2020 (link) một con số đáng kinh ngạc các bạn nhỉ. Các bạn có tự hỏi về mặt lưu trữ thì lượng dữ liệu tạo ra bởi số người dùng khổng lồ này được lưu trữ và truy vấn như thế nào không?
Về mặt logic, hệ thống dữ liệu của facebook được lưu trữ dưới dạng đồ thị (graph) có hướng, trong đó các đỉnh là các loại đối tượng (object), và các cạnh là các loại mối quan hệ (association). Ví dụ như ở hình bên dưới, một hoạt động check-in của user Alice và vài phản hồi của các người bạn (hình a) sẽ được biểu diễn dưới dạng đồ thì với các cạnh có kiểu định sẵn như AUTHORED_BY, AUTHORED, TAGGED, TAGGED_AT, …
Vậy làm sao để tổ chức dữ liệu dạng đồ thị này ở tầng lưu trữ? Có lẽ bạn sẽ ngạc nhiên khi ở tầng lưu trữ, các kỹ sư ở facebook lại sử dụng một công nghệ “cũ”, đó là MySQL kết hợp với Memcache và kỹ thuật sharding, partition replication, …
Mời các bạn cùng đọc bài báo chia sẻ bởi đội ngũ kỹ sư ở Facebook để hiểu thêm đội ngũ Facebook đã thiết kế hệ thống này như thế nào nhé: link
Code & Tools
This Week Sponsors
POPS is a creative, innovative & hyper-growth working environment where storytelling meets technology.
POPS is the leading digital entertainment company in Southeast Asia. With over 12 years in entertainment, we provide thousands of exclusive, high-quality, carefully curated local and international contents and bring a unique entertainment experience through POPS Original series, concerts, movies, comics, esports and more.
We are on a journey to find talents who are passionate about technology and love to develop POPS APP_the digital entertainment product with the latest technologies such as: OTT, Video On Demand, Microservices, etc. to give end users in the region great experiences with an all-inclusive digital entertainment platform.  
Góc Tuyển Dụng
Quotes
Code is like humor. When you have to explain it, it’s bad.
– Cory House
Did you enjoy this issue?
If you don't want these updates anymore, please unsubscribe here.
If you were forwarded this newsletter and you like it, you can subscribe here.
Powered by Revue
Charmington La Pointe, 181 Cao Thang, Dist 10, Ho Chi Minh city, Viet Nam