我正在构建一项服务(目前通过html / css / nodejs和iOS应用程序通过swift 4进行网络连接),该服务将以您所在国家的货币来计算您在多个经纪商中持有的全部股票的总数。网站和应用程序均来自同一数据库,因此显示相同的信息。
让我们假设地说,我只能提取每只股票的拥有量(以股票数量,而不是任何货币),并将其存储在数据库中。当用户请求刷新时,网站/应用将从数据库中检索它。
我希望能够使用该数量和该股票的交易所价格(从其他地方拉出)来计算一个帐户中所有股票的总和。
用户不需要实时准确性,并且每天最多可以给交易所打电话200次。这可以通过请求增加。
我正在考虑有关如何检索/存储价格数据的最佳实践。好像我有2个选择:
1)将其拥有的数量存储在数据库中,并让网站/应用程序向数据库查询拥有的数量和价格。可以对它进行集中更新,所有用户都可以从中进行更新或请求新的更新,但是我觉得数据库和交易所的API上有很多I / O。
2)检索价格信息,并在每次用户直接从交易所要求时将其存储在本地。与选项1相比,此存储空间较少,但I / O仍然很繁重,尤其是在交易所的API上
哪个是最好的方法?还是我想念一种更好的方法?
答案 0 :(得分:0)
由于给定的股票价格在任何特定时刻每个人都是相同的,因此让您的Web应用程序查询股票的数据源是有意义的。然后,您的应用程序可以查询Web应用程序的价格,而不必每次都访问数据源。 (不过,请检查数据源的许可证,某些提供商不希望您缓存并重新分发其数据。)
这种方法应该限制对数据源的请求数量,并且还可以确保Web应用程序和移动应用程序始终使用同一组数据。