Bài tóm tắt

Tóm tắt bằng lời riêng, luôn dẫn về bài gốc. 979 bài. Đọc miễn phí.

Nguồn dữ liệu danh sách bài viết của blog công ty

Danh sách bài trên trang công ty gồm 10.013 bài. Khoảng 73,6% (7.365 bài) do SWE Wiki thu thập thủ công từ kho lưu trữ blog chính chủ của các công ty, kèm ngày đăng. Phần còn lại lấy từ các danh sách công khai trên GitHub: binhnguyennus/awesome-scalability (667), abhivaikar/howtheytest (551), upgundecha/howtheysre (499), eugeneyan/applied-ml (376), Engineer1999/ML-System-Design-Case-Studies (239), upgundecha/howtheyaws (149) và một số danh sách nhỏ khác. Mọi link luôn dẫn về bài gốc trên blog của tác giả; SWE Wiki không sao chép nội dung bài. Hiện 9.115 bài thuộc 135 công ty có trang wiki riêng và 897 bài thuộc 261 trang danh sách bài viết (công ty chưa có trang wiki); thành viên xem được toàn bộ danh sách. Cảm ơn những người duy trì các danh sách đó.

Mọi giai đoạn 1. Khởi đầu2. Tăng trưởng3. Quy mô lớn4. Điều chỉnh
Mọi độ khó DễCơ bảnTrung bìnhKhóNâng cao
Bài tóm tắt · Walmart · 2019 Khó

Business Continuity & Disaster Recovery in the Microservices world

Hệ Integrated Fulfilment (app và backend cho nhân viên cửa hàng soạn đơn pickup/giao hàng) tăng trưởng mạnh và được viết lại. Yêu cầu chính: liên tục kinh doanh; một incident ảnh hưởng khách hàng nhiều nước.

Bài tóm tắt · Walmart · 2019 Dễ

Member Transaction History: Data Store Selection Journey

