我尝试使用推送模型编写一个聊天应用程序,但到目前为止,我仅在具有自托管 wcf 服务(使用双工 net.tcp)的 Intranet 环境中这样做。现在我想把这个服务器放在IIS7中上线。我已经咨询了一些托管提供商,但他们都回复了这样的话:“不,我们没有激活 net.tcp,我们可能永远不会激活它”。为什么他们如此不愿意这样做?看来我必须拥有自己的虚拟服务器?但是,我在 IIS7 中使用 net.tcp 面临哪些风险?我还有什么其他选择?我已经检查了“WebSockets”,但它似乎还没有准备好,我不确定它是否是我的情况的解决方案。我不是在编写 HTML5 聊天,而是在桌面上编写窗口聊天。
Im trying to write a chat app with the push-model but up to now I have only done so in a intranet-environment with a self-hosted wcf-service (using duplex net.tcp). Now I want to place this server online in IIS7. I have checked with a number of hosting providers but all have replied with something like: "No we dont have net.tcp activated and we probably never will activate it". Why are they so reluctant in doing so? It seems I have to get my own virtual server? But what risks am I facing using net.tcp for IIS7? What other options do I have? I have checked out "WebSockets" but it doesnt seem to be ready yet and Im not sure if its a solution in my case. Im not writing a HTML5-chat but a windowed chat for the desktop.
发布评论
评论(2)
嗯,有一些潜在的问题
请注意,您可以使用 HTTP 进行双工通信,使用 WSDualHttpBinding
Well there are a few potential problems
Note that you can use HTTP for duplex communications, using WSDualHttpBinding
我认为不支持 Net.TCP 的主要原因是 IIS 6.0缺乏对非 HTTP 协议的支持,例如 Net。 TCP、命名管道、MSMQ 或 点对点。非 HTTP 协议需要使用 Windows Process Activation Services (WAS),这是在大多数共享托管提供商的舒适区之外。它是 IIS 7.0 及更高版本的组成部分,但 WAS 仍然是从提供商的技术角度来看,这是相当新的——他们仍然需要接受教育。希望时间和可能增加的需求(随着技术的吸收)能够解决这个问题。
I believe the main reason for not supporting Net.TCP is due to the fact that IIS 6.0 lacks support for non-HTTP protocols such as Net.TCP, named pipes, MSMQ or Peer-to-Peer. Non-HTTP protocols require using Windows Process Activation Services (WAS) which is outside the comfort zone of most shared hosting providers. It is an integral part of IIS 7.0 and onwards, but WAS is still rather new from the provider's technological point of view - they still need to be educated. Hopefully, time and possibly increased demand (as the technology is assimilated) will take care of that.