daknob/TorPaste

Multiple Backends

Opened this issue · 2 comments

Currently TorPaste supports a single backend, and that is the local (or mounted) filesystem. Alternatives can include (Document) Databases, Object Stores, etc.

Currently TorPaste can be easily set up in a HA Environment since it does not rely on a single component and more web servers can be started at will. In addition to that, a distributed filesystem can solve the backend problem.

Therefore, ideally, we'd want to implement HA-ready solutions first.

Ideas for backends

  • MySQL
  • PostgreSQL
  • Google Cloud Storage
  • Amazon S3
  • Apache Cassandra
  • Google Cloud Datastore
  • Azure Table Storage
  • MongoDB

I just pushed some code that makes it very easy to add new backends. In the folder /backends there's an example.py file which you can start editing to create the backend of your choosing. The filesystem.py backend is already implemented and you can use it as an example. I will be updating the main issue here with some suggestions, however feel free to add your own.

Please note: currently only the filesystem backend is active since this is the only one. As soon as more are available, and hopefully after Issue #10 has been closed, I will add some code to allow the user to select the backend they want.