自動化數據推送
收到問卷回復後,系統可以將 JSON 數據發送到指定的 URL。
自動化數據推送設置
1. 訪問 "設置" 頁面。有兩種訪問方式:
- 編輯問卷後點擊 保存 和 設置

- 在 "我的問卷" 頁面點擊 設置主頁 和 設置

2. 數據推送有兩種方法:
- 單個問卷: 打開 自動化數據推送 並輸入同步 URL,配置後,此問卷的回復數據將以 JSON 格式發送到此 URL。

- 所有問卷: 點擊 全局數據推送 並激活此功能。然後,輸入同步 URL。配置後,所有回復數據將以 JSON 格式發送到此 URL。

3. 默認情況下,僅同步有效回復。如果需要,可以禁用此功能。
4. 默認設置不會在失敗時重試。啟用此選項後,如果在 8 秒內未收到響應,將重試發送數據,將此次嘗試視為失敗。

5. 您可以訪問同步日誌以監控數據推送活動。
回復數據格式
為確保推送的速度和成功率,絕大多數題型只會推送與問題和選項對應的數字,不會推送問題和選項的文本內容。以下是數據格式的詳細說明:
- t1 表示顯示的問題編號,而 q1 表示內部系統問題編號。 注意:如果問題的位置發生變化,t1 可能與 q1 不匹配。
- t1_q1_1 對於多項填空和矩陣題型,指的是第一個輸入字段。
- t1_q1_1_2 對於表格題型,表示第一行和第二列。
- 對於封閉式題型,如單選題、多選題、評分選擇等,t1_q1":"1" 中的 "1" 表示所選選項的序列。
- 對於開放式題型,答案完全按照受訪者輸入的內容顯示。
- 某些題型,如多級下拉、固定總和、滑塊、矩陣滑塊等,提供所選選項的內容。
- 對於聯合分析,顯示概念的所有屬性。如果受訪者選擇了該概念,將顯示 'Yes';否則,將顯示 'No'。
架構建議:數據接收與業務處理分離
問題描述
當前架構將數據接收與業務處理耦合在一起,這會導致以下問題:
- 當業務處理失敗時,會返回失敗響應,這會觸發重試機制。
- 重試的數據也會失敗,形成重試循環。
建議的解決方案
採用接收和處理分離的架構:
1. 數據接收層
- 收到數據後,立即將其存儲在臨時數據池中。
- 成功存儲後立即返回成功響應。
2. 業務處理層
- 異步從臨時數據池中檢索數據進行處理。
- 處理失敗不會影響接收層的成功響應。
解決方案優勢
- 避免通道阻塞: 接收後立即返回成功,防止因業務處理失敗導致的通道阻塞。
- 提高容錯性: 業務處理失敗不會影響數據接收,允許獨立的重試機制。
- 增強性能: 接收層快速響應,而業務處理可以異步並發執行。
- 便於維護: 職責清晰分離,能夠更精確地識別問題。
重要提示
- 確保臨時數據池有足夠的容量。
- 建立數據清理機制,防止數據積累。
- 監控數據池狀態和處理成功率。
- 確保數據處理操作的冪等性。
總結
通過將數據接收與業務處理分離,系統可以有效解決因業務處理失敗導致的數據通道阻塞問題,從而提高整體系統穩定性。