GNU/Linux >> LINUX-Kenntnisse >  >> Linux

Microservices mit Python3

Einführung

Sie interessierten sich für Microservices. Wie können Microservices sie für mehr Agilität und Skalierbarkeit nutzen?

Microservices sind architektonische Stil- und Musterstrukturen, die als Sammlung von Diensten Anwendung finden. Services sind hochgradig wartbar, testbar, lose gekoppelt, unabhängig einsetzbar und präzise fokussiert.

Auch Microservices mit Python3, Flask und Docker mit dem monolithischen Ansatz. Flask kann verwendet werden, um Microservices zu prototypisieren und zu erstellen, um sie mit Docker zu hosten und bereitzustellen. Sehen Sie sich auch an, wie man Fläschchen in Ubuntu installiert.

Anforderungen

Flask==1.0.2

pytest==4.6.2

Flask-Inputs==0.3.0

jsonschema==3.0.1

Flask ist die beliebteste Methode, um einen RESTful-Microservice in Python zu verteilen. Einfache API-Arbeit, um sicherzustellen, dass wir es richtig machen. Das Mikro im Mikroframework bedeutet, dass Flask darauf abzielt, den Kern einfach, aber erweiterbar zu halten.

Das Framework bietet Ihnen eine bequeme Definition von Endpunkten, die Verarbeitung der Anforderungsdaten und die Erstellung der HTTP-Antworten. Darüber hinaus verfügt es über eine integrierte Templating-Engine, die sehr einfach zu verwenden, aber genauso einfach zu ersetzen ist, falls Sie ein anderes Modul bevorzugen.

Funktionen

  • Routendefinitionen im Django-Stil
  • Einfache, modulare, von Microservices inspirierte Architektur
  • Dynamische, überschreibbare Auflösung von statischen / Template-Verzeichnissen

Vorteile dieses Plugins

  • Zulassen, dass Blueprint-definierte Vorlagenordner übergeordnete Vorlagen außer Kraft setzen und nicht umgekehrt.
  • Zulassen, dass Blueprint-definierte statische Ordner von /static aufgelöst und überschrieben werden, anstatt einzelne /static_module_name-Ordner zu erklären.
  • Ermöglichen Sie die modulare, aber zentralisierte Definition von Routen mit einer saubereren Syntax, sodass Sie nicht gezwungen sind, nach @app.route()-Decorators zu suchen oder die obskure Blueprint-Syntax in komplexen Projekten zu verwenden.
  • Sie können Funktionsabschnitte nach Belieben ein- und ausblenden, indem Sie einfach den Namen des Moduls für Portabilität, Tests und Modularität umgehen.

Flask-MicroServices ist nicht außergewöhnlich komplex. Im Gegenteil, es ist ziemlich winzig – etwa 200 Codezeilen, aber es kann ein hohes Maß an Vernunft in die Art und Weise bringen, wie Sie Ihre Flask-Anwendungen schreiben.

Module für Microservices mit Python3 installieren

In diesem Tutorial verwenden wir python3

# dnf install python3-pip -y

Installation der Module

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

Port http auf Firewalld zulassen

Lassen Sie also den Port von der Firewall mit dem unten angegebenen Befehl zu.

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

Erstellen Sie jetzt ein Testskript zum Testen von Microservices mit Python3

Der folgende Code lautet wie folgt.

# 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)

Erteilen Sie die Erlaubnis, das Skript auszuführen und zu testen

Führen Sie zum Testen auch die folgenden Befehle aus.

# python3 astonmini.py

Überprüfen Sie schließlich Ihren Browser und den vom Skript angegebenen Link für Microservices mit Python3


Linux
  1. Kernel-Tracing mit trace-cmd

  2. Nohup-Befehl mit Beispielen

  3. JQ-Befehl in Linux mit Beispielen

  4. Verwenden Sie Notify-Send mit Cron?

  5. Eine Binärdatei mit Dd patchen?

15 Linux-PS-Befehl mit Beispielen

Nmap-Befehle mit Beispielen

So installieren Sie Flask mit Python 3 unter Ubuntu 18.04

Terminplanung mit cron &At

Verlaufsbefehl mit Beispielen

Zertifizierungsstelle mit OpenSSL