【发布时间】:2011-07-04 01:28:48
【问题描述】:
我很喜欢实现我自己的单入口点“网关”,它可以做两件事。
首先,它记录 SOA 服务器处理了多少请求,并将下一个请求循环到最可用的服务器。完全控制负载平衡逻辑很有吸引力。
其次,这个“网关”将是我所有服务的唯一联络点,包括安全性。如果客户端发送了一个用户名-密码组合,它会将它们传递给安全服务,该服务会在成功验证时授予令牌。如果客户端发送了一个令牌,网关会通过安全服务运行这个令牌,如果它是 kosher,则将请求传递给业务服务之一。隐藏或封装网关以外的所有服务似乎是可取的。
我的问题是:这不是“正确的做事方式”有什么理由吗?当已经有一个框架可以完成我上面描述的工作时,我是否在重新发明轮子?我的堆栈是 .NET 和 WCF。
【问题讨论】:
-
有许多硬件负载平衡器提供此功能。如果购买是一种选择,也许你应该考虑一下
-
谢谢。但是,与实现我自己完全控制的负载平衡相比,这样做有什么好处呢?我可以看到潜在的成本节约。还有什么吗?
-
大多数负载平衡器让您可以控制平衡的发生方式。优点是它们通常被很好地利用,具有庞大的使用基础和经过验证的性能,通常你的时间可以更好地花在其他事情上,而不是重新发明捕鼠器,这很可能不会有很多特征。如果您正在寻找一个简单的负载均衡器,一定要自己动手做,但是稍微高于正常水平的东西我会考虑已经构建的硬件或软件负载均衡器。
标签: service soa gateway entry-point