一直在网上听说web.py性能比较差,TPS才几十个。这个道听途说让我一度放弃了web.py。
对比了一圈python web framework
后,还是让我对web.py的simple和它的设计理念念念不忘。
机器介绍
机型:ThinkPad R400 笔记本
CPU:Intel(R) Core(TM)2 Duo CPU P8700 @ 2.53GHz
Mem: 2G
系统:Ubuntu11.04 32位操作系统
备注:服务器上没有python环境,所以只拿个人电脑做测试。
测试内容
输出当前时间信息
1. <%= new Date() %>
2. time.ctime()
对比测试数据
服务器 |
并发数量 |
TPS |
平均响应时间 |
Tomcat6 + JDK6 |
50 |
6519.29 |
7.67MS |
CherryPy + Webpy |
25 |
1328.56 |
18.82MS |
CherryPy + Webpy |
30 |
Fail |
Fail |
Lighttpd + Flup(FCGI) + Webpy |
25 |
1535.98 |
16.28MS |
Lighttpd + Flup(FCGI) + Webpy |
50 |
1546.11 |
32.339MS |
测试感受
1. webpy自带的CherryPy服务器性能也比传说的强多了,只是难以支撑高并发的请求。也难怪,本来就是一个用于开发的服务器,也不能要求太多;
2. Flup(FCGI)下,TPS达到1500左右,完全能够支撑一般应用的运营要求了;
3. 在专业服务器下,webpy fcgi tps自信能达到4-5k左右。足够了;
4. 和Java相比,确实存在一定差距,但是在开发效率上,远远快于Java;
5. web.py成为我日后web开发首选;
6. 凡事不要道听途说,需要眼见为实。
附上测试报告图片:
分享到:
相关推荐
总结来说,web.py提供了一个轻量级的Web开发框架,而flup则帮助你在服务器上以FastCGI方式运行web.py应用,提升性能和可扩展性。通过合理利用这两个工具,你可以构建高效、易于维护的Python Web应用。
8. **性能优化与安全考虑**:在生产环境中,可能需要考虑使用WSGI服务器(如uWSGI或Gunicorn)替代Web.py内置的开发服务器,以提高性能和稳定性。同时,应确保安装必要的安全补丁,考虑使用HTTPS加密通信,并限制...
1. **类型注解的添加**:为了与Python 3.7的类型系统兼容,`webpy-py3`可能在`web.py`的源码中添加了类型注解,以消除类型检查工具的警告或错误。 2. **语法更新**:可能更新了与新Python 3.7语法不兼容的部分,...
**web.py 中文教程概述** `web.py` 是一个轻量级、简洁且灵活的 Python Web 开发框架,它提供了一种快速构建 Web 应用程序的方法。本教程旨在为初学者提供关于 web.py 的详细指导,涵盖从基础应用到高级特性的全...
**webpy-0.36.tar.gz** 是一个包含Python Web框架web.py的源代码压缩包,版本为0.36。web.py以其简洁而强大的特性,在Python Web开发领域受到许多开发者的青睐。这个框架旨在简化Web应用的构建,同时提供足够的灵活...
3. **缓存机制**:对于访问频繁的页面,可以使用缓存来提高性能,如使用Web.py的`cache`模块或第三方库如Redis。 4. **错误处理**:合理地处理可能出现的异常,提供友好的错误提示页面。 **总结** 基于Web.py的...
### web.py 英文手册知识点概述 #### 一、web.py 概览 web.py 是一个简洁而强大的 Python Web 框架,它提供了一种...这些组件共同构成了 web.py 强大的功能体系,使得开发者能够轻松地开发出高性能的 Web 应用程序。
web.py 是一个轻量级的 Python Web 框架,而 Redis 是一个高性能的键值存储系统,常用于缓存、数据库以及消息队列等场景。 【描述】“计算机毕设源码”指的是该压缩包包含了一套完整的计算机科学毕业设计项目代码。...
《Webpy-coobook-pdf中文教程》是一份详尽的指南,专为希望深入了解Web.py框架的开发者准备。Web.py是一个轻量级的Python Web框架,以其简洁性和灵活性著称,适用于构建各种规模的Web应用程序。这份教程覆盖了从基础...
总之,`google_api_python_client-1.7.0-py2.py3-none-any.whl`是Python开发者连接Google API的强有力工具,无论是在桌面应用、Web服务还是服务器端脚本中,都能发挥其作用。通过这个库,开发者可以专注于业务逻辑,...
总的来说,pyOpenSSL是Python开发者处理SSL/TLS和加密任务的得力工具,它为Python应用程序提供了强大的安全功能,保障了网络通信的安全性。无论是在开发后端服务还是构建客户端应用,pyOpenSSL都是一个值得信赖的库...
7. 性能优化:对于处理大量数据的库来说,性能优化是关键。Toad可能包含了一些优化策略,以确保在处理大数据时仍能保持高效的性能。 为了深入了解Toad库的功能和用法,我们需要查看其官方文档或源代码。通常,...
**Python库Pyro4-4.42-py2.py3-none-any.whl详解** Pyro4是一个强大的Python远程对象接口库,它允许你通过网络透明地进行对象间通信。这个压缩包`Pyro4-4.42-py2.py3-none-any.whl`包含了Pyro4库的4.42版本,支持...
**Python库jam.py-4.0.74详解** ...总的来说,jam.py是一个功能齐全且易用的Python Web框架,适合快速构建小型到中型的Web应用。通过深入理解其工作原理和特性,开发者可以有效地提高开发效率和代码质量。
1. **Python 3.7**:Web2Py的这个版本兼容Python 3.7,这是Python的一个重要版本,提供了许多性能优化和新特性。Python 3.7引入了类型注解的改进、数据类、更严格的变量赋值检查等,这些都对Web2Py的开发体验有所...
"DjangoWeb.zip"这个压缩包提供了关于Django框架的深度学习资料,涵盖了Django的基础概念、项目结构、数据库操作、模板系统、表单处理以及安全性和性能优化等多个方面,对于想要深入学习和实践Django的开发者来说,...
Python库boto3是Amazon Web Services (AWS)的官方SDK,用于Python开发人员。这个whl文件("boto3-1.14.52-py2.py3-none-any.whl")是一个预编译的软件包,适用于Python 2和Python 3,它包含了与AWS服务交互所需的...
总结来说,Python for Web2Py为Web开发提供了一个强大而灵活的工具,尤其适合那些寻求快速开发和简单部署的项目。通过深入理解Web2Py的特性和工作原理,开发者能够充分利用这个框架来构建高性能、安全的Web应用。
`jam.py` 是一个用于简化Web应用程序开发的Python库,它提供了一种高效、灵活且易于使用的框架,以帮助开发者快速构建动态网站和API。版本2.0.3是这个库的一个稳定版本,包含了一系列改进和修复,以增强其功能和用户...