我正在开发一个Rails应用程序,作为同一特许经营店的许多商店的每次购买的收银机,销售记录器和票据打印机。
问题在于,如果互联网在任何特定时间在任何商店位置出现故障,它必须能够脱机运行,以便客户服务不会受到影响。
有没有办法离线运行Rails应用程序并在重新建立连接后将其与服务器同步?
甚至可以离线操作并在一天结束时同步它?
是否需要特定的数据库?
答案 0 :(得分:2)
从技术上讲,你没有理由不这样做。我已经做到了,如果您对设计应用程序的方式非常谨慎,它实际上效果很好。
除此之外,需要注意的事项是:
测试离线行为也非常简单。把它放在笔记本电脑上,然后关掉Wifi。如果可行,你会很快知道。
对于离线应用和主服务器之间的文件同步,您可以选择技术和数据格式。您可以实现REST样式的同步API,低技术FTP推送,甚至rsync。数据格式可以很容易地是JSON(结构化数据存储的当前公主),完善的CSV,甚至是(颤抖的)XML。
构建离线应用程序应该没什么意外,除了能够从互联网上任意加载资源外,你还拥有Rails提供给你的所有工具和资源。