/Ad_Registration_Service-CC

Implement an ad registration service, using cloud services

Primary LanguagePythonGNU General Public License v3.0GPL-3.0

Ad Registration Service 📢

About The Project

In this project we implement an ad registration service, using cloud services for implementing database, object storage, object detection, and mail sending.

This project is for 'Cloud Computing' course in university and the purpose of this exercise is to get to know and work with cloud service.

Built With

APIs implemented by:

  • FastAPI

The services used in this project are:

  • DBaaS: Postgres provided by Liara
  • Object storage (S3): Provided by Parspack
  • RabbitMQ: Provided by CloudAMQ
  • Image processing (object detection): Provided by Imagga
  • Mailing: Provided by Mailgun

Structor of projcet:

This project consict of two services:

  1. The first service contains API for communicating with user (get input or show the final result) and forward user requests to queue.
  2. The second service check the RabbitMQ queue and process the new input image and return the final result to fisrt image

Getting Started

  1. install requirements
pip install -r service-1/requirements.txt

if you want to run each service on different VM run the following on the VM for second servise, too.

pip install -r service-1/requirements.txt
  1. run services
python service-1/src/main.py 
pyhton service-2/src/main.py
  1. use it!

    open browser and go to http://localhost:8000/#docs/