所以,我决定用python3编写我的下一个项目,为什么?由于Ubuntu计划在明年逐步放弃所有Python2支持并且只支持Python3。 (从Ubuntu 13.04开始)
gevent和memcached模块没有正式移植到Python3。
对于gevent和pylibmc或python-memcached,有哪些替代品已正式移植到Python3上?
答案 0 :(得分:4)
Circuits现在支持Python 3,尝试它很棒。
答案 1 :(得分:1)
对于memcached你可能知道替代方案:redis + python3
答案 2 :(得分:0)
我陷入了同样的困境。
它的核心是greenlet 0.4.0
,它在python 3中可用,但不是完整的库(gevent
,evenlet
或concurrence
)。
有一些尝试迁移它,但没有运气。
您可以在此网站查看套餐供应情况:http://py3ksupport.appspot.com/pypi/greenlet
如果我找到任何替代方案,我会通知你。
答案 3 :(得分:0)
pymemcache:一个全面,快速,纯Python的memcached客户端。
与其他客户的比较
pylibmc
pylibmc库是libmemcached的包装器,在中实现 C.它很快,实现一致的哈希,完整的memcached 协议和超时。它不提供访问“noreply” 旗。它也不是纯Python,所以将它与库一起使用 gevent是不可能的,它依赖于libmemcached 提出了挑战(例如,它必须建立在同一版本的基础上 libmemcached它将在运行时使用。)
Python的内存缓存
python-memcache库实现了整个memcached文本 协议,所有套接字调用都有一个超时,并具有灵活性 序列化和反序列化的方法。它也写了 完全在Python中,所以它适用于像gevent这样的库。 但是,它与使用线程本地绑定有关,没有实现 “noreply”,不能将错误视为缓存未命中并且比两者都慢 pylibmc和pymemcache。它也与特定的方法有关 处理memcached服务器集群。