Tìm kiếm
25 kết quả cho “Java RPC”. Tìm không phân biệt dấu.
- Accelerating Search and Ingestion with High-Performance gRPC in OpenSearch Bài tóm tắt · Uber · 2026
…ài core (như k-NN) tự cung cấp chuyển đổi Proto → đối tượng Java và gắn dịch vụ gRPC riêng. - Ưu tiên API nhạy latency nhất: Search và Bulk. - Giữ REST và Protobuf đồng bộ bằng pip…
- A Brief History of Scaling LinkedIn Bài tóm tắt · LinkedIn · 2015
…ó profile tải khác hẳn Leo nên tách ra scale riêng, gọi qua Java RPC. Search (Lucene) là service thứ hai, nhận dữ liệu từ graph. - Replica đọc: DB profile bị Leo dồn tải. Đầu tiên…
- Service Level Testing for Microservices in Swiggy Bài tóm tắt · Swiggy · 2021
…est không còn một bước. - Thư viện Oh-My-Test-Helper (Go và Java) gom các mẫu lặp: khởi container Kafka một dòng rồi gắn bootstrap server vào cấu hình app, produce message để test…
- Avoiding Double Payments in a Distributed Payments System Bài tóm tắt · Airbnb · 2019
…sản phẩm. Thay đổi chính - Orpheus : thư viện idempotency (Java), không phải service. Gồm idempotency key, bảng thông tin idempotency luôn đọc/ghi trên master đã shard , gộp trans…
- Large-Scale Automated Dependency Analysis Across Uber's Service Mesh Bài tóm tắt · Uber · 2026
…iddleware trong yarpc (thư viện RPC của Uber cho Go, nay cả Java): middleware inbound gán một ID request (bộ đếm nguyên tử trong bộ nhớ) vào context ; ứng dụng truyền cùng context…
- Đổ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.
- 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.
- 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ả…
- 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,…
- Hạ tầng tìm kiếm Chủ đề Thành viên
Lúc đầu, tìm kiếm là LIKE trên database hoặc một thư viện (Lucene) nhúng trong app. Khi dữ liệu và tính năng tăng, search thành một hệ có trạng thái riêng, khác database ở mấy điểm:
- Tracing phân tán và log theo request Chủ đề
Khi một request đi qua hàng chục service, metric của từng service cho biết có chậm, log của từng service cho biết từng mảnh; không cái nào trả lời "request này chậm vì đâu" hay "trang này tốn bao nhiêu". Tracing phân…
- 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ể…
- 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…
- The exabyte club: LinkedIn's journey of scaling the Hadoop Distributed File System Bài tóm tắt · LinkedIn · 2021
…by trước, failover, rồi tới DataNode theo từng rack. - Tune Java: heap NameNode 380 GB cho 1,1 tỷ object; giữ tỉ lệ young:tenured khoảng 1:4. Khoá không công bằng cho khoá đọc-ghi…
- 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…
- 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…
- Inside the Go Playground Bài tóm tắt · Go · 2013
…trên App Engine (nhận HTTP, gọi backend, có cache), client JavaScript. - Chạy code không tin cậy phải cách ly khỏi hạ tầng Google: backend chạy chương trình trong Native Client (N…
- Slack's Migration to a Cellular Architecture Bài tóm tắt · Slack · 2023
…hận tín hiệu tránh AZ) bị loại: service viết bằng Hack, Go, Java, C++; nhiều kiểu service discovery (Envoy xDS, Consul, DNS, mà DNS không có khái niệm AZ); sửa Vitess thì phải fork…
- Attribute-Based Access Control at Uber Bài tóm tắt · Uber · 2023
…chọn CEL của Google thay vì tự viết; có bản Go (cel-go) và Java (cel-java), đánh giá vài micro giây, hỗ trợ lấy thuộc tính theo nhu cầu (chỉ fetch khi biểu thức cần). - Áp dụng (2…
- Load Testing Kubernetes: Building a Framework (Part 1) Bài tóm tắt · Achievers · 2023
…u đi và nhìn vào số nào. - Công cụ: chọn k6 (test viết bằng JavaScript, có gRPC nên gọi thẳng service chứ không chỉ qua gateway). - Phạm vi: chỉ backend; bỏ API bên thứ ba (nút thắ…
- An open-source spec for Codex orchestration: Symphony Bài tóm tắt · OpenAI · 2026
…t; Codex được nhờ implement spec bằng TypeScript, Go, Rust, Java, Python để tìm chỗ mơ hồ. Quy trình làm việc trước đây người làm theo mà không viết ra nay nằm trong WORKFLOW.md .…
- Kabootar — Swiggy's Communication Platform Bài tóm tắt · Swiggy · 2017
…e sống là scheduler còn sống, không tốn tài nguyên riêng. - Java 8 + Spring Boot (lớp swiggy-commons ), MySQL làm kho giao dịch, Elasticsearch cho báo cáo và truy vấn tuỳ ý; báo cá…
- New Tweets per second record, and how! Bài tóm tắt · Twitter · 2013
…s bằng Unicorn). Họ đã có kinh nghiệm JVM (search viết bằng Java; Streaming API và Flock viết bằng Scala). Sau khi viết lại: 10–20K request/giây/host . - Một mô hình lập trình thốn…
- Lessons Learned From Scaling Uber To 2000 Engineers, 1000 Services, And 8000 Git Repositories Bài tóm tắt · Uber · 2016
…đang chuyển sang Go); Maps và data engineering dùng Python, Java; hệ thống metric dùng Go. Thay đổi chính (các bài học "ước gì biết sớm") - Lý do có nhiều service là con người, khô…
- Cloud Native MySQL Sharding with Vitess and Kubernetes Bài tóm tắt · Vitess · 2015
…- Vitess 2.0 (alpha): API Kubernetes 1.0, client chính thức Java/Python/PHP/Go (gRPC), chạy trên MySQL 5.6 ngoài MariaDB, backup/restore tích hợp với blob store, reparent dựa trên…