Member Transaction History (MTH) là lớp đọc đa kênh cho đơn hàng của club (Sam's Club) và online: source of truth duy nhất để tra cứu và sửa đơn, với một mô hình đơn hàng chuẩn.

Bài tóm tắt · Yelp · 2019 Trung bình

Architecting Restaurant Wait Time Predictions

Yelp Waitlist cho khách xếp hàng online ở nhà hàng không nhận đặt chỗ; mỗi lần xếp hàng, một model dự đoán thời gian chờ. Hệ phải bám trạng thái hiện tại của nhà hàng (bao nhiêu người đang chờ, giờ đóng cửa) và chịu QPS…

Bài tóm tắt · Zillow · 2019 Dễ

Preventing Rogue Cookies with the Zillow Cookie Checker

Từ 2018 Zillow dọn cookie và nâng banner tuỳ chọn cookie: người dùng tắt cookie quảng cáo/chức năng thì không trang nào được tạo các cookie đó. Cookie đến từ tag trong Google Tag Manager và từ code của Zillow.

Bài tóm tắt · Zillow · 2019 Dễ

Federated GraphQL Server at Scale: Zillow Rental Manager Real-time Chat Application

Zillow Rental Manager (ZRM): chủ nhà xem được tin nhắn của người thuê nhưng không trả lời được trong app; trước đó trao đổi qua email.

Bài tóm tắt · Alibaba · 2018 Khó

The Evolution of Alibaba Cloud's Relational Database Services Architecture - PolarDB

Theo Alibaba, khi user, dữ liệu, service trên cloud tăng, RDS liên tục gặp vấn đề về backup, hiệu năng, migration, nâng cấp, read-only instance, dung lượng đĩa, trễ binlog; gốc phần lớn là bottleneck I/O (lưu trữ và…

Bài tóm tắt · Box · 2018 Trung bình

Snitch: Putting consistency back into S3

Hạ tầng analytics của Box coi S3 là source of truth trên cloud: dữ liệu ghi vào Kafka on-prem, committer chép sang bucket nguồn S3 (có thể trùng do Kafka giao lại), job MapReduce dedupe sang bucket đích, Hive và ETL…

Bài tóm tắt · Coinbase · 2018 Trung bình

Open Sourcing Coinbase's Secure Deployment Pipeline (Odin)

Theo Coinbase (5/2018): deploy hàng trăm lần mỗi ngày trên hàng trăm project; một tính năng đi từ ý tưởng tới production dưới một giờ.

Bài tóm tắt · DoorDash · 2018 Cơ bản

Enforce Timeout: A DoorDash Reliability Methodology

Câu hỏi trong một cuộc họp quản lý: bỏ statementtimeout của PostgreSQL thì sao? Với hàng trăm kỹ sư đẩy code mỗi ngày, theo tác giả, sớm muộn sẽ có incident do dùng tài nguyên không giới hạn.

Bài tóm tắt · Dropbox · 2018 Nâng cao

Meet Bandaid, the Dropbox service proxy

Bandaid bắt đầu là reverse proxy bù cho điểm yếu của các service phía server, rồi thành service proxy giúp Dropbox chuyển sang SOA. Viết bằng Go như phần lớn hạ tầng lõi; hỗ trợ TLS termination, HTTP/2, gRPC, service…

Bài tóm tắt · Dropbox · 2018 Khó

Cross Shard Transactions at 10 Million Requests Per Second

Edgestore là abstraction layer trên hàng nghìn node MySQL, giữ hàng petabyte metadata, hơn 10 triệu request/giây. Developer gom dữ liệu hay đi cùng nhau vào một colo (cùng shard vật lý): trong colo có transaction mạnh,…

Bài tóm tắt · Dropbox · 2018 Trung bình

How we rolled out one of the largest Python 3 migrations ever

App desktop Dropbox (Windows, macOS, Linux) phần lớn viết bằng Python từ dòng code đầu tiên; hơn 1 triệu dòng Python, hàng trăm triệu bản cài, phát hành cho mọi user mỗi hai tuần (2018). Bắt đầu chuyển sang Python 3 từ…

Bài tóm tắt · Expedia · 2018 Dễ

Using API Gateway for Authorization and Authentication

Yêu cầu duy nhất: phải có xác thực/phân quyền và không được "tĩnh" (username/password cứng gửi kèm mọi request). Đã cân nhắc Passport (phổ biến với NodeJS) và tự viết (tác giả từng làm ở dự án khác và khuyên đừng làm).

Bài tóm tắt · Expedia · 2018 Dễ

DynamoDB: Why migrate to DynamoDB from Cassandra?

Cassandra cho người dùng tự quyết gần như mọi thứ: số replica, chỗ đặt replica, mức consistency, số node. Theo tác giả, chính điều đó đặt độ bền và hiệu năng vào tay người cấu hình.

Bài tóm tắt · Grab · 2018 Trung bình

Introducing Grab-Kit: Distributed Service Design at Grab

Sau khi tách monolith thành microservices, Grab gặp bài toán mới: tăng trưởng theo cấp số nhân mà vẫn giữ được sự nhất quán. Các service có API, SDK, xử lý lỗi, transport khác nhau; log mỗi nơi một định dạng; không truy…

Bài tóm tắt · Heroku · 2018 Trung bình

Rolling the Heroku Redis Fleet

Heroku quản lý hàng triệu database. Một lỗ hổng Redis bị cấm công bố (CVE-2018-11218) buộc nâng cả fleet Redis mà không được báo nguyên nhân cho khách. Plan trả phí có HA: standby nhân bản bất đồng bộ, tự thay primary…

Bài tóm tắt · Disney Hotstar · 2018 Dễ

Saving Millions : Leveraging EC2 Spots at scale

Spot instance là capacity EC2 chưa dùng, giá thấp hơn On-Demand nhiều, đổi lại có thể bị thu hồi. Cuối 2017 AWS đổi cơ chế: giá mượt hơn, không cần đấu giá, giá tối đa chặn ở mức On-Demand, ít bị thu hồi hơn.

Bài tóm tắt · Instacart · 2018 Trung bình

Predicting the real-time availability of 200 million grocery items

Hơn 100.000 shopper quét hàng triệu món mỗi ngày ở 20.000 cửa hàng (2018). Instacart không sở hữu chuỗi cung ứng; đối tác bán lẻ gửi dữ liệu tồn kho khoảng một lần mỗi ngày, trong khi hàng có thể hết trong ngày. Hàng…

Bài tóm tắt · Jane Street · 2018 Trung bình

How to shuffle a big dataset

Theo bài, dữ liệu ở Jane Street có tỉ lệ tín hiệu/nhiễu rất thấp nhưng rất nhiều: kiểu một tỉ mẫu huấn luyện mà nhãn chỉ hơi có xu hướng đúng.

Bài tóm tắt · Kubernetes · 2018 Trung bình

IPVS-Based In-Cluster Load Balancing Deep Dive

kube-proxy chạy trên mỗi node, biến Service (một IP ảo) thành việc chuyển gói tới các pod phía sau. Trước đó có hai chế độ: userspace (cũ) và iptables (mặc định).

Bài tóm tắt · LinkedIn · 2018 Khó

Concourse: Generating Personalized Content Notifications in Near-Real-Time

Thông báo về nội dung trong network (Project Pepper) chạy bằng workflow Hadoop vài lần mỗi ngày: event Kafka được ETL vào HDFS, join với đồ thị fan-out, gắn feature, chấm điểm bằng model, rồi chuyển cho ATC (cổng chung…

Bài tóm tắt · LinkedIn · 2018 Khó

Dynamometer: Scale Testing HDFS on Minimal Hardware with Maximum Fidelity

Tháng 3/2015: ngay sau khi thêm 500 máy vào cluster HDFS chính, thao tác chậm tới hai bậc độ lớn hoặc timeout, job dồn ứ. Gỡ máy ra không dễ vì chúng đã nhận dữ liệu. Nguyên nhân là một thay đổi khoảng 24 dòng trong bản…

Bài tóm tắt · LinkedIn · 2018 Trung bình

Making LinkedIn's Organic Feed Handle Peak Traffic

FollowFeed (): followfeed-query (broker) gửi song song tới nhiều followfeed-storage rồi gộp. Hai chỉ số QoS: Full QoS (mọi timeline đều trả về) và Partial QoS (có ít nhất một phần dữ liệu); Partial QoS rớt nghĩa là feed…

Bài tóm tắt · LinkedIn · 2018 Trung bình

LinkedOut: A Request-Level Failure Injection Framework

Mục tiêu: biết một trang xuống cấp ra sao khi service phía dưới hỏng, thử ngay trên production mà không làm member hay khách bị ảnh hưởng. Cách mịn nhất là inject lỗi theo từng request.