gpt4 book ai didi

java - Web 服务提供的大量数据点的实时分析

转载 作者:行者123 更新时间:2023-11-29 00:57:13 24 4
gpt4 key购买 nike

故事。我有一个基于 Java 的 Web 服务客户端运行拉取数据,这些数据“可以”每 60 秒 24*7*365 更新一次。

如果有新的实时更新可用,我需要监控 1,000 多个数据点。如果有新数据点可用,我需要将新值附加到 MySQl 数据库中。

然后我需要尽快在基于 java 的网络应用程序中以图形形式分析/显示数据。

有人对高效的软件架构有什么建议吗?具体来说:

  • 数据库模式,单个大表与许多小表
  • 数据库追加,我是否需要实现某种形式的多线程来优化性能?
  • 计算更新并将更新推送到网络应用程序的最佳触发机制是什么?

欢迎任何建议/建设性批评。

谢谢

最佳答案

这不是大量数据/快速变化。即,将输入值存储在内存中并不是很大的开销。虽然你没有说捕获数据点涉及什么 - 如果捕获每个数据点需要 1 秒,然后在单个线程中运行它,你将无法在 60 秒内遍历该集合:你'我们将需要查看多线程。

如果您已经控制了为处理准备输入的代码,那么值得考虑在同一个可执行文件中实现处理 - 但一定要考虑锁定。以这种频率从 cron 作业运行整理是关于边界的——有许多约束因 cron 的实现而异——你需要考虑如果单次调用花费的时间比实际处理时间间隔长会发生什么——如果是我,我会在数据捕获或作为守护进程运行时执行此操作。

Database Schema, Single big table Vs Many small tables

答案是单个表通常优于多个表 - 当然比 1000 个表更可取!

Database Appends, would I need to implement some form of multi-threading to optimize performance?

仅当您真的在每次调用时创建/更新 1000 行并且必须具有低于 10 毫秒左右容差的实时响应。

What is the best trigger mechanism to calculate & push updates to the web-app?

这太模糊了,无法给出任何明智的答案。

display the data in Graphical form

这又是一个非常模糊的问题——输出是单个 boolean 值吗?一组序数值?还有别的吗?

javascript plotter可能会有用。

关于java - Web 服务提供的大量数据点的实时分析,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5470980/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com