Apache RocketMQ est une plate-forme distribuée de messagerie et de streaming offrant une faible latence, des performances et une fiabilité élevées, une capacité de plusieurs milliards et une évolutivité flexible.
Il offre diverses fonctionnalités :
Ce paragraphe vous guide à travers les étapes d'installation de RocketMQ de différentes manières. Pour le développement et les tests locaux, une seule instance sera créée pour chaque composant.
RocketMQ fonctionne sur tous les principaux systèmes d'exploitation et nécessite uniquement l'installation d'un Java JDK version 8 ou supérieure. Pour vérifier, exécutez java -version
:
$ java -version
java version " 1.8.0_121 "
Pour les utilisateurs Windows, cliquez ici pour télécharger la version binaire 5.2.0 RocketMQ, décompressez-la sur votre disque local, tel que D:rocketmq
. Pour les utilisateurs macOS et Linux, exécutez les commandes suivantes :
# Download release from the Apache mirror
$ wget https://dist.apache.org/repos/dist/release/rocketmq/5.2.0/rocketmq-all-5.2.0-bin-release.zip
# Unpack the release
$ unzip rocketmq-all-5.2.0-bin-release.zip
Préparez un terminal et accédez au répertoire bin
extrait :
$ cd rocketmq-all-5.2.0-bin-release/bin
1) Démarrez le serveur de noms
NameServer écoutera à 0.0.0.0:9876
, assurez-vous que le port n'est pas utilisé par d'autres personnes sur la machine locale, puis procédez comme suit.
Pour les utilisateurs de macOS et Linux :
# ## start Name Server
$ nohup sh mqnamesrv &
# ## check whether Name Server is successfully started
$ tail -f ~ /logs/rocketmqlogs/namesrv.log
The Name Server boot success...
Pour les utilisateurs Windows, vous devez d'abord définir les variables d'environnement :
ROCKETMQ_HOME="D:rocketmq"
.Changez ensuite de répertoire en rocketmq, tapez et exécutez :
$ mqnamesrv.cmd
The Name Server boot success...
2) Démarrer le courtier
Pour les utilisateurs de macOS et Linux :
# ## start Broker
$ nohup sh bin/mqbroker -n localhost:9876 &
# ## check whether Broker is successfully started, eg: Broker's IP is 192.168.1.2, Broker's name is broker-a
$ tail -f ~ /logs/rocketmqlogs/broker.log
The broker[broker-a, 192.169.1.2:10911] boot success...
Pour les utilisateurs Windows :
$ mqbroker.cmd -n localhost:9876
The broker[broker-a, 192.169.1.2:10911] boot success...
Vous pouvez exécuter RocketMQ sur votre propre machine dans les conteneurs Docker, le réseau host
sera utilisé pour exposer le port d'écoute dans le conteneur.
1) Démarrez le serveur de noms
$ docker run -it --net=host apache/rocketmq ./mqnamesrv
2) Démarrer le courtier
$ docker run -it --net=host --mount source=/tmp/store,target=/home/rocketmq/store apache/rocketmq ./mqbroker -n localhost:9876
Vous pouvez également exécuter un cluster RocketMQ au sein d'un cluster Kubernetes à l'aide de RocketMQ Operator. Avant vos opérations, assurez-vous que kubectl
et le fichier kubeconfig associé sont installés sur votre machine.
1) Installer les CRD
# ## install CRDs
$ git clone https://github.com/apache/rocketmq-operator
$ cd rocketmq-operator && make deploy
# ## check whether CRDs is successfully installed
$ kubectl get crd | grep rocketmq.apache.org
brokers.rocketmq.apache.org 2022-05-12T09:23:18Z
consoles.rocketmq.apache.org 2022-05-12T09:23:19Z
nameservices.rocketmq.apache.org 2022-05-12T09:23:18Z
topictransfers.rocketmq.apache.org 2022-05-12T09:23:19Z
# ## check whether operator is running
$ kubectl get pods | grep rocketmq-operator
rocketmq-operator-6f65c77c49-8hwmj 1/1 Running 0 93s
2) Créer une instance de cluster
# ## create RocketMQ cluster resource
$ cd example && kubectl create -f rocketmq_v1alpha1_rocketmq_cluster.yaml
# ## check whether cluster resources is running
$ kubectl get sts
NAME READY AGE
broker-0-master 1/1 107m
broker-0-replica-1 1/1 107m
name-service 1/1 107m
Nous sommes toujours ouverts aux nouvelles contributions, que ce soit pour des nettoyages triviaux, de grandes nouvelles fonctionnalités ou d'autres récompenses matérielles, plus de détails voir ici.
Licence Apache, version 2.0 Copyright (C) Apache Software Foundation
Cette distribution inclut un logiciel cryptographique. Le pays dans lequel vous résidez actuellement peut avoir des restrictions sur l'importation, la possession, l'utilisation et/ou la réexportation vers un autre pays de logiciels de cryptage. AVANT d'utiliser un logiciel de cryptage, veuillez vérifier les lois, réglementations et politiques de votre pays concernant l'importation, la possession ou l'utilisation et la réexportation de logiciels de cryptage, pour voir si cela est autorisé. Voir http://www.wassenaar.org/ pour plus d'informations.
Le Département du Commerce du gouvernement américain, Bureau of Industry and Security (BIS), a classé ce logiciel sous le numéro ECCN (Export Commodity Control Number) 5D002.C.1, qui inclut un logiciel de sécurité des informations utilisant ou exécutant des fonctions cryptographiques avec des algorithmes asymétriques. La forme et les modalités de cette distribution d'Apache Software Foundation la rendent éligible à l'exportation dans le cadre de l'exception de licence ENC Technology Software Unrestricted (TSU) (voir les réglementations administratives sur l'exportation du BIS, section 740.13) pour le code objet et le code source.
Ce qui suit fournit plus de détails sur le logiciel cryptographique inclus :
Ce logiciel utilise Apache Commons Crypto (https://commons.apache.org/proper/commons-crypto/) pour prendre en charge l'authentification, ainsi que le cryptage et le déchiffrement des données envoyées sur le réseau entre les services.