我们正在构建一个API和移动应用程序,它们基于一个包含几十万条记录的主要表的数据库。我们的移动开发人员强烈推荐在本地数据库中预加载完整的表,并使用服务来同步手机针对“updated_at”列所做的更改。尽管这样可以通过使应用程序搜索本地存储来显著提高应用程序的性能,但我担心随着我们获得更多客户,这将给服务器带来很大的负载。有其他人处理过这个问题吗?这是一个好主意还是坏主意?您可以分享一些见解和链接吗?
免责声明:自2008年以来,我一直在从事开源同步数据库的工作,因此我对解决方案空间有偏见。
首先,不要开始时就认为你将跟踪表上的updated_at
列,这条路会导致疯狂。 专门的团队需要花费数年时间构建同步解决方案,才能避免像一堆hack一样的感觉。
我的团队一直在构建轻量级嵌入式数据库,它允许您从本地iOS、Android、.NET或JavaScript代码存储和交互本地JSON对象。数据库API全部都是本地的,因此您可以查询、读取和写入,而无需担心网络链接状态。对于开发人员来说,网络连接成为您只需配置一次的东西,而不是每次需要数据时都要处理的东西。
我们还建立了一个服务器, 使不同类型的数据流轻松构建应用程序。您的应用程序的服务器端可以变得非常简单,只需使用基于映射减少的JavaScript同步函数即可将数据路由到通道(并授予用户或组访问通道)。您还可以通过通道驱动后端进程,因此用户操作会触发实际事件,例如发送推送通知或更新现有后端API。updated_at
同步? - quickshiftin