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. 164 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 8.979 bài thuộc 133 công ty có trang riêng được hiển thị cho thành viên. Cảm ơn những người duy trì các danh sách đó.
Project STAR*: Streamlining Our On-Call Process
Voyager On-Call: lịch trực cho app flagship (web, Android, iOS, frontend API). Người trực lo site chạy và giữ cho trunk và pipeline deploy khoẻ. Mỗi tuần một nhóm mới: một engineer mỗi nền tảng, kèm người của…
Goodbye Microservices: From 100s of problem children to 1 superstar
Segment nhận hàng trăm nghìn event/giây và chuyển tiếp tới hơn 100 loại destination (Google Analytics, webhook…).
Implementing ChatOps into our Incident Management Procedure
Production engineer (PE) của Shopify được coi là chuyên gia xử lý sự cố, nhưng xử lý sự cố vẫn rối và mệt: gặp lỗi mới, bám vào triệu chứng, quên các thói quen tốt khi bị áp lực.
Re-architecting Slack's Workspace Preferences: Moving to an EAV Model
Thiết kế ban đầu: lưu tuỳ chọn của workspace dưới dạng một JSON blob ngay trong bảng workspaces (MySQL). Hợp lý khi Slack còn nhỏ.
Splitting a Monitoring Monolith into Separate Components
Team Website-Performance có một ứng dụng PHP nguyên khối (Symfony, Orchestra) kéo metric từ API của các CDN (ChinaCache, Edgecast…) và vài dịch vụ khác, đẩy vào InfluxDB qua Graphite. Code nhiều phụ thuộc chéo giữa các…
How we build a robust analytics platform using Spark, Kafka and Cassandra
Người dùng nghiệp vụ cần dashboard mức độ còn hàng (item availability) tổng hợp ở các địa điểm then chốt, không theo dõi được từng SKU.
Debugging Production with Event Logging
Trang tìm căn hộ: khi lưu một bản ghi vào SQL, các thuộc tính tìm kiếm được index vào Elasticsearch; search chạy trên Elasticsearch, rồi lấy bản ghi đầy đủ từ SQL theo ID.
Incidents, fixes, and the day after
Kỹ sư Booking.com được tự deploy thẳng lên production 24/7. Năm 2012 bộ phận còn nhỏ, vài trang wiki là đủ; đến 2017 bộ phận có gần 2.000 người trên toàn cầu, nên làm lại hướng dẫn xử lý sự cố.
An alternative approach to rate limiting
Figma bị tấn công spam lần đầu: kẻ xấu dùng tính năng mời vào tài liệu để gửi email hàng loạt. Nếu không phát hiện kịp thì chi phí gửi email tăng vọt và uy tín người gửi email (sender reputation) bị ảnh hưởng.
Driving Southeast Asia Forward with AWS
Đây là bài nói của VP Engineering tại một sự kiện AWS, nên mang tính giới thiệu và quảng bá nhiều hơn kỹ thuật.
Couchbase Ecosystem at LinkedIn
LinkedIn dùng Couchbase từ 2012. Năm 2017: hơn 10 triệu query/giây, hơn 200 cụm (production, staging, corp), cụm từ 3 tới 72 node. Dùng làm cache backend cho recruiter và jobs, counter cho cơ chế chống tấn công, và cả…
Open Sourcing Iris and Oncall
Trước 2015, kỹ sư NOC escalate sự cố bằng tay: không rõ ai là người liên hệ thứ hai và liên hệ bằng gì; số alert tăng nhanh hơn nhiều so với số người ở NOC. Đường escalate cũ lấy theo quản lý trong LDAP nên sự cố của kỹ…
The Evolution of Security at Riot
Khoảng 4 năm trước bài, đội bảo mật của Riot là đội "nói không": người gác cổng chặn việc giao tính năng, nên các team đi vòng qua. Thời gian bị nuốt vào ứng cứu sự cố; có sự cố công khai (mất dữ liệu từ cơ sở dữ liệu…
Scaling your API with rate limiters
Thêm capacity chỉ đỡ được mấy lần tăng traffic đầu; API production còn phải chống một người dùng (vô tình hay cố ý) làm ảnh hưởng mọi người, ưu tiên request quan trọng hơn request ít quan trọng, và bỏ bớt request khi…
Airflow at Zillow
Team Data Science and Engineering (DSE) chạy nhiều ETL; trước đó mỗi job là một service tự lên lịch riêng. Gặp Airflow năm 2016.
Save Money with EMR Auto Scaling and Spot Instances
Hàng trăm job ETL batch (Spark, Hive, Sqoop) mỗi ngày, khối lượng đổi theo giờ; có lúc một mẻ tới 10 TB.
Avoid webpack bloat: Optimize your dependencies
Mỗi dependency npm là một nguồn lỗi và bảo trì; thư viện phổ biến cũng phình dần (Moment.js 2,2 KB lúc 1.0 → hơn 20 KB gzip).
The great adventure of migrating Allegro infrastructure to new Data Center - DC5
DC2 ở Poznań là data center "thật" đầu tiên của Allegro (từ 2007). Đến 2014 có khoảng 2.000 thiết bị trong 90 tủ rack, phục vụ allegro.pl và các site khác của Naspers ở Ba Lan: khoảng 75 website ở 20 nước, khoảng 250…
AWS Lessons Learned for Data Processing Pipelines
Khoảng 2015, team Media Services của Expedia chuyển pipeline xử lý ảnh (nhận ảnh từ khách sạn và nhà cung cấp, tối ưu, phân phối cho các site) từ một hệ batch cũ sang pipeline dựa trên queue trên AWS.
Medium’s DynamoDB Data Source for Apache Spark
Năm 2016, dữ liệu production của Medium nằm trên DynamoDB, còn xử lý dữ liệu phía sau dùng Spark. Data warehouse cần một đường đưa dữ liệu từ DynamoDB sang Spark nhanh và tin cậy. Theo tác giả, nhiều công ty có cặp này…
The Stack That Helped Medium Drive 2.6 Millennia of Reading Time
Khoảng 25 triệu người đọc mỗi tháng, hàng chục nghìn bài mỗi tuần, tổng 1,4 tỉ phút đọc.
Completing the Netflix Cloud Migration
8/2008: database bị hỏng dữ liệu nghiêm trọng, 3 ngày không gửi được DVD. Netflix kết luận phải rời các điểm hỏng đơn lẻ scale dọc (DB quan hệ trong data center) để sang hệ phân tán, scale ngang trên cloud (AWS).
Taking PHP Seriously
Slack viết phần lớn logic server bằng PHP. Đây là lựa chọn lạ vào năm 2016, dù Facebook, Wikipedia, WordPress, Etsy… đều thành công với nó.
The Lego Monolith — A Monolith Microservice Proof of Concept
Năm 2016, microservices đang được nói nhiều. Theo tác giả, muốn làm microservices đầy đủ thì tổ chức phải "đủ cao" trước: cấp máy nhanh (tốt nhất là cloud), monitoring đủ trưởng thành cho tracing tương quan, circuit…