Tesseres · Tích hợp, quy trình & AI agent

Tích hợp, quy trình và AI agent, đang chạy.

Tích hợp hệ thống, quy trình nghiệp vụ và AI agent trên cùng một engine, theo thời gian thực hoặc gần thời gian thực. Bạn đang xem một lượt chạy: bắt đầu ở trigger, lặp qua từng phần việc, rẽ nhánh theo điều kiện, rồi dừng chờ người duyệt. Có người duyệt thì lượt chạy mới đi tiếp sang các hệ thống ở phía bên kia.

Ba việc, một engine

Quy trình, tích hợp và AI agent thực chất là cùng một cấu trúc

Phần quy trình

Trigger bắt đầu lượt chạy. Vòng lặp chạy lại phần việc bên trong. Nhánh rẽ chọn đường này hoặc đường kia. Một người phê duyệt. Lượt chạy kết thúc ở một điểm rõ ràng.

Phần tích hợp

Broker mang message đi. Transformer định dạng lại message. Router theo nội dung chọn đích đến. Request lỗi rơi vào dead-letter queue và có thể chạy lại.

Phần AI agent

Agent đọc, quyết định và gọi công cụ ngay trong lượt chạy đó. Từng bước đều được lưu lại, lời gọi ra ngoài đi qua cùng một outbox, và thay đổi nào nó muốn làm cũng phải dừng ở cùng một cổng phê duyệt.

Các công cụ thường bắt bạn chọn một, rồi chắp những phần còn lại vào sau. Vẽ cả ba vào cùng một sơ đồ thì thấy ngay chúng là cùng một cỗ máy. Vì vậy chúng tôi để bạn xem nó chạy, thay vì đọc mô tả.

Mười một trụ cột chất lượng

Đủ cả mười một, không chọn vài cái dễ

Độ tin cậy

Message đã nhận thì hoặc tới đích, hoặc được giữ lại để xem xét. Không có gì mất đi lặng lẽ.

Bảo mật

Ai gọi cũng phải đăng nhập, mỗi công ty tách biệt hẳn, thay đổi nào cũng được ghi lại.

Khả năng mở rộng

Việc nhiều hơn thì thêm worker, không phải viết lại quy trình.

Dễ bảo trì

Quy trình nhỏ, dễ đọc, người sau sửa được mà không sợ hỏng.

Tính sẵn sàng

Không có chỗ nào hỏng một nơi mà cả hệ thống phải dừng theo.

Khả năng phục hồi

Lỗi có đường đi riêng: retry, dead-letter queue, chạy lại.

Dễ hỗ trợ

Lượt chạy nào cũng tìm được, giải thích được và sửa được ngay trên một màn hình quản trị.

Khả năng quan sát

Biết từng message đang ở đâu, và vì sao.

Vận hành tối ưu

Việc lặp đi lặp lại để máy làm, con người dành thời gian cho việc cần cân nhắc.

Dễ kiểm thử

Thay đổi nào cũng chạy thử ở công ty thử nghiệm trước khi chạm tới công ty thật.

Hiệu năng

Luồng thời gian thực luôn nhanh, việc nặng không bao giờ chặn đường nó.

Mọi phần của Tesseres đều được thiết kế, xây dựng và rà soát theo cùng mười một trụ cột này. Phần lớn công cụ chỉ mạnh ở vài trụ cột và đánh đổi phần còn lại. Chúng tôi không muốn bạn phải chọn.

Bản demo

Một lượt chạy, từ đầu đến cuối

Đây không phải sơ đồ vẽ một luồng, mà là một luồng đang chạy. Message đi trên các đường nối, vòng lặp chạy lại phần việc, nhánh rẽ chọn đường. Mọi thứ dừng ở cổng cho tới khi có người cho qua.

Sơ đồ động của một lượt chạy: trigger khởi động lượt chạy, vòng lặp làm lại một phần, nhánh rẽ tách đường đi làm hai, message xếp hàng ở cổng phê duyệt của con người và chỉ đi tiếp khi có người duyệt.

