MyQ X Server

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 die wichtigsten Kommunikationskanäle. Jede Komponente läuft in der Regel auf einem eigenen Computer, sei es ein Server, ein PC, ein Mobiltelefon oder ein Drucker.

image-20260131-172748.png


Der Central Server ist für die Konfiguration, Berichterstellung und Lizenzierung der Site-Server zuständig. Die Site-Server müssen dennoch zusätzlich individuell konfiguriert werden.

Ein Site-Server ist für das Spooling von Druckaufträgen, die Weiterleitung von Scans, die Benutzerinteraktion mit Druckern, die Druckerüberwachung und vieles mehr zuständig.

Der MyQ Desktop Client ist eine zusätzliche Anwendung, die auf den PCs der Benutzer läuft. Er bietet Benutzerauthentifizierung und -identifizierung, Projekt- und Kostenstellenauswahl, Überwachung lokaler Drucker (meist USB), Client-Spooling und viele weitere Funktionen.

Der OCR-Server wird für die optische Zeichenerkennung bei Scanaufträgen verwendet. Ein OCR-Server beansprucht viele Ressourcen, daher läuft er 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 den Mopria Print Service (für Android-Smartphones oder -Tablets). Er läuft in der Regel auf einem eigenen Rechner mit Zugang zu einem WLAN-Netzwerk, in dem mobile Geräte ihn erkennen können. 

Der Print Server aus Sicht der Betriebssystemprozesse

In der Abbildung unten sehen Sie, welche Betriebssystemprozesse auf einem Print Server laufen und welche die wichtigsten Kommunikationskanäle sind.

OS processes on a Site server

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. Da PHP keine DLLs unterstützt, werden die in PHP implementierten Plattformdienste über eine Reihe von php.exe-Workern aufgerufen.

Der Print Server verwaltet zudem eine Reihe von Job-Prozessor-Workern, die für die Job-Analyse verwendet werden. Der Job-Prozessor läuft als eigener Prozess und nicht als Teil des Print Server, um dessen 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 außerdem Messages, unsere Push-Benachrichtigungs-Engine. Messages werden verwendet, um Clients ü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 unterhält eine Reihe von php-cgi.exe-Workern, um die Ausführung zu bewältigen.

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 Hersteller. Sie stellen ihre eigene API bereit, die von den Druckern genutzt wird.

Der PM-Server ist eine von Kyocera entwickelte Komponente. Er stellt eine API zur Konfiguration von Kyocera-Geräten und zur Installation der Embedded Terminal-Anwendung bereit. Der PM-Server nutzt die Thrift-Technologie zur Implementierung seiner API. MyQ stellt ebenfalls einen Teil seiner API über Thrift bereit, sodass der PM-Server darauf zugreifen kann.

Viele der Komponenten nutzen den Database Server zur Speicherung von Daten. Darüber hinaus speichern viele 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.

Namen der ausführbaren Dateien

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

Auftragsverarbeiter

MyQJobProcessor.exe


*wird für den Anbieternamen verwendet