GNU/Linux >> Tutoriels Linux >  >> Linux

Microservices avec Python3

Présentation

Ils étaient intéressés par les microservices. Comment les microservices peuvent-ils les utiliser pour une agilité et une évolutivité accrues ?

Les microservices sont des structures de style architectural et de modèle qui s'appliquent comme un ensemble de services. Les services sont hautement maintenables, testables, faiblement couplés, déployables indépendamment et ciblés avec précision.

Aussi Microservices avec Python3, flask et Docker avec l'approche monolithique. Flask peut être utilisé pour prototyper et créer des microservices, pour utiliser Docker pour les héberger et les déployer. Vérifiez également comment installer le flacon dans Ubuntu.

Exigences

Flacon==1.0.2

pytest==4.6.2

entrées-fiole==0.3.0

jsonchema==3.0.1

Flask est le moyen le plus populaire de distribuer un microservice RESTful en Python. API simple fonctionnant pour s'assurer que nous le faisons correctement. Le micro dans le microframework signifie que Flask vise à garder le noyau simple mais extensible.

Le cadre vous permet de définir facilement les points de terminaison, de gérer les données de la demande et de créer les réponses HTTP. De plus, il dispose d'un moteur de template intégré, qui est très facile à utiliser mais tout aussi facile à remplacer si vous préférez un autre module.

Caractéristiques

  • Définitions de route de style Django
  • Architecture simple, modulaire et inspirée des microservices
  • Résolution dynamique et modifiable des répertoires statiques/modèles

Avantages de ce plugin

  • Autoriser les dossiers de modèles définis par Blueprint à remplacer les modèles parents, plutôt que l'inverse.
  • Autoriser les dossiers statiques définis par Blueprint à résoudre à partir de /static, plutôt que d'expliquer les dossiers individuels /static_module_name.
  • Activer de manière modulaire, mais la définition centralisée des itinéraires avec une syntaxe plus propre afin que vous ne soyez pas obligé de rechercher des décorateurs @app.route() ou d'utiliser la syntaxe arcane blueprint dans des projets complexes.
  • Vous permet d'insérer/supprimer des sections de fonctionnalités à volonté, en contournant simplement le nom du module pour la portabilité, les tests et la modularité.

Flask-MicroServices n'est pas exceptionnellement complexe. Au contraire, il est assez petit - 200 lignes de code, mais il peut apporter un haut niveau de raisonnabilité à la façon dont vous écrivez vos applications Flask.

Installer des modules pour les microservices avec Python3

Dans ce tutoriel, nous utilisons python3

# dnf install python3-pip -y

Installation des modules

# cat requirements.txt
Flask==1.0.2
pytest==4.6.2
flask-inputs==0.3.0
jsonschema==3.0.1

Autoriser le port http sur le pare-feu

Alors autorisez le port du pare-feu avec la commande indiquée ci-dessous.

# firewall-cmd --permanent --add-service=http
# firewall-cmd --reload

Créez maintenant un script de test pour tester les microservices avec Python3

Le code suivant est le suivant.

# cat astonmini.py
#!/usr/bin/python3

from flask import Flask, jsonify

app = Flask(__name__)


@app.route("/")
def index() -> str:
        return jsonify({"message": "If it doest work, then what does works?"})

if __name__ == '__main__':
        app.run(host='0.0.0.0', port=80)

Donner l'autorisation d'exécuter et de tester le script

Exécutez également les commandes ci-dessous pour les tests.

# python3 astonmini.py

Enfin, vérifiez votre navigateur et vérifiez le lien indiqué par le script pour Microservices avec Python3


Linux
  1. Traçage du noyau avec trace-cmd

  2. Utiliser Notify-send avec Cron ?

  3. Déployer une application Flask avec Dokku

  4. Comment déployer des microservices avec Docker

  5. Comment faire en sorte que la commande python3 exécute Python 3.6 au lieu de 3.5 ?

15 Commande Linux ps avec exemples

Commandes Nmap avec exemples

Comment installer Flask avec Python 3 sur Ubuntu 18.04

Planification avec cron &At

Commande d'historique avec exemples

Autorité de certification avec OpenSSL