如何将实时更改数据提取到本地服务器?

时间:2012-08-24 16:36:23

标签: java java-ee timestamp real-time localserver

我们必须开发一个本地服务器,它将自己加载一个行业的实时数据(特别是时间戳数据点,如锅炉的温度,压力值等),它们存储在工业服务器中,我们希望获取它们并用它填充我们的服务器,数据不在服务器端流式传输,所以如何连续获取它并填充服务器...

我们希望只保存过去2-3天的历史数据随着时间的推移,任何有关服务器的建议和用于获取数据的后端流程都是受欢迎的,我们不知道如何开始.. 请帮忙......

1 个答案:

答案 0 :(得分:0)

正如其他人所说, 您需要提供有关如何填充服务器的更多信息。
您对“实时服务器”有什么API?
我在太阳能设备的管理系统上工作 (即 - 用太阳能发电的设备 - 如果我没记错的话,它们被称为光波动细胞)。
在我的情况下,这些设备具有FTP访问权限,这为我提供了基于时间的信息。
我构建了一个使用以下技术的java服务器:

A. Apache tomcat web container - 这个Web容器一方面允许我持有java逻辑,另一方面允许我向客户公开基于HTTP的接口。
Java逻辑位于Servlet中 - 它公开了处理HTTP请求的方法(并允许使用响应对象写入返回的数据)。

B. servlet有一个init方法,我用它来执行一些初始化,例如启动quartz周期性任务来探测设备的ftp服务器。

C.我使用数据库(postgresql数据库,这是一个开源数据库)来存储应用程序的配置,并存储结果。
D.我使用另一个周期性任务来存档归档表中的旧数据,因此主数据表将保存相对较新的数据。

我在几天内运行了一次归档任务,并简单地检查了“太旧”的记录,将它们插入到归档表中,并从主数据表中删除它们。为了有效地执行此操作,我决定使用我在数据库上编码的function
E.为了从应用程序访问数据库,我使用了Hibernate对象关系映射技术。
这项技术允许我定义表之间的映射及其与java对象的关系,并为我提供了生成的create,read(by-id),删除和更新的SQL语句。
使用HQL查询语言,我编写了一些更复杂的查询。

F.对于演示/客户端 - 我使用普通JSP

您可以选择其他替代方案,例如:
GWT,Apache Wicket,JSF

您可以考虑使用一些MVC框架在逻辑和表示之间进行一些分离。这样的框架可以是:
Spring-MVC,Struts等等。

最后,您必须了解Java为您提供了各种技术,您必须很好地定义需求,然后开始研究哪种技术可以满足您的需求。