socket编程的问题
一直搞不明白连接在serverA上的clientA与连接在serverB上的clientB是怎么进行通信的?有懂的人吗?虚心求教额...
一直搞不明白连接在serverA上的clientA与连接在serverB上的clientB是怎么进行通信的?有懂的人吗?虚心求教额
展开
1个回答
展开全部
一般来说,通信的两个客户端,可以是连接上同一个服务器上的,也可以是连接在不同服务器上。即所谓的同服与跨服。
同服通信:
比如:客户端A、客户端B同时连接上服务器A上,则他们之间的通信,是经过服务器转发的。即客户端A给客户端B发消息,则首先是客户端A将消息发送到服务器A,服务器A再根据标识对应的转发到客户端B上,这样就完成了客户端A与客户端B的通信。
跨服通信:
与同服通信大体相似,不同的是,客户端A与客户端B进行通信,则首先是客户端将消息到服务器A,再由服务器A转发到服务器B,之后服务器B再根据标识对应的发送到客户端B上。从上可以看出,跨服时就是多了服务器与服务器的交互,即多了一回消息转手问题。
网络通信简单说大体就如上这样啦,如有说得不对的地方,还主各位度友指正。
有问题欢迎提问,满意请采纳!
同服通信:
比如:客户端A、客户端B同时连接上服务器A上,则他们之间的通信,是经过服务器转发的。即客户端A给客户端B发消息,则首先是客户端A将消息发送到服务器A,服务器A再根据标识对应的转发到客户端B上,这样就完成了客户端A与客户端B的通信。
跨服通信:
与同服通信大体相似,不同的是,客户端A与客户端B进行通信,则首先是客户端将消息到服务器A,再由服务器A转发到服务器B,之后服务器B再根据标识对应的发送到客户端B上。从上可以看出,跨服时就是多了服务器与服务器的交互,即多了一回消息转手问题。
网络通信简单说大体就如上这样啦,如有说得不对的地方,还主各位度友指正。
有问题欢迎提问,满意请采纳!
追问
感谢你的回答,还有一个问题,在java中有没有专门用于跨服通信的技术?叫什么?我想找些资料学习一下
追答
最基本的socket通信就能实现跨服通信了。当然,Java中跨服或者说分布式开发的的技术有很多,比如EJB、Hadoop、webservice等等,至于你如何学习,那就看你的能力与兴趣了。
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询