Daniel Banks (2107922)

Python Framework to handle Pub/Sub and Database Interactions

Photo

Project Abstract

After doing a year placement, one thing I discovered early on was the lack of easy-to-use Python Frameworks that would handle Pub/Sub messages with built-in Database ORM support (something similar to Java Spring or Python Flask but made specifically for Pub/Sub instead of HTTP/Restful). Developers should not have to develop their own work around to develop event driven code, it should be as easy as possible to save time, money and resources. With that being said, the main aim of this project is to create a framework that will aid developers who are creating a Web/Event driven applications by dealing with Pub/Sub and database interactions in the background. Progress has been carried out through using the Incremental Model with features being added, tested and documented in increments. To keep the scope down of the project rather than support all message brokers, Google Pub/Sub was chosen as the broker. Within the codebase, the Google Pub/Sub client library has be used to interact with Google Cloud’s Pub/Sub and SQLAlchemy has been added for ORM support. Asycnio is also being used to pull/push messages asynchronously allowing for multiple messages to be handled simultaneously. Helper functions, functional and configurational management has been provided by the framework to simplify the process for developers. Thanks to the framework creating GCP pub/sub applications in Python should now be a relativity quick and simple process.

Keywords: Python Framework, Publish Subscribe Model, Database

 

 Conference Details

 

Session: A

Location: Sir Stanley Clarke Auditorium at 11:00 13:00

Markers: Casey Hopkins, Fabio Caraffini

Course: BSc Software Engineering with a Year in Industry 4yr FI

Future Plans: I have a job lined-up