技術問答
技術文章
iT 徵才
聊天室
2026 鐵人賽
登入/註冊
問答
文章
Tag
邦友
鐵人賽
搜尋
2024 iThome 鐵人賽
DAY
10
0
自我挑戰組
技術隨筆
系列 第
10
篇
資料同步的實作選擇
16th鐵人賽
sixwings
2024-09-24 23:57:28
296 瀏覽
分享至
當專案需要保存外部資料源而且需要確保外部資料源維持在最新狀態時,就會需要作資料同步的動作。以下簡介可以選擇的幾種作法(本篇屬筆記性質,供參)
輪詢 polling: 最常見的作法,一樣維持原本 request 取得資料的方式,最容易實作,但對於外部資料源的伺服器負擔比較大
伺服器推送 Server-Sent Events: 由 client 發起,但能夠達到伺服器推送資料效果的作法,比 websocket 的複雜度低,但是不支援雙向傳輸
WebSocket: 可以實現資料同步的需求,在資料變更時能夠主動告知 client
Webhooks: 高效的實作,但 client 需要支援 POST request, 而且有相對的安全議題需要注意
額外的優化項目
使用分頁參數: 降低資料傳輸量
使用 updated_at 過濾掉已同步過的資料內容
把「資料刪除」也視為一種異動,返回資料刪除的標記代表刪除
使用更動標記提示內容有改動的資料欄位
根據資料異動的頻率調整 polling 的週期
留言
追蹤
檢舉
上一篇
沒有 docker registry 要怎麼保存 image? - 低配版 docker image 管理方法
下一篇
安全性 UP - 避免 root 帳號打通關
系列文
技術隨筆
共
30
篇
目錄
RSS系列文
訂閱系列文
2
人訂閱
26
Laravel 11 升級指南 & 版本管理策略
27
透過 Protobuf 改善 JWT 傳輸性能是可行的嗎?
28
PHP 未來可能支援原生的事件迴圈嗎?
29
OAuth 在 2024 年的發展現況
30
古老但值得學習的技術 - Lisp
完整目錄
熱門推薦
{{ item.subject }}
{{ item.channelVendor }}
|
{{ item.webinarstarted }}
|
{{ formatDate(item.duration) }}
直播中
立即報名
尚未有邦友留言
立即登入留言
iThome鐵人賽
參賽組數
902
組
團體組數
37
組
累計文章數
19830
篇
完賽人數
528
人
看影片追技術
看更多
{{ item.subject }}
{{ item.channelVendor }}
|
{{ formatDate(item.duration) }}
直播中
熱門tag
15th鐵人賽
16th鐵人賽
13th鐵人賽
14th鐵人賽
17th鐵人賽
12th鐵人賽
11th鐵人賽
鐵人賽
2019鐵人賽
javascript
2018鐵人賽
python
2017鐵人賽
windows
php
c#
linux
windows server
css
react
熱門問題
請推薦 虛擬主機 VPS,及Apache SSL 設定
Macbook OpenVPN Connect在外面無法連線
VMware vSphere 的 ESXi 主機憑證(Host CA/SSL Certificate)更新
Workflow ERP 料/工/費 問題:多階產品成本結構分析表
openclaw+ollama啟動失敗
到這個階段要怎麼更上一層樓?
熱門回答
openclaw+ollama啟動失敗
Workflow ERP 料/工/費 問題:多階產品成本結構分析表
請推薦 虛擬主機 VPS,及Apache SSL 設定
熱門文章
中華電信近期發生問題,MSA可以收信不能發信
[SRE×AI #08] Claude Skills 實戰:把你的 SRE 經驗變成一句指令
這幾天好像用 Teams 傳圖,圖會看不見?
趣味SQL,在資料庫查詢功能樹狀圖用畫線方式來表示
為什麼你的 AI Agent 總是丟失記憶?我們是怎麼解決的
IT邦幫忙
×
標記使用者
輸入對方的帳號或暱稱
Loading
找不到結果。
標記
{{ result.label }}
{{ result.account }}