当前位置:网站首页>Test d'installation du cluster metaq
Test d'installation du cluster metaq
2022-06-29 23:22:00 【Star Brother play Cloud】
1,ZooKeeperClusterInstallation,Peut être référencé ZooKeeperClusterPratiques de construction environnementale http://www.linuxidc.com/Linux/2013-04/83562.htm
2,Téléchargerhttps://github.com/killme2008/Metamorphosis/tree/metamorphosis-all-1.4.6.2,Si vous ne voulez pas compiler vous - même, vous pouvez le télécharger directementhttp://fnil.net/downloads/index.html,J'ai choisi de compiler moi - même ici,Principalement plus tard, s'il y a un problème, vous pouvez modifier son code source,Recompiler
3,mavenCompiler,mavenL'environnement recherche lui - même configuré,TéléchargerallAprès le projet, vous devez compiler ses sous - projetsmetamorphosis-server-wrapper.dosL'environnement entre dans son répertoiremvn eclipse:eclipse,Importer àeclipse,AvececlipseCompilation du plug - in.Ou directementdosExécuter dans ce répertoiremvn clean install -Dmaven.test.skip=true.Une fois terminétarget Produit dans le catalogue jarSac;
Peut être créé dans le projet libDossiers,Saisissez la commande suivante:mvn dependency:copy-dependencies -DoutputDirectory=lib (Non.DoutputDirectoryLa sortie par défaut verstarged/dependencyEn bas.).EncoreinstallDejarBaotou!copyÀlibEn bas..
4, Télécharger sur Serveur
Modifications nécessairesconf/server.iniDocumentation
[system]brokerId=2
numPartitions=1
serverPort=8123
ashboardHttpPort=8120
unflushThreshold=0
unflushInterval=10000
maxSegmentSize=1073741824
maxTransferSize=1048576
deletePolicy=delete,168
deleteWhen=0 0 6,18 * * ?
flushTxLogAtCommit=1
stat=true
dataPath=/data1/metaq/data
dataLogPath=/data1/metaq/log
[zookeeper]
zk.zkConnect=192.168.1.1:2181,192.168.1.2:2181,192.168.1.3:2181
zk.zkSessionTimeoutMs=30000
zk.zkConnectionTimeoutMs=30000
zk.zkSyncTimeMs=5000
;; Topics section
[topic=test]
[topic=meta-test]
Cluster Si vous avez besoin de modifier la partie rouge ci - dessus ,brokerIdChaqueServeur Ce n'est pas pareil sur les noeuds
dataPath,dataLogPath Si vous le faites vous - même , Besoin de chaque Serveurmkdir
Distribuer aux noeuds , À chaque noeud bin .Tout ce qui suit est exécuté metaServer.sh start
Exécuter lorsque l'arrêt est nécessaire metaServer.sh stop
Voir l'étatsh metaServer.sh status
5,Exemples d'application
package com.test.metaq;
import Java.util.concurrent.Executor;
import com.taobao.metamorphosis.Message; import com.taobao.metamorphosis.client.MessageSessionFactory; import com.taobao.metamorphosis.client.MetaClientConfig; import com.taobao.metamorphosis.client.MetaMessageSessionFactory; import com.taobao.metamorphosis.client.consumer.ConsumerConfig; import com.taobao.metamorphosis.client.consumer.MessageConsumer; import com.taobao.metamorphosis.client.consumer.MessageListener; import com.taobao.metamorphosis.exception.MetaClientException; import com.taobao.metamorphosis.utils.ZkUtils.ZKConfig;
public class AsyncConsum {
public static void main(String[] args) { final MetaClientConfig metaClientConfig = new MetaClientConfig(); final ZKConfig zkConfig = new ZKConfig(); zkConfig.zkConnect = "10.168.140.48:2181"; metaClientConfig.setZkConfig(zkConfig); MessageSessionFactory sessionFactory = null; try { sessionFactory = new MetaMessageSessionFactory(metaClientConfig); } catch (MetaClientException e) { // TODO Auto-generated catch block e.printStackTrace(); } final String topic = "test"; final String group = "meta-example"; MessageConsumer consumer = sessionFactory.createConsumer(new ConsumerConfig(group)); try { consumer.subscribe(topic, 1024 * 1024, new MessageListener() { public void recieveMessages(Message message) { System.out.println("Receive message " + new String(message.getData())); } public Executor getExecutor() { return null; } }); consumer.completeSubscribe(); } catch (MetaClientException e) { // TODO Auto-generated catch block e.printStackTrace(); } }
}
package com.test.metaq;
import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader;
import com.taobao.metamorphosis.Message; import com.taobao.metamorphosis.client.MessageSessionFactory; import com.taobao.metamorphosis.client.MetaClientConfig; import com.taobao.metamorphosis.client.MetaMessageSessionFactory; import com.taobao.metamorphosis.client.producer.MessageProducer; import com.taobao.metamorphosis.client.producer.SendResult; import com.taobao.metamorphosis.exception.MetaClientException; import com.taobao.metamorphosis.utils.ZkUtils.ZKConfig;
public class Products {
public static void main(String[] args) { final MetaClientConfig metaClientConfig = new MetaClientConfig(); final ZKConfig zkConfig = new ZKConfig(); zkConfig.zkConnect = "10.168.140.48:2181"; metaClientConfig.setZkConfig(zkConfig); MessageSessionFactory sessionFactory = null; try { sessionFactory = new MetaMessageSessionFactory(metaClientConfig); } catch (MetaClientException e) { e.printStackTrace(); } MessageProducer producer = sessionFactory.createProducer(); final String topic = "test"; producer.publish(topic); BufferedReader reader = new BufferedReader(new InputStreamReader( System.in)); String line = "qiujinyong"; try { while ((line = reader.readLine()) != null) { SendResult sendResult = producer.sendMessage(new Message(topic, line.getBytes())); if (!sendResult.isSuccess()) { System.err.println("Send message failed,error message:" + sendResult.getErrorMessage()); } else { System.out.println("Send message successfully,sent to " + sendResult.getPartition()); } } } catch (IOException e) { // TODO Auto-generated catch block e.printStackTrace(); } catch (MetaClientException e) { // TODO Auto-generated catch block e.printStackTrace(); } catch (InterruptedException e) { // TODO Auto-generated catch block e.printStackTrace(); }
}
}
Emballeztest.jarAprès,PasseServeurAllez. java -cp test.jar com.test.metaq.Products Entrée en ligne de commandemessage
Emballeztest.jarAprès,PasseServeurAllez. java -cp test.jar com.test.metaq.AsyncConsum La ligne de commande recevra message
边栏推荐
猜你喜欢

Remember the process of checking online MySQL deadlock. You should not only know curd, but also know the principle of locking

InfluxDB时序数据库系统

Touch key and key control corresponding LED status reversal

Still stay up late every day and work overtime to make statements? In fact, you don't know how to make reports efficiently

Hematemesis finishing: a rare map of architects!

sql刷题595. 大的国家

How can the local / park do a good job in industrial analysis?

海外数字身份验证服务商ADVANCE.AI入选EqualOcean《2022品牌出海服务市场研究报告》

众昂矿业:萤石助力氟产业锂电建设发展

收藏!这些提高程序员生产力的工具你用过吗?
随机推荐
Wireshark data analysis and forensics information pacapng
十大券商:“推土机行情”再现
记一次排查线上MySQL死锁过程,不能只会curd,还要知道加锁原理
Software testing interface testing JMeter 5.5 installation tutorial
Discussion on distributed unique ID generation scheme
Paper writing tool: latex online website
剑指 Offer 38. 字符串的排列
Pain points and solutions of M1 notebook home office | community essay solicitation
SYSTEMd debugging
收藏!这些提高程序员生产力的工具你用过吗?
2022 PMP project management examination agile knowledge points (5)
自己收藏的一些网址
基于OpenStack的虚拟机在线迁移
股票开户安全吗?上海股票开户。
Node data collection and remote flooding transmission of label information
wirehark数据分析与取证infiltration.pacapng
关于二叉树
Procurement intelligence is about to break out, and the "3+2" system of Alipay helps enterprises build core competitive advantages
论文阅读《Large-Scale Direct SLAM with Stereo Cameras》
SQL question brushing 595 Big country