Tìm kiếm
30 kết quả cho “runtime validation”. Tìm không phân biệt dấu.
- Cache và invalidation Chủ đề Thành viên
Cache là cách rẻ nhất để một DB chịu được lượng đọc tăng nhiều lần. Vì vậy nó xuất hiện ngay từ giai đoạn đầu (Instagram 2011, Facebook 2004–2010). Cái giá đến sau, và lặp lại ở hầu hết các nguồn:
- How the controller-runtime Cache Actually Works, and Why Your Controller Does Not Crash the API Server Bài tóm tắt · Kubernetes · 2026
…[bài gốc](https://kubernetes.io/blog/2026/07/29/controller-runtime-cache-explained/) Bài giải thích cơ chế bên trong (blog của dự án Kubernetes), không phải câu chuyện của một côn…
- Building Robust Codebases with Python's Type Annotations Bài tóm tắt · Hudson River Trading · 2024
…API ngoài thì TypedDict không đủ, vẫn phải kiểm schema lúc runtime; tránh dùng kiểu nguyên thuỷ cho khái niệm miền (CUSIP) mà dùng dataclass có kiểm tra hoặc NewType + TypeGuard ;…
- A lesson in creating and using niche business DSLs at scale Bài tóm tắt · Zerodha · 2020
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…
- Building a Dependency Graph of Our Python Codebase Bài tóm tắt · Hudson River Trading · 2023
…ho SWE - Coupling trong monorepo Python lộ ra thành chi phí runtime (import) chứ không chỉ chi phí bảo trì. - Gỡ một lần chưa đủ; luật phụ thuộc trong CI mới giữ được kết quả. - Th…
- Training Orchestrator: Unifying Model Training at Yelp Bài tóm tắt · Yelp · 2026
…ning Spark riêng, chạy dạng script nguyên khối gắn chặt với runtime của cluster và trình launch job. Hệ quả: không chạy local được; khó test vì logic train lẫn với việc thực thi, m…
- Hệ thống độ trễ thấp (low latency) Chủ đề Thành viên
Ở sàn giao dịch và công ty market making, mỗi giao dịch làm thay đổi thị trường cho giao dịch sau, và ai phản ứng chậm hơn thì thua. Yêu cầu không chỉ là latency trung bình thấp mà latency ổn định ở đuôi, ở thang micro…
- Deploy và release an toàn Chủ đề Thành viên
Phần lớn sự cố bắt đầu bằng một thay đổi: code mới, cấu hình mới, hạ tầng mới. Khi hệ thống và tổ chức lớn lên, câu hỏi là làm sao đưa thay đổi lên production thường xuyên mà vẫn giới hạn được thiệt hại khi có lỗi.
- Hot partition và thundering herd Chủ đề Thành viên
Chia dữ liệu và tải ra nhiều máy chỉ hiệu quả khi tải chia đều. Thực tế tải lệch: một khách hàng khổng lồ, một kênh có @everyone, một bài của người nổi tiếng. Có hai dạng hay gặp:
- Nền tảng nội bộ cho service (đường ray chung) Chủ đề Thành viên
Tách hệ thống thành nhiều phần (service, hoặc component trong một monolith) giải được bài toán tổ chức. Nhưng nếu mỗi team tự làm RPC, retry, log, metric, contract theo cách riêng, thì ta chỉ đổi một kiểu hỗn loạn lấy…
- Dropbox Công ty Thành viên
Dropbox luôn là hybrid: metadata ở data center riêng, nội dung file trên S3. Ở ~500 PB họ tự xây Magic Pocket, theo Dropbox vì hiệu năng và unit economics . Cái giá kèm theo là phải tự dựng cả backbone và edge network .…
- Why Discord is switching from Go to Rust Bài tóm tắt · Discord · 2020
…). Bài học cho SWE - Đi tới tận nguyên nhân gốc (đọc source runtime Go) trước khi quyết định viết lại. - Viết lại đúng một service nhỏ, có số liệu trước/sau và load test. Chính Dis…
- Kubernetes Công ty Thành viên
Hai nguồn đầu của dự án Kubernetes trong wiki kể quyết định kiến trúc nằm bên trong nền tảng mà nhiều công ty khác dựng lên trên. Năm 2018, kube-proxy dùng iptables (danh sách luật vốn cho firewall) là nút cổ chai thật…
- LinkedIn Công ty Thành viên
Bài khung là bài nhìn lại năm 2015 . LinkedIn bắt đầu năm 2003 là một monolith tên Leo. Service đầu tiên tách ra là member graph, vì đồ thị kết nối có profile tải khác hẳn; DB profile được đỡ bằng scale dọc rồi replica…
- A Kubernetes Resource That Doesn't Exist: Caching CI Images on Ephemeral Runners Bài tóm tắt · Mercari · 2026
…workspace. Vì là pod thật, image layer nằm trong container runtime của node như mọi pod khác: job đầu tiên trên node kéo một lần, job sau dùng lại. Trong lab: khởi động còn 10–15…
- Discord Công ty Thành viên
Hiếm có công ty nào kể cùng một bài toán qua 6 năm như Discord. Năm 2015 họ cố ý dùng một replica set MongoDB để ra sản phẩm trong 2 tháng, kèm đường thoát. Họ phân tích workload rồi chuyển sang Cassandra 12 node với…
- Instagram Công ty Thành viên
Bắt đầu bằng stack "nhàm chán" (Django + Postgres + Redis + Memcached trên EC2). Nguyên tắc: đơn giản, không phát minh lại, dùng đồ đã kiểm chứng. 3 kỹ sư vận hành được 14 triệu user . Cùng năm họ giữ Postgres, chia…
- Building a dynamic and responsive Pinterest Bài tóm tắt · Pinterest · 2018
2015: phần lớn nội dung được sinh sẵn cho user trước khi họ đăng nhập, lưu tĩnh trong HBase. Kiến trúc này đưa Pinterest tới 100 triệu MAU.
- Why We're Moving on From Nix (Introducing Railpack) Bài tóm tắt · Railway · 2025
…g chạy được bỗng hỏng. - Image lớn: mọi phụ thuộc build lẫn runtime nằm chung một layer /nix/store , không tách được. - Cache kém: Railway tiêm biến môi trường deployment ID vào mọ…
- Uber Công ty Thành viên
Một vòng đủ: monolith → microservices → tổ chức lại microservices. Năm 2012–2013 Uber có hai monolith; khi lên hàng trăm kỹ sư thì tách. Lý do chủ yếu là tổ chức. Năm 2015 họ có 500+ service và phải chuẩn hoá contract…
- V8 (Google) Công ty Thành viên
Hai nguồn về engine JavaScript V8 trong wiki đều là tối ưu chính runtime chứ không đổi ngôn ngữ của ứng dụng. Năm 2019, đội V8 giải thích một "vách hiệu năng" do React gặp: trường số đổi representation trên object đã…
- Etsy Công ty Thành viên
Etsy shard MySQL từ khoảng 2010 bằng ORM tự viết: gán shard ngẫu nhiên, lưu ánh xạ trong một index DB, thành điểm hỏng chung. Từ 2018 họ chuyển sang Vitess mà không dời dữ liệu (vindex lai: SQLite cho ID cũ, hash cho ID…
- Grab Công ty Thành viên
Dùng AWS từ ngày đầu (MyTeksi 2012: Rails trên EC2 + RDS MySQL) và theo Grab chỉ cần dưới 10 kỹ sư vận hành nhờ managed service . Năm 2016 họ chuyển API hành khách từ Rails sang Go theo từng endpoint bằng shadow…
- How we built a dynamic Kubernetes API Server for the API Aggregation Layer in Cozystack Bài tóm tắt · Kubernetes · 2024
Mở rộng Kubernetes thường bằng CRD + controller (kubebuilder, operator-sdk): khai báo resource, controller reconcile. Cách khác là API aggregation layer: viết một extension API server chạy riêng, đăng ký bằng…
- Pinterest Công ty Thành viên
Năm 2015 Pinterest sinh sẵn nội dung cho mọi user và lưu trong HBase, cách đã đưa họ tới 100 triệu MAU nhưng tốn lưu trữ và khó thử nghiệm. Họ xây 9 hệ thống C++/RocksDB để sinh feed lúc đọc . Phía dưới là tầng cache…
- Slack Công ty Thành viên
Slack bắt đầu bằng LAMP và giữ PHP vì môi trường của nó (mỗi request trạng thái sạch, vòng lặp sửa–tải lại). Họ cải tiến dần bằng HHVM và Hack thay vì viết lại . Tầng dữ liệu đi từ MySQL active-active shard theo…
- Twitter Công ty Thành viên
Khi rời một MySQL duy nhất sang Cassandra và MySQL shard (Gizzard), thứ vỡ đầu tiên là sinh ID, dẫn tới Snowflake (64 bit, k-sorted, không phối hợp) . Sau World Cup 2010, họ nhận ra monolith Rails (~200 kỹ sư) và…
- WhatsApp Công ty Thành viên
WhatsApp là ca hiếm: blog kỹ thuật gần như chỉ kể hai giai đoạn, và hai giai đoạn ấy giải hai bài khác hẳn nhau. Giai đoạn Erlang (2011–2014) là câu chuyện tối ưu một hệ nhỏ người: năm 2012, một server FreeBSD + Erlang…
- How WhatsApp Grew to Nearly 500 Million Users, 11,000 cores, and 70 Million Messages a Second Bài tóm tắt · WhatsApp · 2014
465 triệu user/tháng; 19 tỉ tin vào và 40 tỉ tin ra mỗi ngày; 600 triệu ảnh, 200 triệu voice, 100 triệu video mỗi ngày.
- Zerodha Công ty Thành viên
Công ty môi giới chứng khoán Ấn Độ, khách tăng hơn 3 lần trong một năm (2020–2021). Theo CTO, họ trụ được nhờ các nguyên tắc lẽ thường: interface ổn định, viết lại thường xuyên (ticker viết lại ít nhất 5 lần), đóng băng…