介绍一下maria项目接口重构实现的主要框架
1. 首先是程序的入口点
def main():
Application("%(prog)s [OPTIONAL_ARGUMENTS] [APP_MODULE]").run()
通过这个参数可以在程序的 help 列表中显示一个 usage: 程序名 [OPTIONAL_ARGUMENTS] [APP_MODULE]
的使用方法提示。
2. 构造接口类
class Application(object):
def __init__(self, usage=None, prog=None):
def init_log(self):
def load_config(self):
def load_worker(self):
def run(self):
在 method load_config
综合管理程序接口的各种参数,另外加载实例化的 app。load_worker
加载要选择的 worker。 run
服务器启动入口。
3. worker 类
增加 maria/worker 目录,base.py 里构造 worker 的基类。在 socket.py 和 ggevent 分别构造两个 worker 子类 socketserver 和 geventserver,这两个类分别使用 TCPServer 和 StreamServer 作为 server。
|---worker
| |---__init__.py
| |---base.py
| |---socket.py
| |---ggevent.py
4. 其它
maria/config.py
maria/loader.py
对 config.py 和 loader.py 中的一些应用函数进行重构和删改。