当前位置: 首页 > 工具软件 > CherryPy > 使用案例 >

cherrypy@Tutorial 11:Organize my code

欧阳永宁
2023-12-01

CherryPy具有强大的体系结构,可帮助您以一种易于维护和更灵活的方式组织代码。

您可以使用几种机制,本教程将重点介绍三个主要机制:

  • dispatchers
  • tools
  • plugins

为了理解它们,让我们想象你是一个超级市场:

  • 你有几个收银台,人们在收银台前面排队(这就像是你的请求)
  • 你有食物和其他东西的各个部分(这些是你的数据)
  • 最后,你有超级市场人员和他们的日常任务,以确保部分始终有序(这是你的后端)

尽管非常简单,但这与您的应用程序的行为方式相差无几。 CherryPy可以帮助您以反映这些高级想法的方式构建应用程序。

Dispatchers

回到超市的例子,很可能你会想要根据不同情况执行操作:

  • 购买少于十件篮子的收银台
  • 为残疾人士提供服务的收银台
  • 为孕妇准备一个收银台
  • 有一个只能使用购物卡的收银台

为了支持这些用例,CherryPy提供了一种称为调度程序的机制。在请求处理期间尽早执行调度程序,以确定应用程序的哪一段代码将处理传入的请求。或者,继续商店类比,调度员将决定顾客到哪个收银台。

Tools

我们假设您的商店决定进行折扣狂欢活动,但仅限于特定类别的客户。 CherryPy将通过一种称为工具的机制来处理这种用例。

tools 是一段代码,它基于每个请求运行,以执行其他工作。通常,tools 是一个简单的Python函数,它在CherryPy请求过程中的给定点执行。

Plugins

正如我们所看到的,该商店有一群人致力于管理库存并处理任何客户的期望。

在CherryPy世界中,这转化为具有在任何请求生命周期之外运行的函数。这些函数应该处理后台任务,长期连接(例如对数据库的连接)等。

插件以这种方式调用,因为它们与CherryPy引擎一起工作并随着您的操作扩展它。

 类似资料:

相关阅读

相关文章

相关问答

相关文档