Tìm kiếm
40 kết quả cho “Tách dọc”. Tìm không phân biệt dấu.
- Tách compute khỏi storage Chủ đề Thành viên
Hệ có trạng thái kiểu cổ điển (database, broker Kafka, fileserver Git) đặt dữ liệu bền trên đĩa của chính máy xử lý. Máy đó vừa là compute vừa là storage, nên:
- Sharding và tách database Chủ đề Thành viên
Một database quan hệ duy nhất là điểm khởi đầu của hầu hết sản phẩm. Đến một lúc nó không chịu nổi lượng ghi, dữ liệu không còn vừa một máy, hoặc một sự cố ở DB đó làm sập mọi tính năng.
- Scale dọc trước khi scale ngang Chủ đề
Thêm máy (scale ngang) kéo theo độ phức tạp phân tán. Bắt mỗi máy làm được nhiều hơn (scale dọc, tối ưu) thì đơn giản hơn, nhưng có trần và dễ thành một điểm hỏng.
- Introducing Espresso - LinkedIn's hot new distributed document store Bài tóm tắt · LinkedIn · 2015
Trước Espresso, LinkedIn dùng Oracle (dữ liệu chính, nhất quán mạnh) và Voldemort (key-value). Phần lớn dữ liệu chính không cần đủ tính năng RDBMS nhưng lại cần đọc-sau-ghi và một change capture stream có thứ tự theo…
- How Stripe's document databases supported 99.999% uptime with zero-downtime data migrations Bài tóm tắt · Stripe · 2024
…để scale ngang vượt giới hạn dọc của MongoDB, nay dùng cho: tách shard khi tải lên, gộp (bin-pack) shard dùng ít , nâng phiên bản engine, chuyển khách lớn từ multi-tenant sang tena…
- How GitHub Docs' new search works Bài tóm tắt · GitHub · 2023
…ình không scale theo số ngôn ngữ × phiên bản; Elasticsearch tách search khỏi tiến trình web và cho công cụ xếp hạng phong phú. Bài học cho SWE - Search trong bộ nhớ (hoặc ngay trên…
- Mã hoá đầu cuối và hệ thống mà server không được đọc Chủ đề Thành viên
Một hệ thống bình thường giả định server thấy hết dữ liệu: server fan-out tin nhắn, lưu bản sao lưu, đồng bộ thiết bị, thu log để vận hành, chạy model, chống lạm dụng. Khi sản phẩm hứa chính nhà vận hành cũng không đọc…
- PlentyOfFish Architecture Bài tóm tắt · PlentyOfFish · 2007
…ol dựng sẵn. - Database: một DB chính và hai DB cho search; tách đọc khỏi ghi, có DB chỉ đọc, denormalize thành bảng chỉ để đọc thay vì đọc 20 bảng. Theo Frind, gọi DB 20 lần mỗi t…
- Migrating billions of records: moving our active DNS database while it's in use Bài tóm tắt · Cloudflare · 2024
…ậm theo. - Cuối 2022: team DNS cùng 25 team khác quyết định tách dữ liệu DNS sang cluster riêng dnsdb . Thay đổi chính Chuẩn bị (nhiều năm): - Tách "zone" khỏi "DNS record" : hai k…
- 5-year Evolution of Ele.me's Transaction System - Part 1 Bài tóm tắt · Ele.me · 2020
…(test, diễn tập lỗi), (Redis, polling), (sự cố RabbitMQ), (tách domain). Bối cảnh - 2012: Zeus là một ứng dụng Python gom các module lõi (đơn hàng, user, nhà hàng) trong một repo,…
- How We Replaced Our Data Pipeline With Zero Downtime Bài tóm tắt · Twilio · 2014
…rvice trước DB để chỉ một service biết cách lưu và shard. - Tách in-flight và post-flight ra hai kho. - Chống "nhân tiện sửa luôn": họ cân nhắc đổi công nghệ DB (MySQL thiếu shard…
- How We Partitioned Airbnb's Main Database in Two Weeks Bài tóm tắt · Airbnb · 2015
…từ thời Airbnb là một app Rails) phải giảm tải. Airbnb chọn tách dọc theo chức năng thay vì shard ngang (theo bài, đồng ý với Asana và Percona rằng shard ngang là "thuốc đắng"); cá…
- Building a fault-tolerant metrics storage system at Airbnb Bài tóm tắt · Airbnb · 2026
…an tải worker, giới hạn series/chunk mỗi query theo tenant, tách đường đánh giá alert khỏi query ad hoc (dashboard, CI), autoscale thành phần đọc; compaction của tenant lớn chia sh…
- How we scaled reads on the Twitter Users Database Bài tóm tắt · Twitter · 2023
…lo pool kết nối, viết lại query, khử trùng query. - VTGate tách khỏi máy MySQL , chạy trên Mesos/Aurora, scale lên hàng trăm instance, tinh chỉnh CPU, số luồng, GOGC; mỗi VTGate c…
- Observability và monitoring Chủ đề Thành viên
Lúc đầu, monitoring là vài dashboard và một công cụ cài sẵn; log đọc thẳng từ máy. Khi hệ lớn lên, chính hệ quan sát thành một hệ phân tán có bài toán riêng:
- Splitting a Monitoring Monolith into Separate Components Bài tóm tắt · trivago · 2018
…cử nhân của một sinh viên làm ở trivago. Hữu ích như một ca tách monolith ở mức một công cụ nội bộ, không phải hệ sản phẩm. Bối cảnh - Team Website-Performance có một ứng dụng PHP…
- Event-driven, message queue và Kafka Chủ đề Thành viên
Khi một hệ có nhiều bên cần biết "có gì vừa xảy ra" (đơn hàng đổi trạng thái, tin đăng được sửa, ticket được cập nhật), gọi đồng bộ từng bên một làm producer phải biết mọi consumer, và một consumer chậm kéo chậm cả…
- Migration không downtime Chủ đề Thành viên
Hệ thống đang chạy thật (gọi xe, chat, thiết kế) không được dừng, nhưng phải đổi ngôn ngữ, database hoặc hạ tầng bên dưới.
- Stack Overflow: The Architecture - 2016 Edition Bài tóm tắt · Stack Overflow · 2016
…ache được tốt. Không suy ra rằng mọi hệ thống đều không cần tách. Liên quan - - - - -…
- How Uber Conquered Database Overload: From Static Rate-Limiting to Intelligent Load Management Bài tóm tắt · Uber · 2026
…rồi cùng retry; điều khiển liên tục (PID) tránh dao động. - Tách hai bài toán: bảo vệ hệ khi quá tải (theo ưu tiên) và công bằng giữa tenant khi khoẻ (theo tenant); chạy song song.…
- Chaos Testing a Distributed System with Jepsen — Part II Bài tóm tắt · Appian · 2019
…y ra; "xanh" khi tác nhân gây lỗi chết là dương tính giả. - Tách ba trạng thái kết quả (đúng, phát hiện lỗi, test hỏng) để người đọc CI biết phải sửa hệ hay sửa test. Liên quan - ·…
- Chọn database theo workload Chủ đề Thành viên
Không có database tốt nhất, chỉ có database hợp với mẫu đọc/ghi ở một quy mô cụ thể. Mẫu đó thay đổi khi sản phẩm lớn lên. Ngoài ra, chuyên môn vận hành của đội cũng là một phần của "workload".
- Sharding Pinterest: How we scaled our MySQL fleet Bài tóm tắt · Pinterest · 2015
2011 Pinterest tăng trưởng cực nhanh; khoảng 9/2011 mọi tầng hạ tầng quá tải, vài hệ NoSQL "đều hỏng nặng", còn đọc từ nhiều MySQL slave gây bug khó chịu (nhất là với cache). Năm 2015: hơn 50 tỉ Pin trên 1 tỉ board.
- The static-all Split - Dividing Zillow's JavaScript Monolith Repository Bài tóm tắt · Zillow · 2017
…ows-js-repo/) Bối cảnh - Năm 2012, dự án "The Great Schism" tách mọi tài nguyên tĩnh (JS, CSS, ảnh, template) khỏi ứng dụng monolith Java vào một repo tên static-all . - Bốn năm sa…
- Safeguarding Dynamic Configuration Changes at Scale Bài tóm tắt · Airbnb · 2026
…ở mỗi bậc, báo tác giả khi thấy hồi quy, rollback nhanh. - Tách "quyết định" khỏi "giao hàng": đổi chính sách rollout không đụng storage/phân phối và ngược lại. - Cache local ở ph…
- Simplifying Data and Product Integrations with a Data Abstraction Layer Bài tóm tắt · Uber · 2026
…khác nhau, người dùng tự chọn khoảng thời gian, chiều phân tách, metric; trước đó dựng một báo cáo mới mất vài tuần tới vài tháng . Thay đổi chính - DAL (Data Abstraction Layer) l…
- YouTube Architecture Bài tóm tắt · YouTube · 2007
…shard theo user . Slave đơn luồng tụt sau master; tạm thời tách hai cụm: pool phục vụ xem video được ưu tiên, tính năng mạng xã hội sang cụm kém hơn. Sharding giảm 30% phần cứng v…
- A lesson in creating and using niche business DSLs at scale Bài tóm tắt · Zerodha · 2020
…, 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 reverse proxy kiểm tra lệnh theo luật động do đội…
- Scaling Verify with Wallet for Identity Verification at Uber Bài tóm tắt · Uber · 2026
…à sự kiện thường lệ: thiết kế cho nhiều khoá cùng hợp lệ. - Tách mô hình nội bộ khỏi API của nhà cung cấp bằng lớp ánh xạ. Liên quan - - Cùng công ty: · - Cùng bài toán: (khoá khôn…
- 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…
- How we achieved independent deployments in a micro-frontend architecture Bài tóm tắt · Allegro · 2026
…iệm khoảng 240 ngày công (khoảng 11 FTE). Bài học cho SWE - Tách "deploy code" khỏi "bật phiên bản": service vẫn deploy theo lịch, nhưng mỗi team tự bật phiên bản của mình. - Dùng…
- 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.
- Failover, replica và dự phòng dữ liệu Chủ đề Thành viên
Mọi hệ có trạng thái đều giữ nhiều bản (replica) để một máy chết không làm mất dịch vụ. Khó không nằm ở việc có bản sao mà ở lúc chuyển sang bản sao:
- Monolith và microservices — đi và quay lại Chủ đề Thành viên
Lúc nào nên tách hệ thống thành nhiều service, và cái giá của việc đó là gì? Các nguồn hiện có cho thấy đây không phải đường một chiề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:
- Realtime và fan-out Chủ đề Thành viên
Một sự kiện (tin nhắn, ảnh, tweet, vote) phải tới rất nhiều người, rất nhanh, qua rất nhiều kết nối mở cùng lúc.
- Xác thực và phân quyền (authn/authz) Chủ đề Thành viên
Ở monolith, mỗi dữ liệu thường chỉ có một đường vào, nên kiểm tra quyền nằm ngay đó: một hàm hasaccess?, một API mỗi resource. Khi hệ thống tách thành nhiều service, nhiều client, nhiều loại token, cả hai nửa đều vỡ:
- Carving The Scheduler Out Of Our Orchestrator Bài tóm tắt · Fly.io · 2023
Orchestrator về bản chất là supervisor có API: worker nhận việc, chạy, báo lại. Phần được coi là khó là scheduling (chọn worker). Mọi orchestrator phổ biến dùng scheduler tập trung, như bộ cấp phát bộ nhớ, với bức tranh…
- Độ tin cậy và multi-region Chủ đề Thành viên
Thay đổi kiến trúc lớn thường không đến từ kế hoạch mà từ một sự cố đau đớn. Khi đã chạy nhiều vùng, nhiều giả định của hệ thống một vùng không còn đúng.
- Pipeline dữ liệu và analytics Chủ đề Thành viên
Lúc đầu, báo cáo chạy thẳng trên DB production. Đến một lúc truy vấn phân tích làm chậm giao dịch, dữ liệu cần gộp từ nhiều nguồn, và có thêm người dùng mới (analyst, ML, khách hàng xem dashboard). Khi đó cần một mặt…