Uber đã triển khai ServiceScale controller để cho phép nhiều orchestrator cùng quản lý việc scaling các workload trên Kubernetes một cách an toàn. Vấn đề kỹ thuật là multiple orchestrators có thể tạo ra scaling conflict khi cùng điều khiển cùng một deployment. Giải pháp của Uber tạo ra một API layer tách biệt giữa scaling intent (ý định scaling) và execution (thực thi), cho phép các orchestrator khác nhau gửi request scaling đến cùng một Deployment resource. Hệ quả là việc scaling trở nên đồng bộ hơn, giảm xung đột và tăng hiệu suất hệ thống. Uber chia sẻ chi tiết về cách họ sử dụng ServiceScale với Kubernetes API để đạt được mục tiêu này, cung cấp bài học quý giá về việc thiết kế API layer để quản lý trạng thái phức tạp trong môi trường containerized.
Vì sao nên đọc: Bài viết này giúp lập trình viên hiểu cách Uber giải quyết vấn đề đồng bộ mở rộng tài nguyên Kubernetes giữa nhiều orchestrator khác nhau.
Trả lời 3 câu hỏi ngắn để nhận điểm thưởng cho bài này. Chỉ làm khi bạn muốn lấy điểm.
3 câu hỏi · dưới một phút · không bắt buộc
Nguồn: https://www.infoq.com/news/2026/09/uber-kubernetes-scaling. 8 Sync News chỉ tóm tắt và dẫn link; bản quyền nội dung thuộc tác giả và nguồn gốc.
Đang tải bình luận…
Trong môi trường Kubernetes, một binary thiếu hụt đã gây ra vòng lặp khôi phục vô hạn cho liveness probe. Vấn đề kỹ thuật phát sinh khi liveness probe và readiness probe không được phân biệt rõ ràng, khiến pod bị khởi tạo lại liên tục thay vì cho phép background consumer xử lý hết hàng đợi. Hệ quả là ứng dụng gặp downtime do quá trình khởi tạo lại liên tục, gây lãng phí tài nguyên và không đạt được trạng thái stable. Bài viết nhấn mạnh tầm quan trọng của việc thiết kế riêng biệt giữa liveness probe (kiểm tra health) và readiness probe (kiểm tra sẵn sàng phục vụ), đặc biệt với các ứng dụng xử lý queue background.
Bài viết giải thích tại sao probe sống và probe sẵn sàng trong Kubernetes có vai trò khác nhau, giúp lập trình viên tránh vòng lặp khởi tạo lại do thiếu binary xử lý hàng đợi nền.
Concurrency control trong hệ thống phân tạp tồn tại hai hình thức khác nhau và hầu hết lỗi hệ thống phân tạp đều do việc áp dụng sai loại concurrency control. Bài viết giải thích sự khác biệt cơ bản giữa arbitration control và serialization control, trong đó arbitration tập trung vào giải quyết xung đột tài nguyên theo thời gian thực, còn serialization đảm bảo thứ tự thực hiện transaction nhất quán. Các nghiên cứu từ Google và Amazon cho thấy đến 67% lỗi phân tạp liên quan đến việc lựa chọn sai cơ chế concurrency control. Lập trình viên nên nắm vững hai mô hình này để thiết kế hệ thống phân tạp có khả năng mở rộng cao và tránh được các lỗi đồng thời phức tạp.
Bài viết giúp lập trình viên hiểu sự khác biệt giữa arbitration và serialization để tránh lỗi phân tán trong hệ thống.
Google vừa open-source AX, một orchestrator theo phong cách Kubernetes để quản lý workloads cho autonomous AI agents. AX hoạt động trên runtime là Agent Substrate, coi agents như stateful actors. Nó tối ưu hóa hiệu suất tài nguyên, sử dụng kỹ thuật batching để giảm overhead từ 90% xuống chỉ còn 10% khi gọi API. Hệ thống này cho phép developers tạo agents có thể tự điều chỉnh và tái sử dụng code giữa nhiều agent instances. Điều đáng học là cách Google áp dụng kiến trúc distributed systems vào domain AI, cho thấy hướng đi mới cho AI orchestration.
Google AX giúp lập trình viên quản lý tác vụ tự động cho AI agent với hiệu suất tối ưu nhờ kiến trúc Kubernetes-style.
Bài viết chỉ ra hiện tượng coi số lượng dịch vụ microservices như dấu hiệu của kinh nghiệm cao trong ngành phần mềm. Tac giả lấy ví dụ về một dự án có tới 37 dịch vụ độc lập, mỗi dịch vụ được triển khai trong container và kết nối qua API REST/gRPC. Nguyên nhân kỹ thuật là xu hướng tách hệ thống quá sớm mà không xác định rõ ranh giới nghiệp vụ, dẫn đến sự dư thừa trong quản lý cấu hình, giám sát và truy vết lỗi. Hệ quả là tăngภาระ vận hành, độ trễ giao tiếp giữa dịch vụ và khó duy trì tính nhất quán dữ liệu, khiến đội ngũ tiêu tốn nhiều thời gian cho DevOps thay vì phát triển tính năng. Bài học là trước khi quyết định chuyển sang microservices, cần đánh giá độ phức tạp miền vấn đề, cân nhắc sử dụng monolith mô-đun hoặc các dịch vụ có kích thước vừa phải, và chỉ mở rộng khi có bằng chứng thực tế về nhu cầu mở rộng và đội ngũ có khả năng vận hành.
Bài viết này giúp lập trình viên hiểu rằng kiến trúc microservices không phải là thước đo trình độ kỹ năng hay kinh nghiệm senior thực sự.
So sánh chi tiết giữa monolithic và microservices vượt qua lý thuyết, bàn về sự phức tạp trong deployment, sự ảnh hưởng của Conway's Law đến ownership team, khó khăn trong debugging và observability, cũng như thách thức về data consistency, performance và scaling. Bài viết chỉ ra monolithic thực sự phù hợp trong những trường hợp nào, khi nào microservices mang lại hiệu quả, và giới thiệu khái niệm "modular monolith" như giải pháp trung gian. Các lỗi phổ biến như resume-driven development hay distributed monoliths được liệt kê kèm framework thực tế để ra quyết định dựa trên team, domain, delivery, operations và scale. Thông điệp chính là chọn architecture dựa trên vấn đề thực tế chứ không phải sự phức tạp giả định.
Bài viết này giúp lập trình viên hiểu rõ sự cân thực giữa kiến trúc microservices và monolithic, tránh những sai lầm phổ biến và đưa ra quyết định kiến trúc phù hợp dựa trên nhu cầu thực tế.
Portainer đã cắt đứt mối liên kết giữa bản miễn phí CE và bản trả phí. Phiên bản CE 2.x hiện đã bị đóng băng, không có cập nhật mới. Tất cả sự phát triển hiện tại đang tập trung vào phiên bản Kubernetes-first, đóng nguồn. Điều này có nghĩa người dùng CE sẽ không nhận được các tính năng mới như dashboard management cho Kubernetes hay container Insights. Nếu bạn đang sử dụng Portainer cho production environment, việc chuyển sang bản trả phí có thể cần thiết để tiếp cận các công nghệ mới nhất.
Lập trình viên nên đọc bài này để hiểu rõ sự thay đổi trong chính sách phát triển của Portainer và tác động đến việc lựa chọn công cụ quản lý container trong tương lai.
SingleStore giới thiệu Query Tuning Agent giúp tự động tối ưu hóa hiệu suất truy vấn. Công cụ này phân tích debug profiles và đưa ra đề xuất chuyên sâu cho các distributed workloads phức tạp. Nguyên nhân kỹ thuật là việc tối ưu hóa thủ công truy vấn phức tạp trong database phân tán đòi hỏi kiến thức chuyên môn cao và nhiều thời gian. Hệ quả là Query Tuning Agent giúp giảm đáng kể thời gian xử lý và cải thiện hiệu suất hệ thống. Điểm đáng học là cách kết hợp auto-tuning với phân tích profile để mang lại giải pháp tối ưu mà không cần can thiệp trực tiếp vào code.
Trình điều truy vấn của SingleStore tự động tối ưu hóa hiệu suất và cung cấp khuyến nghị chuyên gia cho các tải trọng phân phức tạp.
American Express sử dụng kiến trúc cell-based để xử lý giao dịch thanh toán quy mô lớn. Kiến trúc này chia hệ thống thành các cell độc lập, mỗi cell chứa đầy đủ các dịch vụ cần thiết để xử lý một giao dịch. Khi một cell gặp sự cố, các cell khác vẫn có thể tiếp tục hoạt động, đảm bảo hệ thống không bị sập hoàn toàn. Mô hình này giúp American Express đạt độ sẵn sàng cao, với thời gian downtime chỉ vài giây mỗi năm và xử lý hàng triệu giao dịch mỗi ngày. Các lập trình viên học được cách thiết kế hệ thống phân tán có khả năng chịu lỗi bằng cách cô lập sự cố trong một phạm vi nhỏ.
Bài viết này giúp lập trình viên hiểu cách xây dựng hệ thống xử lý giao dịch đáng tin cậy ngay cả khi gặp sự cố.
Đọc tin ở đây, luyện code, học theo lộ trình và luyện IELTS trên các sản phẩm anh em — tất cả kết nối với nhau trong hệ sinh thái 8 Sync.
Cổng chính của hệ sinh thái: giới thiệu sản phẩm, blog và bảng giá trọn bộ.
Khám pháHọc theo lộ trình rõ từng chặng: video, quiz chấm tự động, certificate và mentor đang làm nghề.
Xem lộ trình1.000+ bài DSA, đề tiếng Việt, chấm tự động 7 ngôn ngữ — nhiều bài FREE, chạy ngay trên trình duyệt.
Luyện miễn phíChấm bốn kỹ năng IELTS bằng AI, phản hồi chi tiết theo rubric.
Dùng thử miễn phíAI IDE 22 MB cho dev Việt.
Tải miễn phíBộ nhớ tổ chức cho AI agent.
Khám pháAI trực Fanpage, tự sàng lọc lead.
Dùng thử