当前位置:网站首页>多主复制的适用场景(2)-需离线操作的客户端和协作编辑
多主复制的适用场景(2)-需离线操作的客户端和协作编辑
2022-08-02 03:37:00 【JavaEdge.】
3.1.2 需离线操作的客户端
应用在断网后仍需继续工作。
如手机、PC和其他设备上的日历应用。无论设备当前是否连网,都需随时查看:
- 当前会议日程(读请求)
- 添加新会议(写请求)
离线状态下进行的任何更改,会在设备下次上线时,与服务器和其他设备同步。
此时,每个设备都有一个充当M的本地DB(接受写请求),并在所有设备之间采用异步方式同步这些多M上的副本,同步滞后可能是几h或数天,具体时间取决于设备何时再联网。
架构上,这种设置类似IDC之间的多主复制,只不过每个设备都是个“IDC”,而它们之间的网络连接极不可靠。从日历同步功能的这些破烂实现也能看出,多主可以得到结果,但中间依旧很多未知数。
有一些工具就是为了使多主配置更容易,如CouchDB。
3.1.3 协作编辑
实时协作编辑应用程序允许多人同时编辑文档。如Google Docs。通常不会将协作式编辑完全等价于数据库复制问题,但与前面提到的离线编辑案例类似。
当一个用户编辑文档时,所做更改将立即应用到本地副本(Web浏览器或客户端应用程序中的文档状态),并异步复制到服务器和编辑同一文档的任何其他用户。
若要保证不发生编辑冲突,则应用程序必须先锁定文档,然后才能编辑。若另一用户想编辑同一文档,必须等到第一个用户提交修改并释放锁。这种协作模式类似主从复制模型下在主节点执行事务。
为加速协作效率,期望将可编辑粒度设置很小,如一个按键甚至全程无锁。但同时也带来多主复制都有的挑战:解决冲突。
边栏推荐
- PHP将字符切割成每个拼音
- 3个最佳实践助力企业改善供应链安全
- STM32/TMS320F2812+W5500硬软件调试总结
- Deep Blue Academy-Visual SLAM Lecture 14-Chapter 6 Homework
- 携手推进国产化发展,未来智安与麒麟软件完成兼容互认证
- Django、Rest framework访问数据库获取数据
- Research Notes (8) Deep Learning and Its Application in WiFi Human Perception (Part 2)
- 深蓝学院-视觉SLAM十四讲-第五章作业
- Zabbix删除一些大表历史数据脚本
- [Win11] PowerShell无法激活Conda虚拟环境
猜你喜欢
随机推荐
Scalar value for argument ‘color‘ is not numeric错误处理
QT中更换OPENCV版本(3->4),以及一些宏定义的改变
开箱即用的职场办公常用功能:全文检索、便签、云笔记
STM32/TMS320F2812+W5500硬软件调试总结
webdriver封装
2022华为软件精英挑战赛(初赛)-总结
Win8.1下QT4.8集成开发环境的搭建
Location、navigator和History对象
Centos7下使用systemd管理redis服务启动
Andrew Ng's Machine Learning Series Course Notes - Chapter 18: Application Example: Image Text Recognition (Application Example: Photo OCR)
渗透测试(PenTest)基础指南
三维目标检测之ROS可视化
Nexus 5手机使用Nexmon工具获取CSI信息
Research Notes (8) Deep Learning and Its Application in WiFi Human Perception (Part 2)
Deep Blue Academy-Visual SLAM Lecture 14-Chapter 6 Homework
jetracer_pro_2GB AI Kit系统安装使用说明
携手推进国产化发展,未来智安与麒麟软件完成兼容互认证
七分钟深入理解——卷积神经网络(CNN)
PHP实现阿里云HMAC-SHA1签名方法封装
matlab作图显示中文正常,保存图片中文乱码









