Node.js 如何跨web和本机应用程序实现数据结构到多个客户端的单向同步?
我们需要在后端服务器、web客户端、本机iOS应用程序和本机Android应用程序之间共享一个通用数据结构。后端服务器是用NodeJS编写的,并在下面使用Postgres数据库 我曾经考虑过Firebase实时数据库,因为它可以解决后端可以写入Firebase数据库以及所有客户端都可以使用该数据库的所有需求 我的问题是,是否有一种开源的替代方案可以开箱即用,并且比成熟的Firebase实时数据库更符合我们的要求,后者将提供许多我们不需要或不想要的功能 ---以下是假设和要求--Node.js 如何跨web和本机应用程序实现数据结构到多个客户端的单向同步?,node.js,firebase,synchronization,open-source,Node.js,Firebase,Synchronization,Open Source,我们需要在后端服务器、web客户端、本机iOS应用程序和本机Android应用程序之间共享一个通用数据结构。后端服务器是用NodeJS编写的,并在下面使用Postgres数据库 我曾经考虑过Firebase实时数据库,因为它可以解决后端可以写入Firebase数据库以及所有客户端都可以使用该数据库的所有需求 我的问题是,是否有一种开源的替代方案可以开箱即用,并且比成熟的Firebase实时数据库更符合我们的要求,后者将提供许多我们不需要或不想要的功能 ---以下是假设和要求-- 后端充当主控端,
有趣的问题。我不知道有哪个开源系统能做到这一点,我相信Firebase本身就是从这样一个叫做Parse的系统演变而来的。现在,我可以告诉你的是Firebase是一个可靠的选择,也许你不应该这么快就放弃它:
干杯Firebase几乎完成了所有这些,所以问题是;为什么不直接使用Firebase实时数据库或FireStore?我发现这个比较似乎与我的问题非常相关:@Jay我担心供应商锁定、未来成本失控等等。另外,我不需要双向同步,所以我觉得应该有一个非常简单的解决方案,它是一些围绕WebSocket或保持活动http连接构建的简单库;说Firebase很难导航、无组织、很难查询,而且你的数据很容易被删除,这是不太准确的(在大多数数据库中三次点击删除数据可能会发生),所以我不会读太多。(海事组织!)。供应商锁定对于任何提供API的后端数据库都是一个问题。Parse就是一个很好的例子。如果一个应用程序是精心设计的,那么所有的数据都会被包装起来,你会被锁在里面,而不需要重新编写。所以,探索一下FB,看看你喜欢它吗。Firebase与Parse无关,它们有一种截然不同的方法,但通常都是一个很好的答案。哈哈,没错,我认为它是它的前身,但很高兴你喜欢我的答案:答案为PThx@SergioFlores。我问这个问题的动机可以看作是对我原来问题的一种评论。@NikolaSchou我已经阅读了你发布的比较。首先,什么是过度杀伤力?没有这样的事。这是一个灵活的工具,设计用于正常变化的早期启动动态。供应商锁定?嗯,不是真的,如果你需要一些不同的东西,是因为你有钱让它发生。