Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/azure/11.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
azure tcp云服务无法连接_Azure_Tcp_Azure Cloud Services - Fatal编程技术网

azure tcp云服务无法连接

azure tcp云服务无法连接,azure,tcp,azure-cloud-services,Azure,Tcp,Azure Cloud Services,我已在azure云服务中部署了工作者角色,但无法连接到该角色。 云服务具有以下定义: <?xml version="1.0" encoding="utf-8"?> <ServiceDefinition name="classificationCloudService" xmlns="http://schemas.microsoft.com/ServiceHosting/2008/10/ServiceDefinition" schemaVersion="2015-04.2.6"&

我已在azure云服务中部署了工作者角色,但无法连接到该角色。 云服务具有以下定义:

<?xml version="1.0" encoding="utf-8"?>
<ServiceDefinition name="classificationCloudService" xmlns="http://schemas.microsoft.com/ServiceHosting/2008/10/ServiceDefinition" schemaVersion="2015-04.2.6">
  <WorkerRole name="classificationWorker" vmsize="Small">
    <ConfigurationSettings>
      <Setting name="Microsoft.WindowsAzure.Plugins.Diagnostics.ConnectionString" />
      <Setting name="APPINSIGHTS_INSTRUMENTATIONKEY" />
    </ConfigurationSettings>
    <Certificates>
    </Certificates>
    <Imports>
      <Import moduleName="RemoteAccess" />
      <Import moduleName="RemoteForwarder" />
    </Imports>
    <Endpoints>
      <InputEndpoint name="Input" protocol="tcp" port="2000" localPort="2000" />
    </Endpoints>
  </WorkerRole>
</ServiceDefinition>
此程序的日志显示的IP与云服务的公共IP不同。但这可能是因为负载平衡

无论如何,我无法连接到已部署的实例,我很难找出原因。 我曾尝试使用云服务的公共IP和URL的主机段访问实例,但这两种情况都会导致连接超时

云服务将端口报告为rdp端口旁边的输入端点。RDP连接工作正常


非常感谢您的帮助。

您是否已经检查过此选项?是。链接中的询问者使用http://protocol前缀,我没有使用该前缀,错误消息不同。询问者收到一个名称\u未\u解决的错误,我收到一个连接超时。连接超时是由于它试图连接到该端点,但无法连接。你的要求是什么?这是你唯一的选择吗?您是否浏览了队列?是的,但它应该能够连接。同一个实例公开了RDP端口,我可以使用[WorkerName].cloudapp.net:3389连接到它。Netstat甚至显示了我的应用程序正在监听端口2000,我可以在VM上本地连接到它。但是,Azure之外的另一个应用程序由于某些原因无法访问该应用程序。应用程序从另一个应用程序接收图像。处理它并将其发送到另一个应用程序。延迟应该是最小的,所以这就是为什么我没有使用队列。您可以尝试将图像上载到blob存储,然后从那里进行处理。您是否已经选中此选项?是的。链接中的询问者使用http://protocol前缀,我没有使用该前缀,错误消息不同。询问者收到一个名称\u未\u解决的错误,我收到一个连接超时。连接超时是由于它试图连接到该端点,但无法连接。你的要求是什么?这是你唯一的选择吗?您是否浏览了队列?是的,但它应该能够连接。同一个实例公开了RDP端口,我可以使用[WorkerName].cloudapp.net:3389连接到它。Netstat甚至显示了我的应用程序正在监听端口2000,我可以在VM上本地连接到它。但是,Azure之外的另一个应用程序由于某些原因无法访问该应用程序。应用程序从另一个应用程序接收图像。处理它并将其发送到另一个应用程序。延迟应该是最小的,因此我没有使用队列。您可以尝试将图像上载到blob存储,然后从那里进行处理。
IPEndPoint ep = RoleEnvironment.CurrentRoleInstance.InstanceEndpoints["Input"].
TcpListener listener = null;
try
{
    listener = new TcpListener(ep);
    listener.ExclusiveAddressUse = false;
    Console.WriteLine(string.Format("starting server on {0}:{1}", ep.Address.ToString(), ep.Port));
    listener.Start();
}
catch(SocketException e )
{
    Console.WriteLine("unable to start server", e.Message);
    return;
}