CherryPy
CherryPy team | |
2002 | |
| |
CherryPy Repository | |
编程语言 | Python |
类型 | Web应用 |
许可协议 | BSD许可证[3] |
网站 | cherrypy |
CherryPy
CherryPy
Python化 接 口
[编辑]这个项目创立
import cherrypy
class HelloWorld:
def index(self):
return "Hello World!"
index.exposed = True
cherrypy.quickstart(HelloWorld())
特 征
[编辑]CherryPy实现
- 遵循HTTP/1.1、WSGI
的 线程池 的 webserver[4]。典型 的 ,CherryPy自身 每 页只用 1–2ms[5][6]。 支持 任 何 任 何 其他启用WSGI的 web服 务器或 适配器 ,包括 Apache、IIS、lighttpd、mod_python、FastCGI、SCGI和 mod_wsgi。一 个原生 的 mod_python适配器 。多 个HTTP服 务器(就是有能 力 监听多 个端口 )[7]。一 个插件系 统[8],CherryPy插件挂钩到 在 服 务器进程内 的 事件 ,服 务器启动、服 务器关闭、服 务器退出 等 ,用 来 执行在 服 务器启动和 关闭时需要 运行的 代 码。内 建 工具 用 于缓存、编码、会 话、授权、静 态内容 和 其他。CherryPy工具 挂钩到 在 请求处理内 的 事件 。在 CherryPy服 务器收 到 一个请求的时候,它有一组特定的步骤要履行来处理这个请求。页面处理器 只 是 这个处理的 步 骤之一 。工具 还提供 语法和 配置 API来 为特定 集合 的 处理器 而打开和关闭它们。- 给开发者
和 部署 者 的 一个配置系统[9][10][11]。CherryPy部署 可 配置 于站点 上 、应用上 和 在 控 制 器 层面上 ,通 过Python字典 、配置 文 件 和 打 开文件 对象。 一 个完全的 测试套件用 于核心 功 能 和 有 关框架 ,可 以用来 测试CherryPy应用[12]。内 建 剖析自 从v2.1[13]、覆 盖[14]和 测试支持 。
CherryPy
可用 于CherryPy的 模 块
[编辑]- Routes,
一 个Ruby on Rails的 路 由 系 统的Python重 新 实现,用 于映射 URL到 控 制 器 /行 动和生成 URL[15]。
对象关系映 射 器
[编辑]- SQLAlchemy,
用 于Python应用的 一个数据库后端和ORM。 - SQLObject,
一 个流行 的 ORM用 于提供 到 数 据 库的对象接 口 。支持 很多常 见数据 库后端 :包括 在 发行中 的 有 MySQL、PostgreSQL、SQLite、Sybase SQL Server、MaxDB、Microsoft SQL Server和 Firebird。 - Storm,Canonical
公司 的 ORM。 - MongoEngine,
用 于连接 到 MongoDB的 ODM[16]。
模 板 语言
[编辑]- Mako[17],
用 Python写 的 模 板 库,可用 于简单的CherryPy工具 [18]。 - Cheetah,开源
模 板 引擎和代 码生成 工具 ,用 Python写 成 。 - CherryTemplate,CherryPy
的 模 板 语言。 - Genshi[19][20],
强力 的 XML模 板 引擎。 - Jinja,
通用 模 板 语言。CherryPy拥有使用 Jinja模 板 的 一 个工具 [21]。 - Kid,一个简单的模板语言,
用 于基于XML的 用 Python写 的 词汇表 。
参 见
[编辑]引用
[编辑]- ^ History of CherryPy. [2021-03-12]. (
原始 内容 存 档于2018-12-15). - ^ Release v18.8.0. 2022
年 7月 18日 [2022年 7月 18日 ]. - ^ cherrypy / CherryPy / source / cherrypy / LICENSE.txt. BitBucket. [2015-02-21]. (
原始 内容 存 档于2017-07-15). - ^
存 档副本 . [2021-03-12]. (原始 内容 存 档于2021-05-14). - ^ CherryPy v3 WSGI server benchmark results. [2009-09-23]. (
原始 内容 存 档于2016-03-03). - ^ How fast is CherryPy? 互联网档
案 馆的 存 檔,存 档日期 2010-02-10. - ^ How to set up multiple HTTP servers with CherryPy. [2009-09-23]. (
原始 内容 存 档于2016-03-03). - ^ Custom engine plugins with CherryPy 互联网档
案 馆的 存 檔,存 档日期 2009-05-03. - ^ Configuration system of CherryPy 互联网档
案 馆的 存 檔,存 档日期 2009-06-26. - ^ Configuration API of CherryPy 互联网档
案 馆的 存 檔,存 档日期 2009-07-01. - ^ Short summary of configuration options. [2021-03-12]. (
原始 内容 存 档于2010-08-18). - ^ How to test CherryPy itself 互联网档
案 馆的 存 檔,存 档日期 2009-09-27. - ^ Profiler module of CherryPy 互联网档
案 馆的 存 檔,存 档日期 2010-02-09. - ^ How to collect and the analyse coverage data of application code with CherryPy. [2009-09-23]. (
原始 内容 存 档于2015-11-17). - ^ Routes Documentation. [2021-03-13]. (
原始 内容 存 档于2019-11-28). - ^ mongoengine.org. [2021-03-13]. (
原始 内容 存 档于2021-01-17). - ^ Mako Templates for Python. [2021-03-12]. (
原始 内容 存 档于2021-05-11). - ^ A simple CherryPy tool for Mako templating. [2009-09-21]. (
原始 内容 存 档于2016-03-03). - ^ CherryPy – Genshi. [2009-09-26]. (
原始 内容 存 档于2012-07-04). - ^ Genshi - CherryPy Tools - Trac. [2009-09-26]. (
原始 内容 存 档于2012-02-27). - ^ A basic CherryPy Tool for using Jinja templates. [2009-09-23]. (
原始 内容 存 档于2015-09-05).