friendlydb es un siguiente base de datos rápida y pequeña / seguidores escrito en Python. & Nbsp; Se puede utilizar ya sea directamente desde el código Python o a través de HTTP con pequeña API web.
FriendlyDB no está destinado a ser un sistema de usuario completo; que debe ser usado para aumentar un sistema existente para el seguimiento de relaciones.
Uso
Utilizando FriendlyDB de Python se ve así:
desde FriendlyDB importación friendlydb.db
# Dale friendly un directorio para trabajar.
fdb = FriendlyDB ('/ usr / data / friendly')
# Coge un usuario por su nombre de usuario.
daniel = fdb ['Daniel']
# Siga un par de usuarios.
daniel.follow ('Alice')
daniel.follow ('bob')
daniel.follow ('joe')
# Compruebe lo siguiente.
daniel.following ()
Devoluciones #:
# [
# 'Alice',
# 'Bob',
# 'Joe',
#]
# Compruebe los seguidores de joe.
fdb ['joe']. seguidores ()
Devoluciones #:
# [
# 'Daniel',
#]
# Dejar de seguir.
daniel.unfollow ('bob')
# Compruebe lo siguiente.
daniel.following ()
Devoluciones #:
# [
# 'Alice',
# 'Joe',
#]
# Desempolvar y todo lo nuclear desde la órbita.
fdb.clear ()
Utilizando FriendlyDB de HTTP se parece (todos los barras al final son opcionales):
# En un shell, inicie el servidor.
python friendlydb / server.py
# De otro, ejecute algunos URLs.
rizo -X GET http://127.0.0.1:8008/
# {"Versión": "0.3.0"}
rizo -X GET http://127.0.0.1:8008/daniel/
# {"Nombre de usuario": "daniel", "siguiente": [], "seguidores": []}
rizar -X POSTE http://127.0.0.1:8008/daniel/follow/alice/
# {"Nombre de usuario": "daniel", "other_username": "Alice", "siguió": true}
rizar -X POSTE http://127.0.0.1:8008/daniel/follow/bob/
# {"Nombre de usuario": "daniel", "other_username": "bob", "siguió": true}
rizar -X POSTE http://127.0.0.1:8008/daniel/follow/joe/
# {"Nombre de usuario": "daniel", "other_username": "joe", "siguió": true}
rizar -X POSTE http://127.0.0.1:8008/daniel/unfollow/joe/
# {"Nombre de usuario": "daniel", "other_username": "joe", "unfollowed": true}
rizo -X GET http://127.0.0.1:8008/daniel/
# {"Nombre de usuario": "daniel", "siguiente": ["alice", "bob"], "seguidores": []}
rizo -X GET http://127.0.0.1:8008/daniel/is_following/alice/
# {"Nombre de usuario": "daniel", "other_username": "Alice", "is_following": true}
rizo -X GET http://127.0.0.1:8008/alice/is_followed_by/daniel/
# {"Nombre de usuario": "Alice", "other_username": "daniel", "is_followed_by": true}
rizo -X GET http://127.0.0.1:8008/alice/is_followed_by/joe/
# {"Nombre de usuario": "Alice", "other_username": "joe", "is_followed_by": false}
Instalación
Utilizando pip, puede instalarlo con pip install friendlydb.
Rendimiento
Puede alcance a cabo la actuación de FriendlyDB por sí mismo mediante la ejecución del script benchmark.py incluido.
En pruebas con un MacBook Pro 2011 (i7), el guión de referencia demostró:
- Creado 1.000.000 relaciones entre 10.000 usuarios: 7,3 minutos
- Promedio de tiempo para ir a buscar los seguidores de un usuario: 0,0008 segundos
- Nunca superior a 40Mb de RAM RSS
Pruebas Operando
friendlydb se mantiene con el paso de pruebas en todo momento. Basta con ejecutar:
pruebas unittest2 -m python
Requisitos :
- Python
- (Opcional) GEvent para el servidor HTTP
- (Opcional) unittest2 para ejecutar pruebas
Comentarios que no se encuentran