Tác giả: Sai Kotagiri
Ngày đăng: Ngày 02 tháng 5 năm 2025
Danh mục: Amazon Elastic Kubernetes Service, APN Launches, AWS Partner Network, Partner solutions, Technical How-to
Bởi Sai Kotagiri, Senior Partner Solutions Architect, AWS, Neil Dahlke, Staff Solutions Architect, Temporal
Các doanh nghiệp kỹ thuật số quy mô lớn, với các hệ thống phân tán, xử lý hàng nghìn giao dịch mỗi phút trong các giai đoạn bán hàng cao điểm. Những tổ chức này cần các hệ thống duy trì hồ sơ chính xác và đảm bảo hoàn tất giao dịch thành công, ngay cả khi gặp các thách thức về hạ tầng. Điều này không chỉ là giả định – các nền tảng thương mại điện tử (E-commerce), dịch vụ phát trực tuyến (streaming) và ứng dụng gọi xe yêu cầu 99.99% uptime, xử lý hàng chục nghìn giao dịch mỗi phút và yêu cầu thời gian phản hồi dưới 1 giây. Các hệ thống này phải tiếp tục hoạt động trơn tru ngay cả khi gặp sự cố mạng (network failures), hỏng máy chủ (server failure), hết thời gian chờ mạng (networks timeouts), sập cơ sở dữ liệu (database crashes), hết thời gian chờ dịch vụ (service timeouts) hoặc các gián đoạn hạ tầng khác. Durable Execution (Thực thi bền bỉ), một phương pháp quản lý kiến trúc phân tán, đảm bảo rằng mọi giao dịch – từ xử lý thanh toán đến hoàn tất đơn hàng – đều được thực hiện thành công, ngay cả khi một phần hệ thống tạm thời bị lỗi.
Trong bài viết này, chúng tôi sẽ xem xét các thách thức của hệ thống phân tán và minh họa cách giải pháp của Temporal, trên AWS, cho phép Durable Execution trên toàn tổ chức. Bạn sẽ tìm hiểu cách giải pháp của Temporal hỗ trợ các ứng dụng có khả năng phục hồi (resilient), đảm bảo tính nhất quán (consistency) và tự động phục hồi trong quá trình hệ thống gặp sự cố. Chúng tôi sẽ kết thúc với các tài nguyên giúp bạn bắt đầu sử dụng Temporal trên AWS.
Độ tin cậy của Hệ thống Phân tán: Thách thức Cấp Doanh nghiệp
Hãy cùng xem xét một kịch bản giả định, nơi một công ty thương mại điện tử lớn gặp sự cố kỹ thuật trong đợt bán hàng cao điểm dịp lễ. Sự cố, như minh họa trong hình dưới đây, xuất phát từ vấn đề phần cứng trong một cụm cơ sở dữ liệu (database cluster), tạm thời ảnh hưởng đến nhiều khía cạnh của quy trình xử lý đơn hàng như kiểm tra gian lận, thanh toán, chuẩn bị và vận chuyển đơn hàng. Tình hình trở nên trầm trọng hơn khi các vấn đề về mạng, hết thời gian chờ API (API timeouts) và tràn hàng đợi (queue overflows) xuất hiện, dẫn đến sự sai lệch trong theo dõi tồn kho. Khách hàng trải nghiệm chất lượng dịch vụ bị suy giảm (degraded), biểu hiện qua thời gian tải trang kéo dài và hoàn tất giao dịch thất bại (transaction completion failures).

