greenev是一個基於greenlet協程,事件驅動,非阻塞socket模型的Python網絡服務框架,它使得能夠編寫同步的代碼,卻獲得異步執行的優勢。
本項目受到gevent, openresty, alilua, skynet, clowwindy/ssloop的啓發,在此表示感謝。 react
- reactor模式採用基於epoll, kqueue, poll, select的IO複用機制
- 基於底層的reactor完成上層greenlet協程的調度
- 在CentOS6.5, Ubuntu12.04, FreeBSD10.1, Windows7上測試經過
- 只需調用g.parent.switch掛起當前的協程,而無需管理其中的細節
測試前請修改以下系統參數(CentOS): git
- net.ipv4.tcp_syncookies = 1
- net.ipv4.tcp_tw_reuse = 1
- net.ipv4.tcp_tw_recycle = 1
- net.ipv4.tcp_fin_timeout = 30
- net.ipv4.tcp_keepalive_time = 1200
- net.ipv4.ip_local_port_range = 1024 65000
- net.ipv4.tcp_max_syn_backlog = 8192
- fs.file-max=65535
- net.ipv4.tcp_max_tw_buckets = 20000
- net.nf_conntrack_max = 65000
- net.netfilter.nf_conntrack_tcp_timeout_established = 1200
託管地址:https://github.com/Hevienz/greenevgithub