Feature #12908
ferméUtilisation des WebSockets dans le système de notification PUSH du serveur vers le navigateur WEB
100%
Description
Cette feature vient compléter l'existante : #8622
Dans des contextes avec beaucoup de sessions utilisateurs ouvertes, l'envoi de notifications serveurs (Server Event
) via l'API Server Sent Event
(SSE) dégrade les performances d'utilisation de Silverpeas.
Il ne semble pas que cela soit le serveur WildFly qui bataille, mais plutôt les reverse proxy
.
Même si l'API SSE est standarde et éprouvée, ces derniers n'apprécient pas le principe de laisser une requête HTTP ouverte sur une durée de plusieurs minutes.
L'idée est d'ajouter l'utilisation de la technologie des WebSockets dans le système actuel d'envoi de notification, tout en gardant la possibilité d'utiliser l'actuelle technique.
D'ailleurs, comme l'utilisation des WebSockets nécessite la mise en place de règles dans la configuration du reverse-proxy
, elle devra probablement être désactivée par défaut.
Mis à jour par Yohann Chastagnier il y a presque 3 ans
- Lié à Feature #8622: Mise en place d'un système de notification PUSH du serveur vers le navigateur WEB ajouté
Mis à jour par Yohann Chastagnier il y a presque 3 ans
- Catégorie mis à Notifications
- Statut changé de In progress... à Resolved
- Assigné à mis à Yohann Chastagnier
- Version cible mis à Version 6.3
- % réalisé changé de 90 à 100
La possibilité d'utiliser les WebSockets
pour envoyer des événements du serveur vers le navigateur WEB est désormais en place.
Dans un environnement de développement, cette technique se montre efficace.
Même si des essais de tests de charge ont été menés, ces derniers ne permettent pas de savoir comment cela se comportera dans un contexte de production avec beaucoup de sessions utilisateurs ouvertes en même temps.
Pour cette raison, l'utilisation des WebSockets n'est pas activée dans un premier temps.
Par défaut, c'est donc l'actuel mécanisme qui reste en place.
Pour activer l'utilisation des WebSockets il faut renseigner la valeur true
au niveau du paramètre notification.sse.usingWebSocket
du fichier de propriétés $SILVERPEAS_HOME/properties/org/silverpeas/notificationManager/settings/notificationManagerSettings.properties.
ATTENTION, en cas d'activation de cette nouvelle possibilité, le paramétrage du reverse-proxy
doit être modifié afin de traiter les requêtes WebSockets sur Silverpeas.
Pour Apache
, par exemple :
# Les ouvertures de session WebSocket dans Silverpeas passe par le path '/ws'
ProxyPass /silverpeas/ws ws://127.0.0.1:8000/silverpeas/ws
PR : https://github.com/Silverpeas/Silverpeas-Core/pull/1202
Mis à jour par Miguel Moquillon il y a presque 3 ans
- Statut changé de Resolved à Integration in progress...
Mis à jour par Miguel Moquillon il y a presque 3 ans
- Statut changé de Integration in progress... à Closed