Il s'agit de la commande stompserver qui peut être exécutée dans le fournisseur d'hébergement gratuit OnWorks à l'aide de l'un de nos multiples postes de travail en ligne gratuits tels que Ubuntu Online, Fedora Online, l'émulateur en ligne Windows ou l'émulateur en ligne MAC OS
PROGRAMME:
Nom
stompserver - serveur de messagerie du protocole Stomp
SYNOPSIS
serveur d'écrasement [Options]
DESCRIPTION
Serveur de messagerie Stomp avec files d'attente FIFO basées sur file/dbm/memory/activerecord, file d'attente
surveillance et authentification de base.
OPTIONS
-C, --config=FICHIER DE CONFIGURATION
Fichier de configuration (par défaut : stompserver.conf)
-p, --Port=PORT
Changer le port (par défaut : 61613)
-b, --hôte=ADDR
Changer l'hôte (par défaut : localhost)
-q, --type de file d'attente=TYPE DE FILE D'ATTENTE
Type de file d'attente (memory|dbm|activerecord|file) (défaut : mémoire)
-w, --rép_travail=DIR
Changer le répertoire de travail (par défaut : répertoire courant)
-s, --espace de rangement=DIR
Changer le répertoire de stockage (par défaut : .stompserver, relatif à working_dir)
-d, --déboguer
Activer les messages de débogage
-a, --auth
Exiger l'autorisation du client
-c, --point de contrôle=SECONDS
Temps entre les points de contrôle des files d'attente en secondes (par défaut : 0)
-h, --Aidez-moi
Afficher ce message
FILE D'ATTENTE
Stompserver gère le traitement de base des files d'attente de messages à l'aide de la mémoire, des fichiers ou dbm
files d'attente. Les messages sont envoyés et consommés dans l'ordre FIFO (à moins qu'une erreur client ne se produise, cela
devrait être corrigé à l'avenir). Les sujets sont un stockage en mémoire uniquement. Vous pouvez sélectionner
activerecord, fichier ou dbm et les files d'attente l'utiliseront, mais les sujets ne seront
stocké en mémoire.
les files d'attente mémoire sont bien sûr les plus rapides mais ne doivent pas être utilisées si vous voulez vous assurer
tous les messages sont livrés.
les files d'attente dbm utiliseront berkeleydb si disponible, sinon dbm ou gdbm selon le
Plate-forme. sdbm ne fonctionne pas bien avec les données triées. Notez que ces files d'attente n'ont pas
été testé dans cette version.
Pour le stockage basé sur des fichiers, chaque image est stockée dans un seul fichier. Les 8 premiers octets
contient la longueur de l'en-tête, les 8 octets suivants contiennent la longueur du corps, puis les en-têtes
sont stockés sous forme d'objet marshallé suivi du corps stocké sous forme de chaîne. Ce stockage est
actuellement inefficace car les files d'attente sont stockées séparément des messages, ce qui force un
double écriture pour des raisons de sécurité des données sur chaque message stocké.
Le stockage basé sur activerecord s'attend à trouver un fichier database.yml dans la configuration
annuaire. Ce devrait être le backend le plus robuste, mais le plus lent. La base de données doit
avoir une table ar_messages qui peut être créée avec le code suivant (vous êtes
responsable de le faire):
ActiveRecord::Schema.define faire
create_table 'ar_messages' faire |t|
t.column 'stomp_id', :string, :null => false
t.column 'frame', :text, :null => false
fin
fin
Vous pouvez lire les cadres avec ce modèle :
classe ArMessage < ActiveRecord::Base
sérialiser :cadre
fin
L'implémentation ar_message changera certainement à l'avenir.
Ceci est censé être facilement lisible par une application Rails (qui pourrait gérer le
création de la table ar_messages avec une migration).
ACCÈS CONTRÔLE
L'autorisation client de base est également prise en charge. Si l'indicateur -a est passé à stompserver le
démarrage et qu'un fichier .passwd existe dans le répertoire d'exécution, les clients devront
fournir un identifiant et un mot de passe valides. Voir passwd.example pour le format de fichier de mot de passe.
MONITORING
Les files d'attente peuvent être surveillées via la file d'attente de surveillance (cela ne sera probablement pas pris en charge cette
à l'avenir pour éviter de polluer l'espace de noms de la file d'attente). Si vous vous abonnez à
/queue/monitor, vous recevrez un message d'état toutes les 5 secondes qui affiche chacun
file d'attente, sa taille, les images mises en file d'attente et les images retirées de la file d'attente. Les statistiques sont envoyées dans le même format
d'en-têtes de stomp, ils sont donc faciles à analyser. Voici un exemple de message d'état
contenant des statistiques pour 2 files d'attente :
File d'attente : /queue/client2 taille : 0 retiré de la file d'attente : 400 mis en file d'attente : 400
File d'attente : /queue/test size : 50 retiré de la file d'attente : 250 mis en file d'attente : 300
Utilisez stompserver en ligne à l'aide des services onworks.net
