Téléchargement des produits


Version anglaise


 

L'exécution des fonctions VaToolBxAMQPPublish, VaToolBxAMQPSyncPublish, VaToolBxAMQPCreateExchange et VaToolBxAMQPCreateQueue s'appuie sur un fichier de paramétrage, au format YAML, définissant la configuration de chaque broker logique Adelia manipulé dans le source L4G par ces fonctions. 


Exemple de L4G

APPELER_DLL  ' VaToolBx '   ' VaToolBxAMQPPublish '   ' myLogicalBroker '    ' directExchange '   ' routeOne '   ' Hello world! '  *BLANK  myReturnCode


APPELER_DLL  ' VaToolBx '   ' VaToolBxAMQCreateExchange '   ' myLogicalBroker '   ' myNewExchange '   ' topic '  *FAUX *VRAI *FAUX *BLANK *BLANK  myReturnCode  


Dans cet exemple, myLogicalBroker correspond à un broker logique dont les caractéristiques sont définies dans ce fichier de configuration.


Avec un runtime Java, ce fichier est défini au démarrage de la JVM (Java Virtual Machine) par la variable d'environnement com.hardis.adelia.mom.configuration :

.. -Dcom.hardis.adelia.mom.configuration=C:\directory\AdeliaLogicalBrokersConfig.yaml


Avec un runtime  Windows, ce fichier est recherché dans le répertoire courant et le cas échéant doit être défini par la variable d'environnement ADELIA_MOM_CONFIGURATION_FILE :

ADELIA_MOM_CONFIGURATION_FILE= C:\directory\AdeliaLogicalBrokersConfig.yaml



Exemple de configuration pour démarrer Tomcat (en adaptant catalina.bat):

Avant:

%_EXECJAVA% %LOGGING_CONFIG% %LOGGING_MANAGER% %JAVA_OPTS% %CATALINA_OPTS% %DEBUG_OPTS% -D%ENDORSED_PROP%="%JAVA_ENDORSED_DIRS%" -classpath "%CLASSPATH%" -Dcatalina.base="%CATALINA_BASE%" -Dcatalina.home="%CATALINA_HOME%" -Djava.io.tmpdir="%CATALINA_TMPDIR%" %MAINCLASS% %CMD_LINE_ARGS% %ACTION% 


Après:

%_EXECJAVA% %LOGGING_CONFIG% %LOGGING_MANAGER% %JAVA_OPTS% %CATALINA_OPTS% %DEBUG_OPTS% -D%ENDORSED_PROP%="%JAVA_ENDORSED_DIRS%" -classpath "%CLASSPATH%" -Dcatalina.base="%CATALINA_BASE%" -Dcatalina.home="%CATALINA_HOME%" -Djava.io.tmpdir="%CATALINA_TMPDIR%" -Dcom.hardis.adelia.mom.configuration ="D:\MyConfig\AdeliaLogicalBrokersConfig.yaml" %MAINCLASS% %CMD_LINE_ARGS% %ACTION%


Ce fichier est lu lors de la première exécution de :

    • CHARGER_DLL 'VaToolBx'
    • ou APPELER_DLL 'VaToolBxAMQPPublish'
    • ou APPELER_DLL ' VaToolBxAMQPSyncPublish'
    • ou APPELER_DLL ' VaToolBxAMQPCreateExchange'
    • ou APPELER_DLL ' VaToolBxAMQPCreateQueue'


Structure du document YML :


Un exemple de fichier de configuration est fournie dans le sous répertoire javarun\ AdeliaLogicalBrokersConfig.yaml du répertoire d'installation d'Adélia.

Prerequis : ce fichier est au format YAML. Une connaissance de ce format est nécessaire pour la compréhension du contenu du fichier. Un tutoriel YAML est disponible ici : http://sweetohm.net/article/introduction-yaml.html.


Chaque attribut de plus haut niveau décrit la configuration d'un broker logique Adélia utilisateur. La valeur de cet attribut est le nom du broker logique donné par l'utilisateur.

Dans le fichier d'exemple 'myLogicalAMQPBroker' définit un broker AMQP.


Attribut connectionFactoryConfig :

Définit les paramètres de connexion au broker de messages supportant le protocole AMQP v0.9.1. Nos tests ont été validés avec le logiciel d'agent de messages open source RabbitMQ (https://www.rabbitmq.com/).

Pour une connexion à un broker de messages distant, il est nécessaire de remplacer au minimum les valeurs par défaut des paramètres username, password et host.

Cf. https://www.rabbitmq.com/uri-spec.html, https://www.rabbitmq.com/api-guide.html#connecting.


Attribut channelPoolConfig (supporté par runtime Java uniquement) :

Définit les paramètres du pool de connexion au broker de messages. Il existe deux types de connexion : synchrones et asynchrones. Le pool gère les deux types par clé (key pool).

Une connexion est initiée à chaque appel de fonction VaToolBxAMQPXXX.

Dans le cas d'un nombre important de connexions concurrentes à un même broker logique, il peut être utile de changer la valeur du paramètre maxTotalPerKey.


Attribut entities :

Permet de définir les entités (exchanges, queues et liaisons queue/exchange et exchange/exchange) à mettre en œuvre sur le broker de messages.

Ces entités sont créées sur le broker de messages au premier appel d'une fonction VaToolBxAMQPXXX (c'est-à-dire à la première connexion au broker logique). Ces entités (notamment les exchanges) peuvent être utilisées dans les fonctions VaTollBxAMQPXXX.


↑ Haut de page




  • Aucune étiquette