
Endpoint EChannelServicePortEP = service0 .addEndpoint(new QName("http://practise.my.com/webservice/eChannel", "EServicePort"), new QName("http://practise.my.com/webservice/eChannel", "EServiceSoapBinding"),
Kubernetes 中的 Service,它定义了一组Pods的逻辑集合和一个用于访问它们的策略。一个 Service 的目标 Pod 集合通常是由Label Selector 来决定的。
Endpoints 是一组实际服务的端点集合。一个 Endpoint 是一个可被访问的服务端点,即一个状态为 running 的 pod 的可访问端点。一般 Pod 都不是一个独立存在,所以一组 Pod 的端点合在一起称为 EndPoints。只有被 Service Selector 匹配选中并且状态为 Running 的才会被加入到和 Service 同名的 Endpoints 中。
Pod 是 Kubernetes中能够创建和部署的最小单元,是 Kubernetes 集群中的一个应用实例,关于 Pod 似乎也没什么需要特别说明的。
注:只有配置了 selector 的 service 才会自动创建一个同名的 endpoints,没有配置 selector 的 service 不会产生 endpoints 资源对象。
关系拓扑图
Service、Endpoint 和 Pod 的关系(下图)
自动关联体系内 Pod 服务(下图):
手工维护体系外的外部服务(下图):
在.NET 3.5中,我们需要这样做:1. 添加一个HelloService.svc文件,添加ServiceHost标记,在Service中添加WCF服务实现的名称,比如:
<%@ ServiceHost Language="C#" Debug="false" Service="CNBlogs.Service.Impl.HelloService"%>
2. 在web.config/system.serviceModel/bindings/basicHttpBinding中添加一个binding。
3. 在web.config/system.serviceModel/behaviors/serviceBehaviors中添加一个behavior。
4. 在web.config/system.serviceModel/services中添加一个service,并且:
a) 设置behaviorConfiguration属性。
b) 设置name属性。
5. 在service下添加一个endpoint,并且:
a) 设置binding属性。
b) 设置name属性。
c) 设置contract属性。
在.NET 4中,我们只要这样做:
在web.config/system.serviceModel/serviceHostingEnvironment/serviceActivations中增加下面两个属性即可:
<add relativeAddress="HelloService.svc" service="CNBlogs.Service.Impl.HelloService"/>
这样配置后,就可以正常调用WCF服务。
如果需要通过SvcUtil.exe生成客户端代理,只需在serviceBehaviors中添加:
<behavior>
<serviceMetadata httpGetEnabled="true"/>
</behavior>
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)