开发TCP Communicator的最佳实践

时间:2011-05-17 06:16:32

标签: java tcplistener

我们正在开发车辆跟踪系统。在该系统中,我们将GPS设备固定到车辆中,该车辆使用TCP通信将位置数据发送到我们的服务器。在任何给定时间,可以有超过1000个设备发送数据。请建议我应该遵循的最佳实践来构建TCP通信器。我们使用java作为编程语言,使用MySQL作为数据库服务器。

我需要你对我应该遵循的最佳做法的建议。例如我应该遵循Thread-per-connection模型或多线程的事件线程模型?为什么那个型号?我该如何实现连接池?我应该实现消息队列吗?等等。

谢谢, SAURABH

2 个答案:

答案 0 :(得分:2)

我建立了一个类似的系统。我使用Mule3作为tcp服务器监听器,然后在读取数据后,我只是使用JMS将数据转发到ActiveMQ服务器。

我在处理数据的每个队列上有大约10-20个侦听器,将其放入我的数据库,运行数据规则以确定是否需要发送警报等。

这导致了一个非常稳定且易于工作的环境。具有特定任务的小模块。

答案 1 :(得分:0)

  1. 使用NIO并充分利用多线程。如果可能,请使用一些现有的库,如MINA