【发布时间】:2014-12-13 17:05:22
【问题描述】:
我想设计和实现一个代理服务器,它接受客户端请求,然后从属性文件中读取主机连接配置,并使用循环算法选择可用主机,然后通过在之间创建新套接字将客户端请求传递给选定的主机代理服务器和主机。我的问题是最佳实践应该是什么,以及如果无法访问可用的主机如何处理什么应该是适当的方式。我应该使用什么最合适的设计模式
【问题讨论】:
-
什么设计模式?没有决定要做。如果您收到出站连接错误,则必须尝试另一台主机。如果你都试过了,你必须向下游客户端返回一个错误。
-
@EJP 在代理服务器和主机之间,我们是否为来自代理服务器端的每个请求创建套接字
-
为什么要在代理和主机之间创建一个新的套接字?初始设置后,客户端可以直接连接到主机,以防止代理出现瓶颈。
-
你检查过haproxy吗?
-
@mike 如果我们没有为每个请求在代理服务器和主机之间创建新的客户端套接字,那么当涉及到并发用户时,向客户端发送正确的响应就会出现问题,不是吗
标签: java design-patterns tcp architecture distributed