用 Python 写了个 web server,求测试

2015-09-28 21:52:34 +08:00
 wangleineo
写了一个极简单的 web server ,支持:

- 静态文件(相当于标准库 SimpleHTTPServer )
- WSGI 应用 (简单的 WSGI Server )
- 代理到其他 web 服务
- 多线程 /多进程处理请求

## 代码 ##
[https://github.com/RealHacker/python-gems/tree/master/http_server]( https://github.com/RealHacker/python-gems/tree/master/http_server)

## 配置文件 ##

{
"server":{
"ip": "127.0.0.1",
"port": 8000,
"mode": "thread"
},
"routes":{
"/app": {
"type": "wsgi",
"application": "D:/Workspace/Example/wsgi.py"
},
"/app/static": {
"type": "static",
"dir": "D:/workspace/static/"
},
"/app/proxy": {
"type": "proxy",
"proxyurl": "http://www.qq.com/"
}
}
}

设置好 config.json 后,即可执行:

python web_server.py

这个是自己写的原型,所以一定有很多没考虑到的问题,希望有兴趣的可以帮忙跑一下,看看有什么 bug ,或者直接点评代码。良辰在此先行谢过。
2781 次点击
所在节点    分享创造
7 条回复
noli
2015-09-29 12:39:37 +08:00
这种测试服务器的事情,自己写个脚本压测一下就什么问题都可以发现了啦……
hiroya
2015-09-29 13:15:35 +08:00
…… Windows 目录……看了下代码, Linux 应该兼容吧………_(:3 」∠)_
wangleineo
2015-09-29 13:38:20 +08:00
@noli 不是测性能 是测功能
@hiroya Linux 可以
sengxian
2015-10-02 17:38:51 +08:00
@wangleineo 安新系统时刚好用了下你的服务器,还不错 http://seng.ink/app-store-os-x-el-captian
wangleineo
2015-10-02 20:55:56 +08:00
@sengxian 多谢支持!
saber000
2015-10-09 09:58:23 +08:00
proxy 模式下对头部处理会有点问题:
1. 把请求的 cookie 删掉是否不合适?
2. 返回不光要去掉 content-encoding 和 transfer-encoding,可以参考:
https://github.com/MrLYC/post_proxy/blob/master/proxy/server.py#L85
wangleineo
2015-10-09 20:39:41 +08:00
@saber000 受教!

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/224349

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX