我正在开发一个 SMS 应用程序,并在其中使用 JMS。这是一个简单的图表,显示了我将如何实现该应用程序:
--------------------------- ---------------------------
| | | |
| | | |
| [Main Server] | | [JMS Server] |
| (JSPs and Servlets) | -------------------> | |
| | | ---------------- |
| | ???? | | | | | | | |
| | | ---------------- |
| | | JMS queue |
| | | |
| | | @ |
| | | JMS ConnectionFactory |
--------------------------- ---------------------------
所以基本上,最终用户通过主服务器发送 SMS 消息。主服务器将消息重定向到 JMS 服务器。JMS 服务器接收到消息并将其放入队列以立即或稍后处理。
关于实现 JMS 的正确方法是什么,我有几个关于设计的问题:
- 将 ConnectionFactory 放在 JMS 服务器上是否正确,还是应该将其移至主服务器?或者可能在两台服务器上部署两次?
- 我应该使用什么将消息从主服务器发送到 JMS 服务器?JMS 桥接器?JMS国外服务器?EJB?RMI?或者也许其他更好的东西?
- 我应该对 JMS 模块使用 JNDI 查找还是资源注入?