Kiến trúc ứng dụng phải tích hợp khả năng chịu lỗi (fault tolerance) và khả năng phục hồi (resilience), dự đoán trước các lỗi thành phần ở mọi cấp độ.
Sự cố ngừng hoạt động này buộc các doanh nghiệp phải giải quyết những câu hỏi sau:
- Làm thế nào để các nền tảng thương mại điện tử đạt được khả năng chịu lỗi?
- Làm thế nào chúng ta có thể xây dựng các ứng dụng có khả năng phục hồi (resilient), ngăn chặn lỗi lan truyền (cascading failures) qua các ranh giới hệ thống?
- Làm thế nào các ứng dụng có thể phục hồi khi sự cố được giải quyết?
- Làm thế nào các công ty có thể đảm bảo tính bền bỉ của trạng thái ứng dụng (application state persistence) trong khi xảy ra sự cố?
- Làm thế nào chúng ta có thể xác định chính xác điều gì đã xảy ra và khi nào?
Hiểu về Temporal: Giải pháp Durable Execution
Durable Execution là một khả năng đảm bảo hoàn tất giao dịch trong các hệ thống phân tán mặc dù có sự gián đoạn. Bằng cách theo dõi trạng thái của từng bước, hệ thống có thể tiếp tục hoạt động từ đúng điểm xảy ra lỗi. Ví dụ, nếu hệ thống gặp sự cố giữa lúc phê duyệt thanh toán và tạo nhãn vận chuyển, hệ thống sẽ không thực hiện thanh toán trùng lặp (duplicate the payment) mà thay vào đó sẽ tiếp tục với việc tạo nhãn. Phương pháp này ngăn chặn việc trùng lặp giao dịch (transaction duplicates), bảo toàn tính toàn vẹn của đơn hàng (order integrity) trong thời gian ngừng hoạt động. Cách tiếp cận này ngăn ngừa giao dịch trùng lặp, bảo toàn tính toàn vẹn của đơn hàng trong các sự cố, đồng thời duy trì niềm tin của khách hàng thông qua quy trình xử lý đáng tin cậy.
Temporal là một nền tảng điều phối (orchestration) microservices mã nguồn mở, cung cấp Durable Execution thông qua các SDKs, cho phép các ứng dụng duy trì trạng thái qua các sự cố và quy trình phân tán. Nó đảm bảo việc thực thi các quy trình được tổ chức và đáng tin cậy, phối hợp tất cả các bước và tiếp tục chính xác từ điểm dừng sau bất kỳ sự gián đoạn nào.
Quy trình Phát triển
Trong một kịch bản (scenario) như xử lý đơn hàng:
- Xác định một Workflow (ví dụ: Process Order) để điều phối luồng thực thi của ứng dụng.
- Xác định các Activitie (e.g., Check Fraud, Prepare Shipment) trong Workflow cho logic nghiệp vụ cụ thể, với các chính sách thử lại tùy chỉnh khi cần.
- Xác định và cấu hình Workers để giao tiếp với Temporal Server thông qua task queues.
- Thiết lập Temporal Service để điều phối việc thực thi. Các tùy chọn bao gồm sử dụng tự lưu trữ (self-hosting) trên AWS hoặc Temporal Cloud

Hình 2: Workflow xử lý đơn hàng và các Activity (tác vụ) của nó được triển khai bằng Temporal SDK, trong khi Temporal Service quản lý việc thực thi và trạng thái của nó.
Cách Thức Hoạt Động
- Temporal Client khởi chạy các workflow được định nghĩa trong ứng dụng của bạn và giao tiếp với Temporal Server để quản lý việc thực thi chúng.
- Temporal Server quản lý trạng thái của các Workflow và điều phối việc thực thi chúng.
- Workers thực thi cả logic Workflow (workflow logic) và các Activity bằng cách lấy các tác vụ từ task queues do Temporal Server quản lý.

