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. 351 bài (đã lọc). Đọ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 · Jane Street · 2020 Trung bình

Finding memory leaks with Memtrace

Trước đó OCaml có Spacetime: ghi mọi lần cấp phát. Tìm leak tốt nhưng overhead cao, cần một cấu hình compiler riêng, profile rất lớn và cần rất nhiều RAM để xử lý.

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

Production testing with dark canaries

Code ở LinkedIn có thể lên production trong vòng một giờ, nhiều lần mỗi ngày; code, config hay model AI xấu vẫn gây incident dù có unit và integration test. Một số thứ (bộ nhớ, CPU/GPU, concurrency, latency) chỉ đo đúng…

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

How LinkedIn handles merging code in high-velocity repositories

Gần 10 năm trước (tức khoảng 2010) LinkedIn bỏ một codebase monolith sang microservice, mỗi team một repo. Năm 2020: hàng nghìn dev, hơn 10.000 repo đang hoạt động, có repo hơn 300 commit/ngày. Trunk-based development.

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

Our Evolution Towards T-REX: The Prehistory of Experimentation Infrastructure at LinkedIn

2020: T-REX (Targeting, Ramping, and Experimentation) phục vụ tới 41.000 A/B test cùng lúc trên hơn 700 triệu thành viên; gồm targeting, cấu hình động, hạ tầng thí nghiệm, pipeline báo cáo, thông báo, UI.

Bài tóm tắt · Monzo · 2020 Trung bình

Autoscaling Monzo: How we optimise our platform to be just the right size

Gần như mọi hệ thống của Monzo chạy microservice trên Kubernetes (trừ vài hạ tầng có trạng thái như Cassandra, etcd). Mỗi service build từ cùng một framework, deploy cùng một kiểu: một container service + một sidecar…

Bài tóm tắt · Netflix · 2020 Trung bình

How Netflix Scales its API with GraphQL Federation (Part 1)

Mảng Studio (sản xuất nội dung) có hàng trăm ứng dụng; dữ liệu và quan hệ nằm rải trong vô số microservice.

Bài tóm tắt · Pinterest · 2020 Trung bình

Scaling Cache Infrastructure at Pinterest

Tầng cache phân tán nằm gần đáy stack, đứng trước nhiều service và DB, hấp thụ phần lớn traffic backend: hàng nghìn máy EC2, hàng trăm TB, hơn 150 triệu request/giây lúc cao điểm (2020).

Bài tóm tắt · Postman · 2020 Trung bình

How Postman Engineering handles a million concurrent connections

Service Sync là một trong những service đầu tiên của Postman: sync mọi hoạt động trên client với server qua WebSocket theo kiểu pub/sub. Ban đầu chỉ lo giao dịch DB (ví dụ cập nhật collection), dần ôm thêm việc thông…

Bài tóm tắt · Riot Games · 2020 Trung bình

Scalability and Load Testing for VALORANT

Nền tảng của VALORANT (ngoài game server) là hơn 30 microservice Go: party, matchmaking, chọn Agent, cấp trận về datacenter theo ping, lưu kết quả, store, loadout. Microservice từ đầu là bài học từ League of Legends,…

Bài tóm tắt · Shopify · 2020 Trung bình

Under Deconstruction: The State of Shopify's Monolith

18 tháng sau . Monolith chính có 2,8 triệu dòng Ruby, 500.000 commit, phát triển liên tục từ 2006, hàng trăm developer đang thêm tính năng.

Bài tóm tắt · Tinder · 2020 Trung bình

Phoenix — Tinder's Testing Platform, Part III (Metrics System)

Sản phẩm rộng và đổi nhanh, mỗi thành phần hành xử khác nhau theo vùng; muốn biết "sức khoẻ" cần nhiều chiều metric, và muốn tiến hoá nhanh thì phải thử nhiều và nhanh.

Bài tóm tắt · Tinder · 2020 Trung bình

The Ultimate Load Test

Swipe Night (video tương tác) ra mắt ở Mỹ tối Chủ nhật 6/10/2019, chỉ trong khung 18h–24h. Thường Tinder rollout dần từ thị trường nhỏ, nhưng lần này phải bí mật và mở cho tất cả cùng lúc.

