握手场景涵盖了应用程序1(包括ClientApp 1和ClientApp 2)的启动和停止
演员是:
- ClientApp 1:它是Web套接字服务器
- ClientApp 2:它是Web套接字客户端
- Java Connections Dispatcher:它是Server的一个组件,它基于Windows用户名为Application 1的每个实例分配侦听端口。
连接流程:
- CSR启动ClientApp 1并使用用户名1登录。
- ClientApp 1获取Windows用户名1。
- ClientApp 1向分派器注册自己。
- ClientApp 1将自己注册到分派器。
- Dispatcher验证没有ClientApp 2连接到同一Windows用户名1的Dispatcher。
- 调度程序为该应用程序1(ClientApp 1)服务器发送一个免费的UDP端口。
- ClientApp 1在该端口上打开一个ws侦听器(省略了ClientApp 1与调度程序之间用于通知状态的通信的详细信息)。
- ClientApp 1打开ClientApp 2,发行ClientApp 2.exe –username username1
- ClientApp 2登录代理。
- ClientApp 2必须使用Windows用户名1检索Windows用户名1和ClientApp 2向分派器发送的端口请求。
- 调度程序与上面发布的端口通信。
- ClientApp 2打开面向ClientApp 1的WS客户端
- ClientApp 2将推送“ OpenSession”消息(包含用户名1)
- ClientApp 1将发送“ SessionStarted”请求。
此时,ClientApp 2和ClientApp 1已真正集成在一起,可以开始协同工作。
我可以使用javax.websocket实现此设计吗?
您能建议我如何实施此设计吗?
我有tomcat,我的Weblogic服务器+ Java 8