comment server implemented in python to host comments on lbry
Find a file
2019-05-23 06:36:03 -04:00
config Refactor + fault-tolerance 2019-05-21 15:13:08 -04:00
schema Moves table declaration in DDL so table drops happen properly when needed 2019-05-23 06:33:07 -04:00
src Forces errors to propogate correctly in main runner 2019-05-23 06:34:50 -04:00
tests Adds module to run unittests on the server 2019-05-23 06:36:03 -04:00
LICENSE.md Create LICENSE.md 2019-05-21 08:17:10 -04:00
README.md update in readme 2019-05-21 15:16:17 -04:00
requirements.txt Adds the requests module as a module to run unittests on the server 2019-05-23 06:35:50 -04:00
schema.png Adds readme 2019-05-21 08:13:34 -04:00

LBRY Comment Server v2

This is a rewrite & update of the server written by myself and Grayson Burton here

Install & Setup

Clone the repo and install a virtual environement:

# clone the repo
$ git clone https://github.com/osilkin98/comment-server

# create a virtual environment in any (current) version of python3.X
$ virtualenv --python=python3 venv
$ source venv/bin/activate 

# install the dependencies
(venv) $ pip install -r requirements.txt

Running the server

Just run: (venv) $ python -m src.main.py and it should run automatically.

Schema

schema

About

A lot of the design is more or less the same with the original, except this version focuses less on performance and more on scalability.

Rewritten with python because it's easier to adjust and maintain. Instead of doing any multithreading, this implementation just delegates a single database connection for write operations.

The server was originally implemented with aiohttp and uses aiojobs for scheduling write operations. As pointed out by several people, Python is a dinosaur in comparison to SQLite's execution speed, so there is no sensibility in multi-threading from the perspective of the server code itself.