我正在开发一个实时 JavaScript 应用程序,该应用程序需要对数据库的所有更改都立即反映在 JavaScript 中,反之亦然。
现在,当在 JavaScript 中进行更改时,我对我的 API 进行 ajax 调用并对 DOM 进行相应的更改。在服务器上,API 处理请求并通过使用 PubNub 向其他当前 JavaScript 用户发送已进行更改的推送来完成。我还包括一个与 JavaScript 连续的 changeID,如果它错过了推送,它可以重新同步整个数据集。这是该推送的示例:
{
"changeID":"2857693",
"type":"update",
"table":"users",
"where":{
"id":"32"
},
"set":{
"first_name":"Johnny",
"last_name":"Applesead"
}
}
当 JavaScript 获得此更改时,它会更新本地存储并根据正在更改的表进行相应的 DOM 更改。请记住,我的问题不在于更新 DOM,而是将数据从数据库快速无缝地同步到 JavaScript。
通过这个,我不禁认为这是一个非常复杂的解决方案,应该相当简单。我错过了一个问题吗?您如何将多个 JavaScript 客户端与 MySQL 数据库无缝同步?