Hình 3: Kiến trúc Temporal hiển thị quá trình thực thi Workflow thông qua Workers được xác thực qua mTLS, kết nối với Temporal Server tự lưu trữ (self-hosted) hoặc dịch vụ Temporal Cloud.
Điều phối Workflow: Lợi thế của Temporal
Temporal điều phối các Workflow thông qua kiến trúc hướng sự kiện (event-driven architecture), đảm bảo việc thực thi và phục hồi đáng tin cậy. Ở cốt lõi, hệ thống duy trì một lịch sử sự kiện (event history) chi tiết ghi lại mọi hành động của Workflow, thực thi tác vụ và kết quả như các sự kiện bất biến (immutable events), tạo ra một dấu vết kiểm toán (audit trail). Hệ thống ghi lại trạng thái workflow ở mỗi bước giao dịch, lưu trữ dữ liệu thực thi, biến và kết quả quyết định trong một cơ sở dữ liệu bền bỉ (persistent database).
Khi xảy ra sự cố, Temporal thực hiện một quy trình phục hồi có hệ thống. Trước tiên, nó phát hiện sự cố và đánh giá trạng thái hiện tại. Sau đó, nó xem lại lịch sử sự kiện và tiếp tục thực thi từ trạng thái hợp lệ cuối cùng. Hệ thống bao gồm các cơ chế thử lại (retry mechanisms) tự động để đảm bảo độ tin cậy. Nền tảng này đảm bảo ngữ nghĩa thực thi đúng một lần (exactly-once execution semantics) cho các hoạt động. Nền tảng này (It) duy trì quản lý trạng thái nhất quán (consistent state management) trong toàn bộ quá trình phục hồi. Cách điều phối này đảm bảo rằng các workflow vẫn bền vững (durable) và cuối cùng sẽ hoàn tất, bất kể sự cố hạ tầng, vấn đề mạng hay sập hệ thống (system crashes).
Bằng cách kết hợp theo dõi lịch sử sự kiện (event history tracking) với tính bền bỉ của trạng thái (state persistence), Temporal tạo ra một hệ thống có khả năng phục hồi (resilient), có khả năng tiếp tục hoạt động đáng tin cậy từ bất kỳ điểm xảy ra sự cố nào. Những tính năng này làm cho Temporal trở nên lý tưởng cho các quy trình kinh doanh quan trọng.

Hình 4: Temporal lưu trữ bền bỉ (persists) toàn bộ trạng thái của một Workflow, bao gồm các biến cục bộ và vị trí thực thi. Điều này cho phép quy trình công việc được tiếp tục từ bất kỳ điểm nào sau khi xảy ra lỗi hoặc khởi động lại hệ thống.
Tối ưu Hiệu quả với Các Worker Container hóa của Temporal
Các hệ thống xử lý đơn hàng hiện đại phải thích ứng với nhu cầu biến động, đặc biệt trong các mùa cao điểm như bán hàng dịp lễ. Đây là lúc containerization trở nên vô giá trong việc quản lý các Temporal Workers một cách hiệu quả. Bằng cách tận dụng các dịch vụ container của AWS như Amazon Elastic Kubernetes Service (Amazon EKS) hoặc Amazon Elastic Container Service (Amazon ECS), các doanh nghiệp có thể tự động mở rộng khả năng xử lý đơn hàng để phù hợp với nhu cầu theo thời gian thực.
Ví dụ, khi khối lượng đơn hàng tăng đột biến, các Worker xử lý thanh toán (payment processing Workers) và Worker tạo nhãn vận chuyển (shipping label generation Workers) có thể mở rộng để xử lý nhiều giao dịch đồng thời hơn, trong khi các Worker kiểm tra tồn kho (inventory check Workers) phân phối trên nhiều container để duy trì thời gian phản hồi nhanh. Cách tiếp cận container hóa (containerized) này có nghĩa là mỗi thành phần trong Workflow xử lý đơn hàng – từ xác thực thanh toán đến vận chuyển – có thể tăng hoặc giảm quy mô tài nguyên độc lập, tối ưu cả hiệu suất lẫn chi phí. Hệ thống đảm bảo tốc độ xử lý đồng đều, có thể mở rộng từ hoạt động cơ bản đến khối lượng cao điểm mùa lễ mà không bị giảm hiệu suất.

