ssola / Python Flask Microservice
Licence: apache-2.0
Skeleton of a Microservice built with the Flask
Stars: ✭ 544
Programming Languages
python
139335 projects - #7 most used programming language
Projects that are alternatives of or similar to Python Flask Microservice
Docker Flask Mongodb Example
Uses docker compose with a python flask microservice and MongoDB instance to make a sample application
Stars: ✭ 49 (-90.99%)
Mutual labels: microservice, flask
Akka Http Microservice
Example of http (micro)service in Scala & akka-http
Stars: ✭ 701 (+28.86%)
Mutual labels: microservice, skeleton
Hands On Microservices With Python
Hands-on Microservices with Python [ video], published by Packt
Stars: ✭ 73 (-86.58%)
Mutual labels: microservice, flask
Microservices Connector
Inter-Service communication framework, support for microservice architecture and distributed system
Stars: ✭ 17 (-96.87%)
Mutual labels: microservice, flask
Appkernel
API development made easy: a smart Python 3 API framework
Stars: ✭ 152 (-72.06%)
Mutual labels: microservice, flask
Sca Best Practice
本项目是 SCA(Spring Cloud Alibaba) 官方的最佳实践项目,致力于帮助用户更加快速、正确的使用SCA。
Stars: ✭ 496 (-8.82%)
Mutual labels: microservice
Minimal Django
A lightweight Django project - because Django can be nearly as simple as a microframework
Stars: ✭ 490 (-9.93%)
Mutual labels: flask
Webiny Js
Enterprise open-source serverless CMS. Includes a headless CMS, page builder, form builder and file manager. Easy to customize and expand. Deploys to AWS.
Stars: ✭ 4,869 (+795.04%)
Mutual labels: microservice
Awesome Flask
A curated list of awesome things related to Flask
Stars: ✭ 538 (-1.1%)
Mutual labels: flask
Gae Init
Google App Engine based on Python, Flask, RESTful, Bootstrap and tons of other cool features
Stars: ✭ 533 (-2.02%)
Mutual labels: flask
Cesi
CeSI is a web interface for managing multiple supervisors from the same place.
Stars: ✭ 500 (-8.09%)
Mutual labels: flask
Mortar
Mortar is a GO framework/library for building gRPC (and REST) web services.
Stars: ✭ 492 (-9.56%)
Mutual labels: microservice
Potion
Flask-Potion is a RESTful API framework for Flask and SQLAlchemy, Peewee or MongoEngine
Stars: ✭ 484 (-11.03%)
Mutual labels: flask
Swagger Py Codegen
a Python web framework generator supports Flask, Tornado, Falcon, Sanic
Stars: ✭ 508 (-6.62%)
Mutual labels: flask
Vim Doge
(Do)cumentation (Ge)nerator 10+ languages 📚 Generate proper code documentation skeletons with a single keypress. ⚡️🔥
Stars: ✭ 533 (-2.02%)
Mutual labels: skeleton
Javalin
A simple and modern Java and Kotlin web framework
Stars: ✭ 5,184 (+852.94%)
Mutual labels: microservice
python-flask-microservice
This is the code used in this series of articles:
- https://medium.com/p/building-microservices-with-python-part-i-5240a8dcc2fb
- https://medium.com/@ssola/building-microservices-with-python-part-2-9f951199094a#.z48wq941g
- https://medium.com/@ssola/building-microservices-with-python-part-3-a556a4c4bc00#.yn4p8rstp
This is a basic approach of building a Microservice on top of Flask, with some useful packages like:
Requirements
We are going to build a microservice to index rooms information coming from another service (crawler). This service will be responsible for indexing the information into Elasticsearch.
The indexing will be a process of:
- Validate and sanitize the data
- Get some metadata from the room information like geolocalization
- Upload the given images URL to Amazon S3
- Send an event to RabbitMQ every time a new room has been indexed serializing the payload with Avro.
Endpoints:
Method | URI | Description | Status |
---|---|---|---|
POST | /room | it will receive the room payload, and it will proceed to index it | Development |
PATCH | /room/{id} | this PATCH method will allow us to make changes on the indexed item | Not started |
DELETE | /room/{id} | this method will remove the room from the index | Not started |
GET | /room/{id} | this method will return the room data for a given room id | Not started |
GET | /health-check | This endpoint retuns the state of the service | Not started |
Running the environment
You need to have Docker installed in your machine, after that, just run this command docker-compose build && docker-compose up -d
.
Note that the project description data, including the texts, logos, images, and/or trademarks,
for each open source project belongs to its rightful owner.
If you wish to add or remove any projects, please contact us at [email protected].