2013-03-25 13 views
10

Tak więc, zdecydowałem się napisać kolejny projekt z python3, dlaczego? Ze względu na plan, aby system Ubuntu stopniowo obniżał wszystkie wsparcie dla Python2 w ciągu najbliższego roku i obsługuje tylko Python3. (Począwszy od Ubuntu 13.04)Python3: Szukasz alternatyw dla gevent i pylibmc/python-memcached

gevent i memcached moduły nie są oficjalnie przeniesione do Python3.

Jakie są alternatywy, już oficjalnie przeniesione do Python3, dla gevent i pylibmc lub python-memcached?

Odpowiedz

0

Utknąłem w tym samym punkcie.

jego rdzeń jest greenlet 0.4.0, który jest dostępny w Pythonie 3, ale nie pełne biblioteki (gevent, evenlet lub concurrence).

Są pewne próby migracji, ale bez powodzenia.

można sprawdzić dostępność pakietów na tej stronie: http://py3ksupport.appspot.com/pypi/greenlet

Jeśli znajdę żadnej alternatywy byłoby wam znać.

+0

py3ksupport już nie ma :( – Druska

4

Circuits ma teraz obsługę Pythona 3, spróbuj, jest świetny.

+0

+1 Spojrzałem na niego. Nie głęboko tho. Postaram toczenia z tym i zgłaszać wnioski :) – Nadav

1

dla memcached zapewne wiecie alternatywa: Redis + python3

+0

ten nie dostarcza odpowiedzi na pytanie. Aby skrytykować lub poprosić o wyjaśnienie od autora, pozostaw komentarz pod swoim postem. –

+0

To jest częściowe, ale odpowiedź 1/2 pytania o memcached –

+0

Dzięki, ważne jest, aby zwrócić uwagę na alternatywy. Jednak w moim przypadku nie mogę używać redis. – Nadav

0

pymemcache: Kompleksowa, szybka, czysta-Python memcached klient.

Porównanie z innymi klientami

pylibmc

Biblioteka pylibmc jest owinięcie wokół libmemcached, realizowany w C. Jest szybki, realizuje spójną hashowania, pełną memcached protokołu i limity czasu. Nie zapewnia dostępu do flagi "noreply" . To także nie jest czysty Python, więc używanie go z bibliotekami takimi jak gevent jest wykluczone, a jego zależność od libmemcached stawia wyzwania (np. Musi być zbudowana przeciwko tej samej wersji libmemcached, której będzie używać w czasie wykonywania).

Pythona memcache

Biblioteka pyton-memcache realizuje protokół cały tekst memcached ma jeden przedział czasowy dla wszystkich połączeń wtyczkowych i posiada elastyczny podejście do serializacji i deserializacji. Jest również napisany w całości w języku Python, więc działa dobrze z bibliotekami takimi jak gevent. Jednak jest to związane z używaniem lokacji wątku, nie implementuje "noreply", nie może traktować błędów jako pomyłek w pamięci podręcznej i jest wolniejsze niż obydwa pylibmc i pymemcache. Jest również powiązany z określoną metodą do obsługi klastrów memcached serwerów.

Powiązane problemy