Hình 5: Các Temporal Worker, chạy dưới dạng pod bên trong cụm EKS (hoặc cụm Amazon EKS), có thể dễ dàng mở rộng quy mô và cung cấp phản hồi nhanh hơn. Để biết thêm chi tiết về việc triển khai, vui lòng tham khảo bài viết Quick launch Temporal workers on EKS
AWS và Temporal: Cung cấp sức mạnh cho các Ứng dụng Phân tán Có khả năng Mở rộng (Scalable) và phục hồi (resilient)
AWS và Temporal mang đến một sự kết hợp mạnh mẽ để xây dựng các ứng dụng phân tán có khả năng phục hồi (resilient) ở quy mô lớn. Sự tích hợp này tận dụng các dịch vụ chủ chốt của AWS để nâng cao bảo mật và vận hành xuất sắc (operational excellence). AWS Certificate Manager quản lý chứng chỉ mTLS, trong khi AWS PrivateLink cho phép kết nối riêng tư và bảo mật giữa Amazon Virtual Private Cloud (VPC) của khách hàng và Temporal Cloud. Việc ghi log kiểm toán (audit logging) thời gian thực được tối ưu hóa thông qua tích hợp với Amazon Kinesis, cung cấp tầm nhìn vận hành toàn diện.
Khách hàng có thể triển khai các ứng dụng dựa trên Temporal sử dụng các dịch vụ hạ tầng toàn diện của AWS – chạy các Worker trên Amazon Elastic Compute Cloud (Amazon EC2) hoặc trong môi trường container hóa (containerized environments) với Amazon ECS hoặc Amazon EKS để đạt khả năng mở rộng (scalability) tối ưu và sử dụng tài nguyên.
Sự hợp tác này đã mang lại những kết quả biến đổi cho các doanh nghiệp. Như một quản lý kỹ thuật tại một công ty dịch vụ tài chính lớn nhận xét: “Hiện tại, một nhóm gồm 3 lập trình viên kinh nghiệm cần khoảng 20 tuần để xây dựng một tính năng mới trong hệ thống cũ của chúng tôi, nhưng chỉ mất 2 tuần khi sử dụng Temporal. Điều này tương đương với một nhóm 8 lập trình viên (sử dụng Temporal) có năng suất tương đương một nhóm 80 lập trình viên.”
Các khả năng durable execution của Temporal Cloud, kết hợp với hạ tầng toàn cầu của AWS (AWS’s global infrastructure) và các dịch vụ được quản lý (managed services) của AWS, tạo ra một nền tảng vững chắc cho các ứng dụng tối quan trọng (mission-critical). Sự tích hợp này cho phép các tổ chức xây dựng các hệ thống phân tán chịu lỗi với độ phức tạp giảm, đồng thời tận dụng quy mô, bảo mật và độ tin cậy của AWS – giúp các nhóm tập trung vào business logic thay vì các thách thức hạ tầng.
Kết luận
AWS cung cấp hạ tầng. Temporal bổ sung các khả năng Durable Execution. Kết hợp lại, chúng cho phép các tổ chức xây dựng các hệ thống phân tán có khả năng phục hồi (resilient). Những hệ thống này duy trì tính nhất quán và độ tin cậy ngay cả khi xảy ra sự cố. Từ các giải pháp e-commerce và thanh toán đến các ứng dụng logistics, sự hợp tác này cung cấp cho các nhà phát triển các công cụ để tạo ra các hệ thống chịu lỗi, có khả năng mở rộng, đồng thời cải thiện trải nghiệm phát triển và giảm độ phức tạp.
Để bắt đầu, hãy tham khảo Temporal platform trên AWS Marketplace và nâng cao hiểu biết của bạn thông qua các tutorials and demos.

Temporal Technologies – Đối tác tiêu biểu của AWS
Temporal, một AWS Advanced Technology Partner, cung cấp một giải pháp điều phối Workflow (workflow orchestration) mạnh mẽ. Nền tảng này mang lại giá trị gia tăng cho khách hàng thông qua khung sườn thực thi bền bỉ (durable execution framework), đảm bảo tính nhất quán và tự động phục hồi khi xảy ra sự cố hệ thống.
Contact Temporal | Partner Overview | AWS Marketplace | Temporal Documentation
TAGS: APN Programs, AWS Marketplace, AWS Solution Provider Partners