MyQ-Architektur
MyQ-Server und -Anwendungen
MyQ ist ein verteiltes System, das aus Servern und Client-Anwendungen besteht. Die folgende Abbildung zeigt einen allgemeinen Überblick über alle Komponenten und Hauptkommunikationskanäle. Jede Komponente läuft in der Regel auf einem eigenen Computer, sei es ein Server, ein PC, ein Mobiltelefon oder ein Drucker.

Der Central Server ist für die Konfiguration, Berichterstellung und Lizenzierung der Standortserver verantwortlich. Standortserver müssen noch zusätzlich individuell konfiguriert werden.
Ein Standortserver ist für das Spooling von Druckaufträgen, die Übermittlung von Scans, die Benutzerinteraktion mit Druckern, die Druckerüberwachung und vieles mehr zuständig.
MyQ Desktop Client ist eine zusätzliche Anwendung, die auf den PCs der Benutzer ausgeführt wird. Sie bietet Benutzerauthentifizierung und -identifizierung, Projekt- und Kostenstellenauswahl, lokale Druckerüberwachung (meist USB), Client-Spooling und viele andere Funktionen.
Der OCR-Server wird für die optische Zeichenerkennung in Scanaufträgen verwendet. Ein OCR-Server verbraucht viele Ressourcen und läuft daher in der Regel auf einem eigenen Rechner.
Der MyQ X Mobile Client wird für das native Drucken auf iOS-, macOS- und Android-Geräten verwendet.
Der Mobile Print Agent ermöglicht Benutzern den Zugriff auf Drucker über AirPrint (für iOS) und Mopria Print Service (für Android-Smartphones oder -Tablets). Er läuft in der Regel auf einem eigenen Rechner mit Zugriff auf ein Wi-Fi-Netzwerk, in dem mobile Geräte ihn erkennen können.
Print Server aus Sicht der Betriebssystemprozesse
In der Abbildung unten sehen Sie, welche Betriebssystemprozesse auf einem Print Server ausgeführt werden und welche die wichtigsten Kommunikationskanäle sind.

Das Herzstück des Systems ist der Print Server. Er basiert auf der WSF-Plattform – der Plattform von MyQ für die Entwicklung von Netzwerkdiensten. Die MyQ-spezifische Logik ist als Plattformdienste implementiert, die in Plugin*-dll-Dateien gepackt sind. Diese Plugins sind in C++ geschrieben, einige davon auch in C#. Die WSF-Plattform unterstützt auch in PHP implementierte Dienste. PHP unterstützt keine DLLs, daher werden die in PHP implementierten Plattformdienste über eine Reihe von php.exe-Workern aufgerufen.
Der Print Server verwaltet auch eine Reihe von Job-Prozessor-Workern, die für die Job-Analyse verwendet werden. Der Job-Prozessor läuft als Prozess und nicht als Teil des Print Server, um einen Ausfall im Falle eines Ausfalls des Job-Prozessors zu vermeiden.
Als Netzwerkserver ist der Print Server Dienst für den Empfang von Druckaufträgen über LPR, IPP und andere Protokolle zuständig. Er verarbeitet auch Nachrichten, die unsere Push-Benachrichtigungs-Engine sind. Nachrichten werden verwendet, um Kunden über Ereignisse im System zu benachrichtigen.
Apache ist ein HTTP-Server für unsere Web-Benutzeroberfläche und die MyQ-REST-API. Beide Anwendungen sind in PHP implementiert. Apache verwaltet eine Reihe von php-cgi.exe-Workern, die die Ausführung übernehmen.
Der HTTP-Router ist unser Reverse-Proxy, über den der gesamte eingehende HTTP-basierte Datenverkehr fließt. Seine Hauptfunktion ist die TLS-Terminierung.
Terminalpakete implementieren das Embedded Terminal für einen bestimmten Anbieter. Sie stellen ihre eigene API zur Verfügung, die von den Druckern verwendet wird.
PM Server ist eine von Kyocera entwickelte Komponente. Sie stellt eine API zur Konfiguration von Kyocera-Geräten und zur Installation der Embedded Terminal-Anwendung bereit. PM Server verwendet die Thrift-Technologie zur Implementierung seiner API. MyQ stellt einen Teil seiner API ebenfalls über Thrift bereit, sodass der PM Server darauf zugreifen kann.
Viele der Komponenten verwenden den Datenbankserver zum Speichern von Daten. Darüber hinaus speichern viele der Komponenten, darunter Firebird, ihre Daten im MyQ-Datenordner, der sich standardmäßig unter C:\ProgramData\MyQ befindet. In der Produktion befindet sich dieser Ordner in der Regel auf einem Netzlaufwerk.
Ausführbare Dateinamen
Anzeigename | Name der ausführbaren Datei | Alternative Namen |
|---|---|---|
HTTP-Router | traefik.exe | Traefik |
HTTP-Server | httpd.exe | Apache |
Datenbankserver | firebird.exe | Firebird |
Print Server | myq.exe |
|
Kyocera-Anbieter | knum.server.exe | PM-Server |
*Terminals | MyQ*Terminal.exe | Terminalpaket |
Job-Prozessor | MyQJobProcessor.exe |
|
*wird für den Namen des Anbieters verwendet