日期:2014-05-17  浏览次数:20857 次

高分请教一个架构问题
一个tomcat的web服务器,监听8080端口,一个java应用程序写的通讯服务器监听10000端口,web服务器和通讯服务器是一台机器。现在用户A通过8080访问web,比如点击了一个链接,这里需要实现将这个事件转发给通过10000端口连接到通讯服务器的用户B。 
整体上就是8080端口和10000端口都有数据的收发,这里的工作就是如何实现双向转发,如何实现,需要什么技术?
------解决方案--------------------
一般的Socket技术即可,逻辑上注意不要死循环了
------解决方案--------------------
我只想到让两个程序可以互通消息,使用ActiveMQ,就算再多几个不同语言的程序也没有问题。
------解决方案--------------------

------解决方案--------------------
你的问题就是简单的同一个服务器上的两个进程如何通信

1、tcp/ip通信,8080和10000上两个进程各自再起一个链接用tcp通信就好了
2、用消息队列,就像楼上说的MQ,这种服务很多,一找一大把
3、写数据库写文件,这种也可以通信,只是无法做到实时通知
------解决方案--------------------
引用:
Quote: 引用:


web处理程序和java监听程序怎么交互,用什么技术
[img=http://forum.csdn.net/PointForum/ui/scripts/csdn/Plugin/003/onion/18.gif]

这个谁知道,看你服务端是哪类了。如果自己写,直接socket完事。
------解决方案--------------------
引用:
Quote: 引用:

web端事件触发了,对应你后台处理这个请求,需要转换成你的10000端口所需要的请求。

得到10000的返回值再处理下面的业务


是独立的两个程序


知道是独立的2个。看你另外一个是什么类型的程序了。比如有socket的,TCP/IP通信的。主要还是看你这个程序的类型