Tìm kiếm
40 kết quả cho “SOA”. Tìm không phân biệt dấu.
- Building an Effective Test Pipeline in a Service Oriented World Bài tóm tắt · Airbnb · 2020
…nh - Airbnb đang chuyển từ một ứng dụng Rails khổng lồ sang SOA . Các luồng nghiệp vụ quan trọng từng nằm trong monorepo nay nằm ở nhiều service: REST + DB, Kafka producer/consumer…
- A Brief History of Scaling LinkedIn Bài tóm tắt · LinkedIn · 2015
…ừ nhiều domain nên invalidation và call graph vượt tầm kiểm soát. Theo LinkedIn, cache nên đặt sát kho dữ liệu nhất có thể. - Kafka: nhiều pipeline riêng (vào data warehouse, vào H…
- Who Watches the Watchmen? Keeping an Eye on Our Monitoring Systems Bài tóm tắt · Mercari · 2022
…Security Engineering về giám sát pipeline thu log bảo mật (SOAR) của chính họ; wiki chỉ giữ phần giám sát pipeline, bỏ qua nội dung bảo mật. Bối cảnh - Pipeline SOAR gồm collector…
- Atlas: Our journey from a Python monolith to a managed platform Bài tóm tắt · Dropbox · 2021
…1.0, metric và tracing phải làm lại riêng. Thay đổi chính - SOA thất bại một nửa: hơn một năm rưỡi mới xong mốc 1 (tách chức năng lõi ra RPC, quy trình production readiness); càng…
- 5-year Evolution of Ele.me's Transaction System - Part 1 Bài tóm tắt · Ele.me · 2020
…16: tách hẳn deploy vật lý. - Sinh ra zeus core , framework SOA cho Python, tách ra khoảng 4/2016. Kết quả Giai đoạn 1 kéo dài khoảng nửa năm, không gây sự cố nào . Theo tác giả, đ…
- Integrated Commerce and our Merchant Center rebuild Bài tóm tắt · Zalando · 2016
…ửa hàng). - Partner Program hiện có (2016) dựa trên Java và SOAP, chỉ có interface backend : đối tác không có giao diện tự quản lý, mọi việc đi qua frontend nội bộ của Zalando. Kho…
- The Story of Apollo – Amazon's Deployment Engine Bài tóm tắt · Amazon · 2014
Khi chuyển sang service-oriented architecture, Amazon tách phần mềm thành nhiều service nhỏ và tổ chức thành các team nhỏ tự chủ, mỗi team sở hữu cả phát triển lẫn vận hành một service. Team ra tính năng nhanh hơn,…
- Service-Oriented Architecture: Scaling the Uber Engineering Codebase As We Grow Bài tóm tắt · Uber · 2015
Uber bắt đầu bằng một monolith cho một sản phẩm (UberBLACK) ở một thành phố (San Francisco). Lúc đầu để mọi logic một chỗ là hợp lý.
- 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.
- 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.
- Giao dịch phân tán và nhất quán xuyên service Chủ đề Thành viên
Với một DB quan hệ, BEGIN … COMMIT lo hết. Khi dữ liệu bị chia (shard, tách service, thêm Redis bên cạnh Postgres), một thao tác nghiệp vụ chạm nhiều nơi, và câu hỏi khó nhất trở thành "timeout rồi, việc đó đã xảy ra…
- 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…
- CI và build ở quy mô lớn Chủ đề Thành viên
Lúc nhỏ, CI là "mỗi commit chạy hết build và test". Khi codebase và số commit tăng, chạy hết trở thành bất khả (Stripe 2026: chạy tuần tự mất bốn tháng), và thời gian chờ của một thay đổi không còn chỉ là thời gian…
- 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ỡ:
- 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ả…
- 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:
- Load shedding, rate limit và backpressure Chủ đề Thành viên
Mọi hệ đều có lúc nhận nhiều việc hơn sức làm: spike của người dùng, client nội bộ có bug, dependency chậm đi, retry dồn lại. Theo Discord, khi chạm giới hạn năng lực thì đó là bài toán kinh tế: hoặc tăng cung (thêm…
- Bảo mật hạ tầng và quản lý secret Chủ đề Thành viên
Khi hệ thống lớn lên, số credential (mật khẩu DB, API key, SSH key, token, cookie phiên) tăng theo số service, pipeline, nhà cung cấp, và chúng rải vào code, cấu hình, hệ build, log. Các nguồn trong wiki cho thấy kẻ tấn…
- 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…
- 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…
- 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…
- Stream processing Chủ đề Thành viên
Khi batch hằng ngày hay hằng giờ không còn đủ tươi (chi tiêu quảng cáo phải dừng đúng lúc chạm ngân sách, dashboard MRR không được trễ 24 giờ, alert phải bắn khi contest sắp đầy), hệ phải tính liên tục trên luồng sự…
- Batching và khấu hao round-trip Chủ đề Thành viên
Nhiều nút thắt không nằm ở việc mỗi thao tác tốn bao nhiêu công, mà ở chi phí cố định trả cho mỗi thao tác: một round-trip mạng, một lần fsync, một PUT lên object storage, một syscall, một transaction. Khi chi phí cố…
- 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:
- Chi phí hạ tầng và build vs buy Chủ đề Thành viên
Khi còn nhỏ, chi phí hạ tầng là chuyện phụ và cloud là lựa chọn hiển nhiên. Khi lớn lên, hoá đơn có thể chiếm phần lớn giá vốn. Hai câu hỏi xuất hiện: tối ưu chi phí trên nền đang có thế nào, và khi nào nên tự xây (hoặc…
- Đổi ngôn ngữ và runtime Chủ đề Thành viên
Ngôn ngữ ban đầu được chọn để làm nhanh. Khi lớn lên, nó có thể thành nút thắt về hiệu năng, latency, hoặc tổ chức code. Có ba hướng: tối ưu runtime đang dùng, cải tiến dần, hoặc viết lại có phạm vi.
- 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:
- Kiểm thử độ tin cậy (chaos, fault injection, mô phỏng tất định) Chủ đề Thành viên
Lỗi trong hệ phân tán là chắc chắn (máy chết, zone mất, dependency chậm, cấu hình sai), nhưng phần lớn lỗi nằm ở những tổ hợp hiếm mà test chức năng không chạm tới. Bài toán là chủ động gây lỗi để biết hệ thống phản ứng…
- Kiến trúc frontend Chủ đề Thành viên
Frontend bắt đầu là vài trang render ở server; lớn lên thành ứng dụng có trạng thái, nhiều team cùng sửa, và mỗi tính năng thêm vào là thêm byte phải tải. Ba trục lặp lại trong các nguồn: render ở đâu (server, client,…
- Nền tảng ML (feature, training, serving, giám sát model) Chủ đề Thành viên
Model ML đầu tiên của một công ty thường được nhúng thẳng vào một service có sẵn, với feature tính trong vài script và train bằng một job riêng. Khi số model và số người làm model tăng, bốn chỗ cùng hỏng:
- Hạ tầng nghiên cứu định lượng (dữ liệu thị trường, feature, backtest) Chủ đề Thành viên
Một quỹ định lượng hay công ty market making sống bằng vòng nghiên cứu: đặt giả thuyết → lấy dữ liệu → tạo feature → train model hay dựng tín hiệu → backtest/mô phỏng → đưa vào giao dịch thật → lặp lại. Theo Optiver, độ…
- Thử nghiệm A/B và nền tảng experimentation Chủ đề Thành viên
Khi nhiều team cùng thay đổi một sản phẩm, "ship rồi xem metric" không còn trả lời được thay đổi nào gây ra gì. Thí nghiệm có đối chứng trả lời được, nhưng ở quy mô lớn nó thành một hệ thống: gán người dùng vào biến thể…
- Airbnb Công ty Thành viên
Airbnb chuyển từ một ứng dụng Rails khổng lồ sang SOA, và lộ ra chi phí test: deep integration test cho mọi service không scale, nên họ chuyển sang tháp test + CD có canary analysis . Năm 2025 với ba trụ sản phẩm, data…
- Payment Transaction Management in Microservices Bài tóm tắt · Mercari · 2019
…n (kiểu TCC), để rollback không để lại lịch sử "bẩn". - Đối soát (reconciliation): batch đồng bộ gọi API tra cứu của service phía dưới bằng idempotency key; worker bất đồng bộ so d…
- How We Partitioned Airbnb's Main Database in Two Weeks Bài tóm tắt · Airbnb · 2015
…"Read Replica Promotion" của RDS). Không viết dòng code đối soát hay chép dữ liệu nào. - Chuẩn bị (tốn thời gian nhất, cần phối hợp nhiều team): tìm mọi query join chéo bằng query…
- Himeji: A Scalable Centralized System for Authorization at Airbnb Bài tóm tắt · Airbnb · 2021
…quyền nằm trong API đó, nên rất dễ quản lý. - Khi tách sang SOA (data service bọc DB, presentation service ghép dữ liệu từ nhiều data service), kiểm tra quyền ban đầu được dời lên…
- Introducing OxCaml Bài tóm tắt · Jane Street · 2025
…nằm trong bộ nhớ (unboxed), truy cập SIMD trực tiếp. - Kiểm soát cấp phát: giảm áp lực GC, làm hành vi chương trình thân thiện cache và tất định hơn. - Các tiện ích dùng hằng ngày…
- Mercari Công ty Thành viên
PaymentService của Merpay (2019) giữ nhất quán thanh toán qua nhiều service bằng cách tự làm ở tầng ứng dụng: chia pha + state machine, idempotency key bắt buộc, bù trừ kiểu TCC, đối soát và fault injection . Ba nă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…
- Automated Incident Management Through Slack Bài tóm tắt · Airbnb · 2022
…cả thao tác khắc phục từ kênh chat . Liên quan - (kiến trúc SOA của Airbnb) - · - ·…