GoodDay,
对于WCF,我不是大师,但我知道基础知识。
我的问题是,如何在机器X上创建ServiceHost,而代码在机器Y上?
如果我在我的开发机器(localhost)上构建并运行此代码:
servicehost = new ServiceHost(typeof(MyService1));
servicehost.AddServiceEndpoint(typeof(IMyService1), new NetTcpBinding(),"net.tcp://my.datacenter.com/MyApp/MyService1"); //This is normally set to localhost.
必须在数据中心服务器上执行哪些实现,因此如果我必须指向http://my.datacenter.com/MyApp/MyService1,它将把服务操作路由到我的dev机器(localhost)。
但是,不应通过互联网访问数据中心。
我们正在研究可能的基础架构,以确定我们是否可以创建服务总线类型架构,以便所有客户只需调用我们的数据中心URL就可以调用在各自计算机上运行的其他客户服务。
我们已经看过Windows Azure,但我们有自己的数据中心基础设施,我们希望利用它。想想看,我们在非常基本的规模上构建我们自己的Azure。
如何创造这个?
先谢谢
答案 0 :(得分:3)
.NET 4中的WCF有一个称为路由服务的新功能,它可以完成其中的一部分 - 客户端将连接并将其消息发送到机器A,而该机器基本上只是将请求重新路由到机器B.
查看这些资源(或通过谷歌搜索或查找“WCF 4路由服务”找到更多资源):