如何在Azure中公开具有公共和内部端点的服务层

时间:2015-04-05 03:17:55

标签: wcf azure architecture azure-web-roles azure-worker-roles

我有一个通过WCF与服务层对话的网络应用程序。这些必须是内部端点,应该是.net TCP绑定。但是,我在服务层中也有一些服务不需要在内部使用,但需要暴露给外部世界,即http / https输入端点。在Azure中实现此功能的最佳方法是什么?

我希望有人能就以下几点提供澄清/建议:

  • 如果我使用内部端点这些负载均衡?网络上似乎有很多矛盾的信息。我已经读过你需要实现自己的算法,但是我也读过这个,现在已经由微软实现,它是自动的。
  • 服务层应该是Web角色还是辅助角色?似乎有一种解决方法可以使内部TCP绑定与Web角色一起工作?
  • 是否有一套特定的指导方针可供使用?即网络角色或工作者角色。
  • 我假设无论我是否使用网络角色或工作角色,我都需要两个实例?但这不取决于第一点吗?即如果没有负载均衡器,那么有2个工作者角色实例甚至有任何意义吗?
  • 将服务层拆分为两层会更好吗?一个是暴露内部端点而另一个是暴露公共端点?

提前致谢。

2 个答案:

答案 0 :(得分:-1)

My previous answer got truncated. Take a look at Azure Service bus, you can create relays there to expose your internal WCF services

答案 1 :(得分:-2)

You can use a service relay for this, take a look @ Azure