我有一个基于.net 2.1标准的安卓应用程序和一个后端(REST使用.net6和MySQL)。从架构的角度来看,我不知道什么是最好的选择,所以我请求您的帮助。
此时,每次用户刷新Dasboard Page时,后端都会通过https对外部端点进行rest调用以检索json,然后执行一些计算数据并将数据发送回移动端,这样用户就可以看到数据更新(它是二进制api调用以获得usdt和eur中的btc协议)。
由于这是一个非常糟糕的想法,当投入生产时,我正在考虑如何解决它。我的主要想法是创建控制台应用程序,主动每5秒调用一次,并将其保存到某个地方(可能保存到文件中会导致大量磁盘访问哈哈)。最后,必须以某种有效的方式共享所收集的数据,以便移动设备能够获取这些数据.你认为什么是最好的方法?我知道我可以使用Websockets从Binance获得这些值,但我不清楚什么是最好的选择,以及如何连接到移动设备。谢谢大家!
发布于 2022-10-28 15:04:45
首先,如果您正在从事一个金融项目,您应该知道每秒钟都很重要,所以每5秒获取数据的想法并不是一个好主意,所以让我们来解释一个更好的方法:
正如您所说的,而且很明显,在这种情况下,最好的方法是从webSocket获取数据,因为它是实时的,而且非常可靠,而且您总是在更新。
但是有一个问题,那就是有很多数据发送给你,所以你应该能够处理它。要处理这个数据量,最好的方法是使用JAVA及其框架(如Spring )。
这是问题的一部分,让我们来看第二部分。
你应该如何处理这些数据?你应该把它们放在哪里??
正如您之前可能注意到的,您的数据是基于时间的数据。
谈到基于时间的数据,最好的选择是: Postgres时间刻度DB。
安装Postgres并创建数据库,然后在数据库上应用时间刻度DB插件。
现在,每件事都准备好了,在时间刻度数据库中创建一个基于时间的表。
现在保持每秒钟的价格。
每次您的前端刷新页面时,只需从表中选择(基于时间的选择在Postgres时间刻度DB中是高度优化的,即使在大量记录中也是如此),并将最后的价格返回给它。除此之外,你还有每一刻的代价。
甚至你也可以把数据流到你的前端。
随便问你需要知道的任何问题。
https://stackoverflow.com/questions/74165567
复制相似问题