Backend
Le backend basé sur le système d’exploitation Ubuntu Server 20.04 LTS, est composé des éléments suivants :

Interface IP
Interface réseau permettant la communication entre le réseau éthernet/internet et le serveur. Toutes les interfaces (SMTP / SQL / SSH ) l’utilisent.
UFW
Un programme libre de gestion de pare-feu qui servira à filtrer les trames IP reçues par le serveur depuis l’interface IP.
Ce service sera configuré pour autoriser uniquement les trames IP entrantes autorisées, uniquement pour les requêtes HTTPS-BACKEND (443) et SSH (22)
NGINX
Un logiciel libre de serveur web qui va écouter les trames IP HTTPS-BACKEND (Port 443) pour les distribuer sur les S_CONTROLLER.
CRONTAB
Crontab est un outil de planification de tâches présent nativement sur le système d’exploitation.
Une fois configuré, il nous permettra de lancer des S_COMMANDE à des récurrences programmées (Minute / Heure / Jour / Mois / Jour de la semaine).
TERMINAL
Service du système d’exploitation Ubuntu Server permettant l’exécution de lignes de commande sur le serveur par l’administrateur.
Ce terminal va permettre la gestion des services installés sur le serveur.
APP WEB
Une application WEB basée sur le framework Symfony 6.4 LTS, codé en PHP 8.2 qui va interpréter les requêtes HTTPS-BACKEND entrantes afin d’exécuter les procédures répondant aux spécifications.
L’APP WEB est composée des éléments suivants :
Bundles Symfony Natif
Ensemble d’outils proposés par le framework Symfony
HubSystem
Ensemble d'outils développé par Feelity
Bundle Symfony
Ensemble d’outil développé par la communauté Symfony qui vont être ajoutés et configurés
S_ENTITE
Fichiers de code PHP définissant le modèle de données (Voir le schéma de données).
S_SERVICE
Fichiers de code PHP qui remplit une fonction bien précise, associé à une configuration et qui est partagé à tous les S_CONTROLLER.
S_CONTROLLER
Fichiers de code PHP contenant des procédures répondant aux spécifications. Le lancement de ces procédures est déclenché par l’interface HTTPS-BACKEND.
S_COMMANDE
Fichiers de code PHP contenant des procédures qui pourront être lancées par un administrateur depuis un TERMINAL ou par des tâches planifiées via le CRONTAB.
S_SUBSCRIBERS
Fichiers de code PHP qui écoutent des évènements pour lancer des nouvelles procédures
S_MESSENGER
Fichiers de code PHP permettant le traitement de message asynchrone. Dans notre cas, tous les messages envoyer par connect sera traiter par messenger.