Chuyển tới nội dung chính

Luồng dữ liệu

Vòng đời một lệnh tra cứu:

  1. Client gửi yêu cầuPOST api/v1/TextSearch_*/... (hoặc TextSearch_DESearchGeneral_ForAPI cho tích hợp bên thứ 3). API xác thực JWT.
  2. API lưu yêu cầu vào bảng TextSearch_* trong SQL Server.
  3. API đẩy job vào bảng hàng đợi TextSearch_SeleniumQueue / TextSearch_TakeScreenshot_Queue.
  4. API phát tín hiệu UDP tới worker 127.0.0.1:11000 ("Selenium Search", "Take screenshot", "Get More Info"…).
  5. Worker poll bảng hàng đợi, mở trình duyệt, điều hướng tới website nguồn, scrape dữ liệu + chụp màn hình / tải PDF.
  6. Worker ghi kết quả vào bảng TextSearch_Data_*.
  7. Trả kết quả về khách hàngWebhookHelper POST (RestSharp) tới APIUrl cấu hình trong bảng TextSearch_Webhooks.
  8. Client có thể đọc lại kết quả qua các endpoint SearchData_*.
Client ──POST──► API ──insert──► TextSearch_* (DB)

├──insert──► TextSearch_SeleniumQueue (DB)
└──UDP────► Worker :11000
│ poll queue
├──scrape──► Website nguồn
└──insert──► TextSearch_Data_* (DB)

└──webhook POST──► Hệ thống khách hàng

Lỗi/cảnh báo trong quá trình được gửi qua email queue và Google Chat (xem Vận hành › Logging).