首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > .NET > .NET Framework >

求 思路.该如何解决

2012-01-30 
求 思路...各位大哥,先谢为敬.客户端开源,需要 搭建 服务端。请问应该如何 设计服务端?.net web Server?(貌

求 思路...
各位大哥,先谢为敬.

客户端开源,需要 搭建 服务端。请问应该如何 设计服务端?
.net web Server?(貌似也不是)

求 思路...

客户端发的请求信息
Request: 

XML code
<?xml version="1.0" encoding="UTF-8"?> <o:gupdate xmlns:o="http://www.google.com/update2/request" protocol="2.0" version="1.2.183.7" ismachine="0"      machineid="{B421053D-AA39-418A-B6C3-123456789ABC}" userid="{422ED4F2-699D-49E1-9D60-123456789ABC}"      requestid="{D7E8D72F-C657-4119-AA48-123456789ABC}">   <o:os platform="win" version="5.1" sp="Service Pack 2"/>   <o:app appid="{430FD4D0-B729-4F61-AA34-91526481799D}" version="1.2.183.7" lang="en" brand="GGLS"       client="" installage="32" installsource="scheduler">     <o:updatecheck tag="beta"/>   </o:app>   <o:app appid="{8A69D345-D564-463C-AFF1-A69D9E530F96}" version="2.0.172.37" lang="en" brand="GGLS"       client="" installsource="scheduler">     <o:updatecheck/>     <o:ping active="1"/>   </o:app> </o:gupdate> 


服务端回复
Response (positive): 
XML code
<?xml version="1.0" encoding="UTF-8"?> <gupdate xmlns="http://www.google.com/update2/response" protocol="2.0">   <daystart elapsed_seconds="59892"/>   <app appid="{430FD4D0-B729-4F61-AA34-91526481799D}" status="ok">     <updatecheck status="noupdate"/>   </app>   <app appid="{8A69D345-D564-463C-AFF1-A69D9E530F96}" status="ok">     <updatecheck Version="2.0.172.37" arguments="--do-not-launch-chrome"         codebase="http://cache.pack.google.com/edgedl/chrome/install/172.37/chrome_installer.exe"         hash="NT/6ilbSjWgbVqHZ0rT1vTg1coE=" needsadmin="false" onsuccess="exitsilentlyonlaunchcmd"         size="9614320" status="ok"/>     <ping status="ok"/>   </app> </gupdate> 


[解决办法]
帮顶一下吧~~~~~~~~~~~~~
[解决办法]
XMPP?

1. 搞懂TCP通信
2. 搞懂高负载的TCP服务器写法,而不是网上常见的那种只能应付服务器长连接1个或者5、6个客户端的写法。
[解决办法]
如果你使用http接入(例如使用asp.net的ashx或者aspx),服务器端回复你那种xml是没有问题的。问题是客户端请求必须包括http协议头信息。

所以大概涉及http通信的方法不适合你的服务架构。
[解决办法]
如果你可以为客户端制定协议规范,我建议你将客户端请求信息也提供另外一种形式,就是将你的消息体放到http post协议的消息体中。

服务器可以同时监听tcp协议和http协议的消息。这样,使用javasript等脚本语言的程序也可以轻松访问服务器。
[解决办法]
mark

[解决办法]
帮忙顶

热点排行