Quản Lý Yêu Cầu Và Phân Tích Hiệu Năng Giữa Các Dịch Vụ Trong Skynet
Trong skynet, mỗi dịch vụ đều hoạt động độc lập trên máy ảo Lua riêng. Dù việc trao đổi yêu cầu giữa các dịch vụ diễn ra thuận lợi, nhưng khi logic nghiệp vụ trở nên phức tạp, việc theo dõi chuỗi xử lý sẽ gặp nhiều khó khăn.
Gần đây tôi đã bổ sung một lệnh mới skynet.trace()
cho hệ thống. Lệnh này cho phép kích hoạt cơ chế theo dõi và thống kê chi tiết luồng xử lý hiện hành. Ví dụ: Trong ví dụ điển hình về “agent” (dịch vụ đại diện), khi mỗi yêu cầu từ client được xử lý, ta chỉ cần gọi skynet.trace()
một lần duy nhất, hệ thống sẽ ghi nhận nhật ký chi tiết như sau: