Phone 应用:云存储与本地
Phone App: Cloud Storage vs Local
我一直在使用 JavaScript 开发一些应用程序,利用 Adobe PhoneGap 进行跨平台集成。但是,我目前陷入了关于应用程序存储和寻找指导的架构决策。
我目前拥有的一个应用程序将用户数据(例如,用户配置选项、table 记录等)作为文本文件存储在 Google 云端硬盘中。以下是应用程序启动的工作流程:
- 应用加载
- 用户使用 Google 帐户登录
- 系统检查 Google 驱动器
上是否存在应用程序数据
- 如果数据存在,加载文件。否则创建数据文件。
- 解析数据文件。
- 填充数据table(s)、图表等
当用户保存时,我基本上会将这些数据打包并将文本文件保存回 Google 驱动器。
现在,我知道瓶颈当然会解析这个文件,它不如从数据库中读取数据那么好,但这就是我的问题:你将如何在云中存储数据一种具有成本效益的方式?您会定期将数据备份为文本文件吗?是否有您推荐的免费(即有限制)存储选项?
我有编写全栈 JavaScript 应用程序的经验,但从未在任何地方部署过这些应用程序……更多的是学习经验。
我在想,也许最好的选择是部署一个节点服务器和 mongoDb 到一些云服务(可能是 AWS?),但我们的目标是,在一天结束时,使一些现金。如果您需要更多详细信息,请告诉我!
这当然取决于你有多少用户和你想要完成什么,因为通过互联网发送数据并将其保存在服务器上给了你必须考虑的其他角度,就像你提到的成本是一个它的。
如果您没有足够的用户,运行 专用服务器是无利可图的。
您可以使用用户自己的 Google 驱动器存储,有些人喜欢,有些人不喜欢。
更重要的是安全性,因为一些用户数据非常敏感,通过互联网传输数据是一个问题,您必须采取正确的措施来确保数据安全。也表现明智。
我知道当您打开应用程序时,您要做的第一件事就是等待,因为它必须从 Internet 加载和同步,这令人沮丧。
如果用户设备离线怎么办..?
不知道是什么应用,没法给你推荐
如果它是敏感的,您可能不想通过互联网发送它。
它很大,不经常发送,并且在设备上有缓存。
如果它不是仅限互联网(持续连接)的应用程序,请确保它可以离线工作。
一直发送 files/data 是个坏主意,因为它会耗尽电池并使用户发疯(互联网消耗成本)。
在考虑安全性、性能、电池和成本时,本地总是更好。
出于备份原因,一个会话同步一次或两次也不错,
尝试在后台(异步)执行此操作,这样它就不会阻止您的用户。
确保您的设备上有缓存(如果可能)。
我的应用程序在开始时会检查一次在线数据。但是我的应用程序使用设置,这样我就可以更改而无需再次推送更新。
但是当设备处于离线状态时它有一个缓存的(离线)版本。
例如,当您有银行应用程序时,不可能有缓存版本,因为缓存可能包含旧信息并向用户提供错误信息。
所以用户必须等待下载的信息。但它仍然可以是异步的,因为应用程序仍应响应 (ui)。所以它可以显示一个动画加载图标或者用户可以浏览并等待正在下载的数据。
我希望这能回答您的问题。
我一直在使用 JavaScript 开发一些应用程序,利用 Adobe PhoneGap 进行跨平台集成。但是,我目前陷入了关于应用程序存储和寻找指导的架构决策。
我目前拥有的一个应用程序将用户数据(例如,用户配置选项、table 记录等)作为文本文件存储在 Google 云端硬盘中。以下是应用程序启动的工作流程:
- 应用加载
- 用户使用 Google 帐户登录
- 系统检查 Google 驱动器 上是否存在应用程序数据
- 如果数据存在,加载文件。否则创建数据文件。
- 解析数据文件。
- 填充数据table(s)、图表等
当用户保存时,我基本上会将这些数据打包并将文本文件保存回 Google 驱动器。
现在,我知道瓶颈当然会解析这个文件,它不如从数据库中读取数据那么好,但这就是我的问题:你将如何在云中存储数据一种具有成本效益的方式?您会定期将数据备份为文本文件吗?是否有您推荐的免费(即有限制)存储选项?
我有编写全栈 JavaScript 应用程序的经验,但从未在任何地方部署过这些应用程序……更多的是学习经验。
我在想,也许最好的选择是部署一个节点服务器和 mongoDb 到一些云服务(可能是 AWS?),但我们的目标是,在一天结束时,使一些现金。如果您需要更多详细信息,请告诉我!
这当然取决于你有多少用户和你想要完成什么,因为通过互联网发送数据并将其保存在服务器上给了你必须考虑的其他角度,就像你提到的成本是一个它的。 如果您没有足够的用户,运行 专用服务器是无利可图的。 您可以使用用户自己的 Google 驱动器存储,有些人喜欢,有些人不喜欢。 更重要的是安全性,因为一些用户数据非常敏感,通过互联网传输数据是一个问题,您必须采取正确的措施来确保数据安全。也表现明智。 我知道当您打开应用程序时,您要做的第一件事就是等待,因为它必须从 Internet 加载和同步,这令人沮丧。
如果用户设备离线怎么办..?
不知道是什么应用,没法给你推荐
如果它是敏感的,您可能不想通过互联网发送它。 它很大,不经常发送,并且在设备上有缓存。 如果它不是仅限互联网(持续连接)的应用程序,请确保它可以离线工作。 一直发送 files/data 是个坏主意,因为它会耗尽电池并使用户发疯(互联网消耗成本)。
在考虑安全性、性能、电池和成本时,本地总是更好。
出于备份原因,一个会话同步一次或两次也不错, 尝试在后台(异步)执行此操作,这样它就不会阻止您的用户。 确保您的设备上有缓存(如果可能)。
我的应用程序在开始时会检查一次在线数据。但是我的应用程序使用设置,这样我就可以更改而无需再次推送更新。 但是当设备处于离线状态时它有一个缓存的(离线)版本。
例如,当您有银行应用程序时,不可能有缓存版本,因为缓存可能包含旧信息并向用户提供错误信息。 所以用户必须等待下载的信息。但它仍然可以是异步的,因为应用程序仍应响应 (ui)。所以它可以显示一个动画加载图标或者用户可以浏览并等待正在下载的数据。
我希望这能回答您的问题。