首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >ModeShape服务器-客户端存储库同步

ModeShape服务器-客户端存储库同步
EN

Stack Overflow用户
提问于 2014-07-07 10:43:27
回答 1查看 230关注 0票数 1

我想部署一个基于ModeShape的服务器-客户机架构,但是我不知道如何配置ModeShape和Infinispan来实现我的目标。

下面是一个典型的用例:

  • 用户A在主服务器存储库上创建一个节点
  • 用户B在本地检索此节点,并脱机编辑其子树和属性。
  • 用户B再一次将此节点推回主服务器存储库,并在必要时合并其内容(即该节点也已在主存储库中被修改)

因此,我的要求是:

  • 我需要主服务器存储库来保存所有数据。
  • 我需要每个客户端能够从服务器存储库中获取一些特定的节点,并在本地存储它。
  • 我需要每个客户端能够在其本地存储库中脱机工作(即无法访问主服务器存储库)。
  • 我需要每个客户端能够将其本地存储库与主存储库进行一次在线同步,并在必要时合并数据。

您知道如何使用ModeShape和/或Infinispan的群集选项来获得这样的行为吗?或者你能想出一个更好的办法?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2014-07-14 14:32:54

主服务器的配置将是非常传统的。ModeShape (和Infinispan)在这里非常灵活,所以更难的部分是决定如何/在哪里保存ModeShape的所有内容。该项目有相当多的完整示例具有不同的配置,以及许多可能也有帮助的测试用例的配置

至于客户端,我建议让它们将内容存储在本地存储库中,该存储库将持久化到本地磁盘,因此这意味着使用Infinispan的JDBC缓存存储或文件系统缓存存储。(使用ModeShape 4.0,甚至还有其他一些Infinispan缓存存储将工作并执行得更好。)

然后问题是如何同步数据。ModeShape有集群内置,但所有存储库实例都是相同的,这并不完全符合您的要求。不幸的是,ModeShape中没有任何东西可以直接支持这个功能,但这是您可以自己实现的。然后,客户端可以连接并下载主存储库内容的子集(或根据事件日志信息更改的节点),然后更新其本地副本。当然,您可能希望确保没有覆盖由客户端更新但尚未与服务器同步的任何本地内容。

这样做需要付出一定的努力,但完全可以在ModeShape上完成。实际上,大部分工作需要使用每个存储库的事件日志(例如保存事务日志和每个事务中更改的内容)合并两个独立更新的存储库的内容。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/24608739

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档