我有一个非常具体的客户端 - 服务器设计案例,我想要求
建议。任务是用新的增强现有系统
功能。
该系统由具有公共IP的服务器组成,10 -
具有动态IP的1000个CLDC客户端和一个设备
通过串口(COM)与服务器通信。
客户端(J2ME):
登录到服务器并保持登录状态,自发地询问
某些数据的服务器,但主要是等待服务器请求。客户是
(可能,首先想到)负责保持与服务器的连接
活着。
服务器(最好是Windows,Java):
等待客户端
连接,存储和维护所有客户端连接(如果是服务器
想要向客户端发送请求,因为客户端具有动态IP
地址)。服务器存储来自COM设备的数据。等待
来自客户的请求并为他们提供所需的(先前存储的)
数据。它还等待COM设备请求。
COM设备:
为服务器提供
数据(这是客户自发要求的数据)。它也发送
请求(服务器应将这些请求传递给特定客户端)。 COM
设备驱动整个系统。
我需要设计的是客户端的服务器和软件。串口设备 是不可改变的。
您对这里的最佳方法有什么建议吗?
问候!
答案 0 :(得分:1)
<强> J2ME 强>
我开发了许多涉及J2ME和后端的系统。您需要注意的一件事是,服务器所拥有的客户端连接可能并不总是“开放”,因为GPRS / 3G不是非常可靠(取决于服务提供商/国家/地区)。所以你是对的,客户负责保持连接开放。
服务器强>
通常,您可以将其视为普通的多线程套接字服务器。
在Windows系统上(假设您使用java编程),请查看将java.io.File打开到文件名“COM1”以便与您的串行设备进行通信。这将使您的生活更轻松,而不是完成本地串行通信。
看起来非常直接,所以我不确定一个人可以提出什么建议。