Nous essayons de vérifier si Zookeeper est démarré ou non dans notre application.Comment vérifier par programme si Zookeeper est en cours d'exécution
Comment pouvons-nous réaliser cette fonctionnalité?
Nous essayons de vérifier si Zookeeper est démarré ou non dans notre application.Comment vérifier par programme si Zookeeper est en cours d'exécution
Comment pouvons-nous réaliser cette fonctionnalité?
La seule façon d'être sûr que Zookeeper est opérationnel est de s'y connecter.
Si vous utilisez Kafka, vous pouvez réutiliser la bibliothèque Zookeeper qui l'accompagne, org.I0Itec.zkclient.ZkClient
.
Il suffit d'appeler:
ZkClient client = new ZkClient("localhost:2181", 5000);
Le second argument est le délai d'attente de connexion. Dans ce cas, il essayera de se connecter pendant 5 secondes. S'il est impossible de se connecter, il lance ZkTimeoutException
.
partir d'un script shell, vous pouvez également utiliser la commande nc -z
- quand le script de démarrage très pratique pour vos application vérifie d'abord, et votre application ne se soucie pas de la vérification ZK
après client existe (signifie que vous avez une connexion, avec aucune exception) vous devriez faire un appel pour voir ZK est capable de répondre, puis fermez la connexion 'client.numberOfListeners(); client.close(); ' – ShaharT