glance-0.1.7 分析(三)—— glance/common/wsgi.py

本文介绍了OpenStack中Glance项目的WSGI组件实现细节,包括使用的第三方库eventlet、routes和webob的作用,以及wsgi.py文件中定义的基础类如Server、Middleware、Router等的功能。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

首先看 glance-0.1.7/glance/common 目录下的代码,因为一般 common 下的代码对 glance 中其他

部分依赖较少,是作为基础组件来设置的,其他模块会用到这里提供的基础功能。


首先看 wsgi.py。该文件的主要功能是通过借助 eventlet、routes 和 webob 来实现的:

    eventlet     支持非阻塞IO;Python 社区里面大家比较推荐的高效框架,类似的还有 tornado 之类的

                      http://eventlet.net/

    routes        类似 Rails 中的 URL 映射的 Python 实现,用于在应用功能和 URL 之间建立映射关系

                      http://routes.readthedocs.org/en/latest/

    webob       用于给 WSGI 请求和响应对象加上封装,避免了使用上的复杂性

                      http://www.webob.org/

自己对这几个库都不熟悉,只是通过主页的介绍简单了解它们的角色。wsgi.py 就是通过这些库做实际

的工作,自己则简单封装,对外提供 WSGI 接口。


wsgi.py 中并不是单纯实现 WSGI 接口,这个已经可以由这几个库来支撑了。wsgi.py 中主要定义了几

个类,主要是通过封装来为 glance 提供 WSGI 环境

    class Server(object)
    class Middleware(Application)
    class Debug(Middleware)
    class Router(object)
    class Controller(object)
    class Serializer(object)

现在具体也不知道这些类有什么用处,等后面遇到的时候在看看实际的应用场合。



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值