Bài tóm tắt · Walmart · 2020 Trung bình

Retail Graph — Walmart's Product Knowledge Graph

Catalog thương mại điện tử lấy dữ liệu từ seller và nhà cung cấp; dữ liệu hay thiếu, đôi khi sai, và không có một nguồn sự thật duy nhất. Thông tin hữu ích nằm lẫn trong tiêu đề và mô tả.

Bài tóm tắt · Wix · 2020 Trung bình

6 Event-Driven Architecture Patterns — Part 1

Team data-streams của Wix lo hạ tầng event-driven trên Kafka cho hơn 1.400 microservice (2020). Bài là ba mẫu dùng thực tế ở Wix, mỗi mẫu một use case.

Bài tóm tắt · Zerodha · 2020 Trung bình

A lesson in creating and using niche business DSLs at scale

Mỗi lệnh đặt vào OMS (Order Management System) phải qua nhiều kiểm tra nghiệp vụ tốn CPU, và lệnh sau phải chờ lệnh trước. Để giảm latency, Zerodha tách một phần kiểm tra ra một thành phần đứng trước tên là Veto: một…

Bài tóm tắt · Zerodha · 2020 Trung bình

Infrastructure monitoring with Prometheus

Năm 2020 Zerodha xử lý khoảng 15% khối lượng giao dịch bán lẻ hằng ngày trên các sàn ở Ấn Độ; tự host gần như mọi phụ thuộc (CRM, database lớn, Kafka, mail server).

Bài tóm tắt · Zillow · 2020 Trung bình

Building a Data Streaming Platform

Ba cách đưa dữ liệu vào data lake S3 trước đó, đều có vấn đề:

Bài tóm tắt · Zillow · 2020 Trung bình

On-Device Stitching with Zillow 3D Home

App Zillow 3D Home (iPhone, ra 10/2017) chụp tour ảnh 360° bằng cách người dùng xoay tại chỗ. Bản đầu chụp 180 frame và gửi 70 MB trở lên mỗi panorama lên cloud để ghép.

Bài tóm tắt · Zillow · 2020 Trung bình

ML Model Deployment for Zillow Floor Plans with SageMaker

Zillow Floor Plan: model phát hiện cửa sổ, cửa ra vào, lối mở trong ảnh panorama của tour 3D để tự động hoá việc vẽ sơ đồ nhà. Cần hạ tầng deploy và phục vụ model dễ tích hợp, tin cậy, dễ thêm model, dùng lại được cho…

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

Dynein: Building a Distributed Delayed Job Queueing System

Job nền ở Airbnb gồm cả job hẹn giờ xa (nhắc check-in trước nhiều tháng, thậm chí nhiều năm). Yêu cầu: at-least-once, scale ngang, cô lập theo service, p95 lệch giờ dưới 10 giây, ack từng message, dead letter queue, mỗi…

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

A Decade of Evolution of Alibaba's Databases - Part 2

2016, giám sát: hệ giám sát DB thành nút cổ chai khi số DB tăng: độ chi tiết chỉ 1 phút, sau tối ưu mới được 10 giây. Bộ phận bảo mật lại đòi thu toàn bộ câu SQL để phân tích realtime. Họ dựng lại cả hệ giám sát (giám…

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

A Decade of Evolution of Alibaba's Databases - Part 1

Double 11 tạo ra một đỉnh tải cực lớn đúng 00:00, và chính đỉnh đó định hướng công nghệ database của Alibaba suốt một thập kỷ.

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

Chaos Testing a Distributed System with Jepsen

Data store của Appian (nền tảng low-code) chọn Consistency khi phải đánh đổi theo CAP và cam kết linearizability: ghi xong thì mọi lần đọc bắt đầu sau đó phải thấy giá trị đó hoặc mới hơn; cộng read-your-own-writes,…

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

Chaos Testing a Distributed System with Jepsen — Part II

Sau khi chọn Jepsen, việc khó là đưa nó vào hạ tầng thật: hệ cần test (SUT) phụ thuộc Kafka và Zookeeper, binary và thư viện nằm trong kho nội bộ có xác thực, và test phải chạy liên tục chứ không chỉ trên máy dev.