2012-05-14 32 views
2

就套接字服务器而言,我在网络部署方面有点困惑。c#套接字服务器 - 部署,启动,停止

本地运行,因为大多数的教程让你做一个服务器应用程序,并且我能够执行客户端应用程序的罚款。现在就完成所有这一切,我对此感到满意,但现在我想使用Web主机来尝试它。

如何将套接字服务器部署到我的虚拟主机,然后运行服务器?我只是上传程序到服务器并运行www.mywebpage.com/mysocketserver(假设该程序名为mysocketserver.exe)

听起来像一个愚蠢的问题,但我有一个脑死亡的时刻。

[编辑] 伟大的答案家伙谢谢。耻辱我只能将其中一个标记为答案。

回答

2

大多数托管服务都与网站相关:您将您的网站上传到他们的服务器,主机负责配置应用程序。

但是你没有写由Web服务器提供服务的网站,但一个套接字服务器,它更像是运行一个网站的Web服务器本身。

因此,您将需要一个主机,将允许你安装和运行应用程序,如Virtual Private Server服务,租用physical server或使用云服务,如Amazon EC2

你通常远程桌面或SSH连接到你是租用(或自己)上传和启动应用程序的服务器无论是作为一个正常的应用程序,服务或守护程序。

一旦你已经安装了插座服务器的主机服务器上,并开始运行的应用程序,你应该能够使用的IP地址为您的服务器和您正在运行的套接字服务器的端口联系您的服务。

例如,如果您的IP地址是10.0.0。1,并且您已经编写了套接字服务器以侦听端口1234,则应该能够联系地址为10.0.0.1:1234的服务。

考虑允许访问该端口的防火墙。

然后,您还可以使用DNS服务(如DynDns)为该IP地址分配域名。

+0

非常感谢你。我听说过亚马逊EC2,所以我认为这就是我下一个研究的地方。 – Gaz83

+0

不客气。不要忘记注册并接受最适合您的答案。 – Kynth

+0

我目前的虚拟主机每个月以19.99英镑(32.11美元)的价格购买虚拟专用服务器。所以我可能会接受这个选择。 – Gaz83

0

在互联网上的问题是路由/名称转换,使mywebpage被翻译成正确的IP地址。
您的网络服务器需要一个固定的公共IP地址,或者您需要使用像dynds这样的服务,它将动态地将您更改的IP地址映射到静态名称。

+0

好吧,为了争吵让我说我的网络服务器的IP地址是111.222.333.444。它会运行到111.222.333.444/myscocketserver吗? – Gaz83

+0

您已经编写了套接字服务器应用程序,而不是网站。它更可能在111.222.333.444:1234上运行,其中1234是您编写/配置套接字服务器侦听的端口,与Web服务器配置为在端口80上侦听http流量的方式相同。 – Kynth

+0

你如何在本地机器上运行它?由于您编写的应用程序类型,您需要租用一台与本地计算机非常相似的服务器,无论是Windows还是Linux/Unix。您通常使用远程桌面(或使用SSH)复制或正常安装文件,然后正常运行(或将其安装为服务/守护进程)。这种托管通常比租用一些处理时间来处理网站上的脚本更昂贵。 – Kynth

1

除非你的套接字服务器使用HTTP协议,否则你不能这么做。

您正在使用端口为您的服务器,对不对?端口用于标识要与哪个应用程序交谈。

当你使用浏览网页“http://something”你说真的让我可以在IP 1.2.3.4(DNS查找)使用端口80(这是注册HTTP)中发现的东西。您不必在浏览器中指定端口,因为所有浏览器都知道HTTP使用端口80.

因此,您真正应该做的是将套接字服务器放在主机上,并告诉您的客户/用户他们可以在主机“www.mywebpage.com”的端口XXX上连接到您的套接字服务器。

如果您已经构建了一个客户端,您只需对其中的端口进行硬编码或自动指定默认端口。

+0

好吧,现在我了解更多:-) – Gaz83