Lượt chạy, theo thứ tự:

  1. Một lượt chạy bắt đầu ở trigger: theo lịch, theo một webhook gọi vào, theo một sự kiện, hoặc do một người tự chạy.
  2. Trigger đẩy công việc sang broker.
  3. Một quy trình bền nhận việc từ broker và giữ trạng thái suốt thời gian công việc kéo dài.
  4. Bước lặp chạy qua lô việc, mỗi lần một mục.
  5. Mỗi mục đi qua transformer để đổi định dạng, rồi quay về bước lặp cho mục kế tiếp.
  6. Xong lô việc, lượt chạy đi tới nhánh rẽ: nhánh rẽ xét một điều kiện rồi chọn một trong hai đường.
  7. Đường "không" nghĩa là không có gì phải gửi đi. Lượt chạy kết thúc ngay tại đó, ở bước hoàn tất.
  8. Đường "có" đi tiếp tới router theo nội dung, và router chọn nhánh cho message.
  9. Cả hai nhánh đều dừng ở cổng phê duyệt của con người. Message xếp hàng tại đó. Chưa có người duyệt thì không có gì ra tới hệ thống bên ngoài.
  10. Message đã duyệt đi tiếp tới các connector, rồi connector gọi sang hệ thống bên ngoài.
  11. Request lỗi chuyển sang dead-letter queue và có thể chạy lại qua broker.

Quy mô: Một quy trình chia cho nhiều worker chạy song song: message toả ra, chạy cùng lúc, rồi gộp lại.

Đổi góc nhìn để xem đúng lượt chạy đó trải trên nhiều worker song song, chạy trên các hạ tầng truyền tin thay thế được cho nhau, hoặc triển khai ở một nơi khác hẳn.

Thời gian thực và gần thời gian thực

Luồng trực tiếp và việc xếp hàng, trên cùng một tuyến

Có việc không thể chờ: giá bán, tồn kho, một cuộc gọi đang được chép lời. Có việc không cần vội: lô xử lý ban đêm, một hoá đơn đang chờ duyệt. Tesseres chạy được cả hai trên cùng một engine.

Thời gian thực

Stream cho việc phải tới ngay, gửi đi đúng lúc nó xảy ra.

Gần thời gian thực

Hàng đợi bền vững cho việc nhất định phải tới, đúng thứ tự, kể cả sau khi khởi động lại.

Router động

Đích đến của từng message được chọn ngay lúc chạy, dựa vào nơi bên nhận đang đặt và tình trạng của nó. Nơi nào gặp sự cố thì luồng tự chuyển đi, không cần triển khai lại quy trình.

Con người giữ quyền quyết định

Chỗ dừng lại mới là sản phẩm

Mọi thay đổi chạm tới thế giới bên ngoài đều dừng lại và xếp hàng ở cổng phê duyệt. Đây không phải tuỳ chọn, cũng không phải chế độ. Cổng chỉ mở khi có một người quyết định cho qua, và bạn có thể tự làm việc đó ngay trên canvas.

Khi có sự cố

Lỗi cũng là một nhánh, không phải ngoại lệ

Request lỗi không biến mất, cũng không âm thầm retry mãi. Nó rơi vào dead-letter queue để bạn xem lại rồi cho chạy lại qua broker, đúng con đường lẽ ra nó đã đi lần đầu.

Ba góc nhìn

Cùng một lượt chạy, ở một nơi khác

Quy mô

Một quy trình chia cho nhiều worker chạy song song: message toả ra, chạy cùng lúc, rồi gộp lại.

Không lệ thuộc

Cùng một luồng chạy trên các lớp truyền tin thay cho nhau được. Đổi lớp bên dưới thì phần bên trên vẫn nguyên.

Nơi đặt

Cùng một quy trình, triển khai trong trung tâm dữ liệu, trên hạ tầng của bạn, hay trên một chiếc laptop. Chỉ khác nhau ở đường biên.

Tiếp theo

Trò chuyện với chúng tôi

Chi tiết sâu hơn nên để trong một cuộc trao đổi riêng, không phải trên trang công khai. Nếu bạn cũng đang gặp bài toán như vậy, chúng tôi luôn đọc tin nhắn gửi tới.