/python-microprofile

Implement microprofile for python language

Primary LanguagePythonApache License 2.0Apache-2.0

python-microprofile

Implement microprofile for python language

overview

So what are microframeworks

So what are microframeworks? Usually, they are a bare framework for a rest server, according to Wikipedia: minimalistic web application frameworks. Each one has its own flavor: some have a reactive patterns for defining endpoints, some added integrated metrics. Microservice Architecture has become very common in most companies. The big question is of course what is a microservice. From the site microservices.io, this is the summary:

  • Microservices - also known as the microservice architecture - is an architectural style that structures an application as a collection of services that are
  • Highly maintainable and testable
  • Loosely coupled
  • Independently deployable
  • Organized around business capabilities
  • Owned by a small team

The main issue is that up till now, all the discussions of microservices were about the size and the independence of the service (deployment and development). What was not covered well is the minimum requirement of the service for monitoring and orchestration. Kubernetis gave to docker a standard way of distributed deployment and scale. A similar framework for viewing all services via a single lense was missing.

goal

In this project we try to collect into one place the best practices and implementations of microprofiles for python. You can see in each spec what we have found to be the best packages that come closest to the microprofile standard. In cases that there is nothing we try to implement them ourselfs.

Installing Python 3

For mac install python3 brew install python3

Also check out How to install python3 on OSX

setup env

python3 -m pip install --user --upgrade pip
python3 -m pip --version # (test install)
python3 -m pip install --user virtualenv
python3 -m venv env
source env/bin/activate
which python # (test env)