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

有哪位高手用VB写过http代理服务器,WEB服务器(类似IIS)

2013-08-20 
有谁用VB写过http代理服务器,WEB服务器(类似IIS)如何做到控制连接数量,并且可以在服务器压力减轻后按个处

有谁用VB写过http代理服务器,WEB服务器(类似IIS)
如何做到控制连接数量,并且可以在服务器压力减轻后按个处理缓冲池
比方控制最大连接数量10
超过的就加入缓充池,一旦连接数量10个中有部分关闭之后,就授受缓充池中的任务
相当于如果同时100个人请求网站,服务器可能会好多连接请求失败,而用了缓充池后
客户端就会显示类似正在请求的状态,并没有断开,只是说图片显示慢一点了

[解决办法]
VB做出来的代理速度有点慢,gzip也是个麻烦
[解决办法]
感觉这东西用带行为管理的路由器就能搞定的样子。
[解决办法]
不用考虑用VB做这种事情了,不现实,这种东西从架构和效率上VB很难做到令人勉强接收的效果。
而且,http代理我就用VB实现过,从控件到自己用API异步的方式都试验过。最终的效果是会丢失很多
连接,比如单纯测试一两个或是多个连接是正常的,但是直接把IE的代理设置为自己的程序,访问
内容不多的本地iis服务网页没什么问题,但是如果网页中有很多图片和外部js或css,就经常丢失
元素,因为VB的速度和效率跟不上,所以不会过得了抗压测试。
而且,作为服务程序,在架构上也是很讲究的,即使是用VC来写,在架构上如果弄不好,同样会效率
跟不上,为了能更好更快的的实现服务,不单是讲究架构,还得讲究具体技术和过程,稍微不注意,
弄出来的东西就会有很多缺陷。
目前在 windows 中比较成熟的方案是用 IOCP,但 VB 要用这种架构架构并能做到稳定,可以说比用
VC 来写难度更大,时间更久,技术要求更高,甚至要对整个VB、COM、WIN32体系有很具体的认识和经
验才能这样实施,但最后即使弄出来,效率还是比VC的低,稳定性也是一直是个问号。
[解决办法]
看来我说的直接被无视了,唉
[解决办法]
静态web用Delphi写几行代码就可以搞个出来了。
[解决办法]
缓冲池这块相对来说比较简单些。当然做得完美还是需要花一些功夫。我觉得从请求然后答复这块,VB效率应该没有问题吧?因为确实不需要处理很多数据。只是一些Session这些的处理比较头痛一些,比如用户验证码可能永远不会正确。
缓冲池我有简单的例子,如果有需要可以交流下。
[解决办法]
很久没有上CSDN了,呵呵
[解决办法]

引用:
有没有用VB写个WEB服务器的呢

我写过呀,呵呵,还支持PHP和CGI接口呢。最后感觉简直就是个垃圾,没有任何实用价值,只能作为技术研究过程之一而已,而且最终感觉这样做根本只是绕了次远路而已。当你去了解NT服务、IOCP、ISAPI、GZIP这种WEB有关的技术之后,你就会发现,VB要完成这些技术的整合会很无力,而且这个过程很浪费时间。
[解决办法]
当然,FTP、SMTP、POP3、WHIOS、P2P等等我都有用VB去实现过,甚至是客户端都有在弄,包括浏览器的自己解码。最后总结的是,客户端VB可以勉强用一下,但服务器端用VB去弄就是浪费时间。
[解决办法]
只为抓包的话,HOOK NtDeviceIoControlFile
[解决办法]
引用:
并不会浪费时间,只是说VB6是太早的东西,很多功能还没有,如果是VB。NET 2008 2012之类,或许本身就内置了自动生成GIF图片,PNG,也可能几句话就能出来一个代理服务器,像是GZIP等解码,系统本身都自带了,可能一个函数就搞定,而且VB6,很多功能都要写一个到几个模块文件才能实现。




怎么样实现代理登陆时的验证呢?这个我试过用HTTP协议登陆路由器,这个登陆时就有一个账号和密码框要加密到HTTP HEADER才能登陆


按你的理论,哪还用自己去写代码,直接用现成的软件就可以了,最多用一下子类化处理一下UI或帮他封个壳,这样做最省事。再说了,也没那么多现成的模块给你用,不要想得太美好了。

至于你的问题,登录密码部分很简单,一看就知道是MIME编码,你自己抓个包解个码看看就知道他的格式了。只要按照用户名:密码的格式编码就解决了。至于处理连接交换那块,更加简单,就是些基本的逻辑问题,不管一次通讯会产生多少次事件,你只要明确 HTTP 头是以换行符号与冒号分割数据就可以很容易识别呀,只以“行”为单位处理 HTTP 头,以两个换行符号为基础识别 HTTP 头段落,其余的全是POST数据,这种简单的字符串与参数的识别过程,在VB里实现可以说再简单不过了,如果你觉得这种逻辑处理过程复杂,建议你去参考一下单片机上处理复杂的字符串命令是如何做的。单片机里通常只有128个字节的变量空间,最多再来个1K的扩展RAM,但如果说让单片机来分析HTTP头信息,可以说就那128个字节的变量空间都搓搓有余,这是为什么呢?应为处理过程的逻辑理念问题。先不说你可以在Windows用单片机的方式来做这种逻辑处理,就VB而言网上也很多这类分析处理过程,你可以去参考的呀。
[解决办法]
我这两天也在玩这个东西。
我的思路是这样的。
外网服务器上运行 S  监听两个端口“1800”和“123”   “1800”是给C连接  “123”给外网服务器IE连接
内网运行C  由C主动连接外网S的端口”1800“建立连接 ,当然C也会有监听端口 ”80“

当需要工作的时候  内网C 连接外网S”1800”端口,连同通后. IE访问外网 “123“端口,就可以看到内网C”80“的端口。
数据传输已经可以了,就是不能传输图片等文件,只能传输文本。

热点排行