【问题标题】:Best practice for keeping accurate stock prices保持准确股价的最佳实践
【发布时间】:2018-09-18 03:39:31
【问题描述】:

我正在构建一个服务(网络通过 html/css/nodejs 和 iOS 应用通过 swift 4),它将计算您在多个经纪商的所有股票的总数,以您所在国家的货币计算。网站和应用都从同一个数据库中提取,因此显示相同的信息。

假设说,我只能提取每只股票拥有的数量(以股票数量为单位,而不是任何货币)并将其存储在数据库中。当用户请求刷新时,网站/应用程序将从数据库中检索它。

我希望能够使用该数量和该股票的交易所价格(从其他地方提取)来计算账户中所有股票的总和。

用户不需要实时准确性,您可以向交易所拨打的电话数量每天上限为 200 次。这可以通过请求增加。

我正在考虑如何检索/存储价格数据的最佳做法。好像我有两个选择:

1) 将其与拥有的数量一起存储在数据库中,并让网站/应用程序在数据库中查询拥有的数量和价格。这可以集中更新,所有用户都可以从中提取或请求新的更新,但我觉得数据库和交易所 API 上的 I/O 很多。

2) 每次用户直接从交易所请求时,检索价格信息并在本地存储。这比选项 1 存储更少,但 I/O 仍然相当繁重,尤其是在交易所的 API 上

最好的方法是什么?还是我错过了更好的方法?

【问题讨论】:

  • 您已将此问题标记为swift,但该问题没有特定于语言的内容。同样,这个问题没有明确说明......您的用户是否需要或期望最高到毫秒的定价数据?您或用户是否为访问定价数据产生了费用?应用和网站有什么关系?
  • 感谢您的反馈,我已更新问题并修复了标签。用户不需要实时准确性,您可以向交易所拨打的电话数量每天上限为 200 次。这可以通过请求增加。网站和应用都从同一个数据库中提取,因此显示相同的信息。

标签: architecture methodology


【解决方案1】:

由于给定的股票价格在任何特定时刻对每个人来说都是相同的,因此让您的 Web 应用程序查询股票的数据源是有意义的。然后,您的应用程序可以查询您的 Web 应用程序的价格,而不是每次都访问数据源。 (不过,请检查数据源的许可证——某些提供商不希望您缓存和重新分发他们的数据。)

这种方法应该限制您必须向数据源发出的请求数量,并且还可以确保您的网络应用程序和移动应用程序始终使用同一组数据工作。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2011-12-20
    • 2014-06-07
    • 2010-10-25
    • 2012-08-03
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多