friendlydb ist eine schnelle und kleine Anhänger / Anhänger Datenbank in Python geschrieben. & Nbsp; Es kann entweder direkt von der Python-Code oder über HTTP mit kleinen Web-API verwendet werden.
FriendlyDB soll nicht eine vollständige Benutzersystem sein; sollte verwendet werden, um ein bestehendes System, um Beziehungen zu verfolgen erweitern werden.
Verwendung
Mit FriendlyDB von Python wie folgt aussieht:
von friendlydb.db Import FriendlyDB
# Geben Sie freundlich ein Verzeichnis zu arbeiten in.
fdb = FriendlyDB ('/ usr / data / freundlich)
# Schnappen Sie sich ein Benutzer durch ihre Benutzernamen ein.
daniel = fdb ['daniel']
# Beachten Sie ein paar Benutzer.
daniel.follow ('Alice')
daniel.follow ('bob')
daniel.follow ('joe')
# Überprüfen Sie Folgendes.
daniel.following ()
# Rücksendungen:
# [
# "Alice"
# 'Bob',
# 'Joe',
#]
# Prüfen joe Anhänger.
fdb ['joe']. Anhänger ()
# Rücksendungen:
# [
# "Daniel"
#]
# Nicht folgen.
daniel.unfollow ('bob')
# Überprüfen Sie Folgendes.
daniel.following ()
# Rücksendungen:
# [
# "Alice"
# 'Joe',
#]
# Entstauben Sie & Nuke alles aus dem Orbit.
fdb.clear ()
Mit FriendlyDB von HTTP aussieht (alle Schrägstriche sind optional):
# In einer Schale auf, den Server zu starten.
python friendlydb / server.py
# Von einem anderen, führen Sie einige URLs.
curl -X GET http://127.0.0.1:8008/
# {"Version": "0.3.0"}
curl -X GET http://127.0.0.1:8008/daniel/
# {"Username": "daniel", "nach" [] "Anhänger": []}
curl -X POST http://127.0.0.1:8008/daniel/follow/alice/
# {"Username": "daniel", "other_username": "alice", "verfolgt": true}
curl -X POST http://127.0.0.1:8008/daniel/follow/bob/
# {"Username": "daniel", "other_username": "bob", "folgen": true}
curl -X POST http://127.0.0.1:8008/daniel/follow/joe/
# {"Username": "daniel", "other_username": "Joe", "folgen": true}
curl -X POST http://127.0.0.1:8008/daniel/unfollow/joe/
# {"Username": "daniel", "other_username": "Joe", "unfollowed": true}
curl -X GET http://127.0.0.1:8008/daniel/
# {"Username": "daniel", "folgt": ["alice", "bob"], "Anhänger": []}
curl -X GET http://127.0.0.1:8008/daniel/is_following/alice/
# {"Username": "daniel", "other_username": "alice", "is_following": true}
curl -X GET http://127.0.0.1:8008/alice/is_followed_by/daniel/
# {"Username": "alice", "other_username": "daniel", "is_followed_by": true}
curl -X GET http://127.0.0.1:8008/alice/is_followed_by/joe/
# {"Username": "alice", "other_username": "Joe", "is_followed_by": false}
Installation
Mit pip, können Sie es mit pip installieren friendlydb.
Leistung
Sie können Rahmen aus FriendlyDB Leistung für sich selbst, indem Sie das Skript enthalten benchmark.py.
Bei Tests auf einem MacBook Pro 2011 (i7) zeigte der Benchmark-Skript:
- Erstellt eine Million Beziehungen zwischen 10.000 Benutzer: 7,3 Minuten
- Avg Zeit, um Anhänger eines Benutzers zu holen: 0,0008 Sekunden
- Nicht mehr als 40MB RAM RSS
Ausführen von Tests
friendlydb mit, die die Prüfungen jederzeit gewährleistet. Führen Sie einfach:
python -m unittest2 Tests
Anforderungen :
- Python
- (Optional) gevent für den HTTP-Server
- (Optional) unittest2 für die Ausführung von Tests
Kommentare nicht gefunden