friendlydb є швидко і невелике, число прихильників / послідовників база даних, написана в Python & NBSP ;. Він може використовуватися або безпосередньо з вашого коду Python або по HTTP з невеликим веб-API.
FriendlyDB не призначений, щоб бути повною системою користувача; він повинен бути використаний, щоб збільшити існуючу систему для відстеження відносини.
Використання
Використання FriendlyDB з Python виглядає наступним чином:
від friendlydb.db імпорту FriendlyDB
# Дайте дружніх каталог для роботи.
FDB = FriendlyDB ('/ USR / даних / дружнім ")
# Візьміть користувача по імені користувача.
Даніель = FDB ['Даніель']
# Дотримуйтесь пару користувачів.
daniel.follow («Аліса»)
daniel.follow ('Bob')
daniel.follow ('Джо')
# Перевірте наступне.
daniel.following ()
# Повертає:
# [
# 'Аліса',
# 'Bob',
# 'Joe',
#]
# Перевірка послідовників Джо.
FDB ['Джо']. Послідовників ()
# Повертає:
# [
# 'Даніель',
#]
# Відписатися.
daniel.unfollow ('Bob')
# Перевірте наступне.
daniel.following ()
# Повертає:
# [
# 'Аліса',
# 'Joe',
#]
# Пил і Nuke все з орбіти.
fdb.clear ()
Використання FriendlyDB від HTTP виглядає (всі замикає косі риси не обов'язково):
# В однієї оболонки, запустити сервер.
Python friendlydb / server.py
# З іншого, запустити кілька URL-адрес.
локон -X GET http://127.0.0.1:8008/
# {"Версія": "0.3.0"}
локон -X GET http://127.0.0.1:8008/daniel/
# {"Ім'я користувача": "Даніель", "після": [], «послідовники»: []}
згорнутися -X POST http://127.0.0.1:8008/daniel/follow/alice/
# {"Ім'я користувача": "Даніель", "other_username": "Аліса", "послідував": правда}
згорнутися -X POST http://127.0.0.1:8008/daniel/follow/bob/
# {"Ім'я користувача": "Даніель", "other_username": "Боб", "послідував": правда}
згорнутися -X POST http://127.0.0.1:8008/daniel/follow/joe/
# {"Ім'я користувача": "Даніель", "other_username": "Джо", "послідував": правда}
згорнутися -X POST http://127.0.0.1:8008/daniel/unfollow/joe/
# {"Ім'я користувача": "Даніель", "other_username": "Джо", "unfollowed": правда}
локон -X GET http://127.0.0.1:8008/daniel/
# {"Ім'я користувача": "Даніель", "після": ["Аліса", "Боб"], «послідовники»: []}
локон -X GET http://127.0.0.1:8008/daniel/is_following/alice/
# {"Ім'я користувача": "Даніель", "other_username": "Аліса", "is_following": правда}
локон -X GET http://127.0.0.1:8008/alice/is_followed_by/daniel/
# {"Ім'я користувача": "Аліса", "other_username": "Даніель", "is_followed_by": правда}
локон -X GET http://127.0.0.1:8008/alice/is_followed_by/joe/
# {"Ім'я користувача": "Аліса", "other_username": "Джо", "is_followed_by" брехня}
Установка
Використання PIP, ви можете встановити його з ПГИ встановити friendlydb.
Продуктивність
Ви можете сфери з продуктивності FriendlyDB в для себе, виконавши додається benchmark.py сценарій.
У тестах на 2011 MacBook Pro (i7), тест сценарій продемонстрував:
- Створено 1000000 відносин між 10000 користувачів: 7.3 хвилин
- AVG час, щоб принести послідовників користувача: 0,0008 секунд
- Ніколи не перевищує 40Mb ОЗУ RSS
ходових випробувань
friendlydb підтримується з проходженням тестів на всі часи. Просто запустіть:
Python -m тести unittest2
Вимоги
- Python
- (Необов'язково) gevent для сервера HTTP
- (Необов'язково) unittest2 для запуску тестів
Коментар не знайдено