
Duktig PHP Framework ist dockfreundlich, schnell und leicht, speziell für die Entwicklung von Microservices geschrieben
Stellen Sie dieses Projekt in Ihrer lokalen Umgebung mit Docker-Compose ein, entwickeln Sie einige Funktionen und erstellen Sie Docker-Image.
Alle Docker-Image-Vorbereitungen für die lokale Umweltbereitstellung sind bereits im docker-deployment -Verzeichnis enthalten.
git clone https://github.com/duktig-solutions/Duktig-microservice-php.git
cd Duktig-microservice-php/docker-deployment
docker-compose up -dLassen Sie uns nach erfolgreicher Bereitstellung die Barrierefreiheit überprüfen:
curl --request GET --url http://localhost:8088/system/ping Sie sollten sehen: pong -Antwort;)
Das war's! Jetzt können Sie Beispiele und Tutorials für zukünftige Schritte lesen.
Stellen Sie das Projekt in Ihrer lokalen Umgebung mit nur einem Befehl ein. Alle erforderlichen Docker -Bilder von Drittanbietern sind bereits enthalten und konfiguriert, z. B. Datenbanken, Webserver usw.
Enthält schöne und sehr gut kommentierte Code -Beispiele, die folgen müssen.
Zu diesen Beispielen gehören die Entwicklung von API -Entwicklung, CRUD, Datenvalidierung, Datenbankzugriff, Befehlszeilen -Tools, Nachrichten/Warteschlangen, Veröffentlichungen/Abonnieren und vieles mehr ...
Sehr einfache Schritte zur Entwicklung eines erholsamen API -Dienstes, einschließlich - Route, Middleware, Controller, Modell und endgültige JSON -Reaktion.
Redis -Daten -Caching -Mechanismus ist ebenfalls enthalten. Es ist möglich, eine Route mit automatischem Caching zur Reaktion zu konfigurieren.
Erstellen Sie die Befehlszeilen -Tools in wenigen Minuten mit der Routing- und Controller -Entwicklung.
Ereignisabonnements, Meldungswarteschlangen und andere Tools arbeiten in der Befehlszeilenumgebung.
Das Cron Docker -Bild mit Beispielen, die auch in diesem Projekt enthalten sind.
Das Duktig -Projekt umfasst die Veröffentlichung und Abonnement -Funktionalität, die in verschiedenen Szenarien verwendet werden können.
Der allgemeine Zweck dieser Funktionalität ist die Kommunikation zwischen den Dienstleistungen, bei der jeder Befehlszeilendienst Nachrichten von anderen Diensten abonnieren kann.
Die MQ -Funktionalität ermöglicht es, Arbeitnehmer zu entwickeln und Aufgaben für sie zu erstellen. Der Verbraucher kann Aufgaben erhalten und sich in Arbeiter aufteilt, um sie zu bearbeiten.
Sobald eine Aufgabe mit Fail erledigt ist, kann sie sich bis zur konfigurierten Kachelmenge wiederholen.
Der Hauptunterschied zwischen Publish/Subscribe und Message/Queue besteht darin, dass viele Abonnenten von einem Dienst veröffentlichtem Nachrichten empfangen können, wenn die Message/Queue für jeden Dienst eindeutig sind. Nachricht/Aufgabe kann von nur einem Arbeiter gleichzeitig empfangen und verarbeitet werden.
Sobald wir über die Entwicklung von Microservices gesprochen haben, ist es sinnvoll, eine schöne und einfache, mit Ereignisse angetriebene Architektur zu haben. Wie bereits erwähnt, haben wir bereits Mechanismus mit einem Ereignissystem Publish/Subscribe .
Mit Duktig Framework ist es möglich, Veranstaltungen zu veröffentlichen und sie mit Redis zu abonnieren. Was Sie tun müssen, ist, bereits entwickelte Pub-/Subbibliotheken zu verwenden.
Duktig Framework enthält Datenbankbibliotheken für MySQL und PostgreSQL. Um ein Datenbankmodell zu entwickeln, müssen Sie einige einfache Schritte ausführen und ein zu verwendendes Basismodell erben.
Es besteht die Möglichkeit, Asynchronous queries in Datenbankmodellen auszuführen.
Anstatt einen Cron Docker -Container von Grund auf neu einzurichten, stellen wir eine laufende Lösung mit automatischem Datenbank -Sicherungssystem vor. Dadurch können Sie MySQL -Datenbanken mit konfigurierter Zeit und Kopien sichern.
Das Duktig -Projekt enthält einen einfachen Daten zwischen den Daten zwischen dem REDIS -Server. Für die erholsame API -Entwicklung ist es möglich, automatisches Inhaltsdach in der Routing -Konfiguration einzustellen, ohne eine Codezeile zu schreiben.
Durch regelmäßige Validierungsfunktionen können Sie viele Arten von Daten validieren. Es ist jedoch auch möglich, ein Array von Validierungsregeln für die RESTful -API -Schnittstelle zu erstellen und ein mehrdimensionales JSON -Daten/-array vor der eingehenden Anforderung zu validieren. Auf diese Weise können Sie die API -Schnittstelle schnell und sicher erstellen.
Im Gegensatz zu einigen Personen, die Schwierigkeiten haben, Umgebungsvariablen im PHP-FPM-Docker-Container zu verwenden, können Sie Ihre Umgebungsvariablen in .env Datei definieren und direkt in Ihrem Code verwenden. Alle Umgebungsvariablen, die in der Docker-Compose-YAML-Datei definiert oder in docker run .. Der Befehl überschreibt die zuvor in der Datei definierten Werte.
Auf diese Weise können Sie Umgebungsvariablen in der Docker -Bereitstellungszeit dynamisch definieren, ohne Probleme mit hart codierten Konfigurationsdaten zu haben.
Es gibt eine Möglichkeit, Headerbasis für HTTP -Anforderungen zu konfigurieren und zu verwenden. Dies ist ein einfacher Fall, wenn wir unsere erholsame API -Schnittstelle schützen müssen.
Das Duktig -Projekt umfasst jedoch JWT -Bibliothek (JSON Web Token), mit der Sie eine gesicherte Schnittstelle für Ihre erholsame API entwickeln können.
Duktig bedeutet qualifiziert, fähig oder fleißig - auf Schwedisch.
In Phrasen wie OJ, Vad Duktig du Är! (Wow, wie qualifiziert du bist!) Es ist ein Kompliment.
Die Version in Duktig definiert mit drei Zahlen, die aussieht: xxx dh 1.3.8
| Erste Nummer | Zweite Zahl | Dritte Nummer |
|---|---|---|
| Revolution | Evolution | Fehlerbehebung |
Autor: Duktig Solutions [email protected]
Projektentwicklungsidee vom 04. April 2019