Azure云服务(cloud Servive)中有三种端点类型(endpoint type):输入端点(input);内部端点(internal);实例端点(InstanceInput)
1.输入端点:随着云服务的对外IP地址及DNS开放给外部访问,外部访问输入端点之前要经过负载平衡器,负载平衡器会把对某个输入端点的访问平均分配到云服务的实例中去。
2.内部端点:对外不开放,只给云服务的内部实例之间进行访问。
3.实例端点:对外开放可以被外部访问,但是又不经过负载平衡器,它是一个范围根据服务定义文件里面所定义的端点范围分配给云服务中的实例。
输入端点和内部端点比较好理解,下面简单演示实例端点的使用:
- 首先创建一个最简单的云服务,选择ASP.NET web role 项目
- 在web role项目的服务定义文件中进行以下修改:
<Endpoints>
<InputEndpoint
name="Endpoint1" protocol="http" port="80"
/>
<InstanceInputEndpoint
name="Endpoint2" protocol="tcp" localPort="80">
<AllocatePublicPortFrom>
<FixedPortRange max="10109" min="10105" />
</AllocatePublicPortFrom>
</InstanceInputEndpoint>
</Endpoints>
修改的目的是除了外部用户可以直接通过80端口访问到web网站还可以通过不同的实例端口访问云服务中不同实例中的IIS。
例如:访问改云服务的通过地址是 youcloudservicename..cloudapp.net :10105
访问云服务中第一个实例中的IIS地址是:youcloudservicename.cloudapp.net:10105
访问云服务中第二个实例中的IIS地址是:youcloudservicename.cloudapp.net:10106