创建实例时开启SSL访问,则数据加密传输,安全性更高。
本节介绍VPC内访问开启SSL的RabbitMQ实例的方法。
export JAVA_HOME=/opt/java/jdk1.8.0_151 export PATH=$JAVA_HOME/bin:$PATH
执行source .bash_profile命令使修改生效。
ECS虚拟机默认自带的JDK可能不符合要求,例如OpenJDK,需要配置为Oracle的JDK,可至Oracle官方下载页面下载Java Development Kit 1.8.111及以上版本。
$ wget https://dms-demo.obs.cn-north-1.myhuaweicloud.com/RabbitMQ-Tutorial-SSL.zip
$ unzip RabbitMQ-Tutorial-SSL.zip
$ cd RabbitMQ-Tutorial-SSL
$ java -cp .:rabbitmq-tutorial-sll.jar Send host port user password
其中,host表示RabbitMQ实例的连接地址,port为RabbitMQ实例的监听端口(默认为5671),user表示RabbitMQ用户名,password表示用户名对应的密码。
使用Ctrl+C命令退出。
$ java -cp .:rabbitmq-tutorial-sll.jar Recv host port user password
其中,host表示RabbitMQ实例的连接地址,port为RabbitMQ实例的监听端口(默认为5671),user表示RabbitMQ用户名,password表示用户名对应的密码。
如需停止消费使用Ctrl+C命令退出。
连接实例并生产消息
ConnectionFactory factory = new ConnectionFactory(); factory.setHost(host); factory.setPort(port); factory.setUsername(user); factory.setPassword(password); factory.useSslProtocol(); Connection connection = factory.newConnection(); Channel channel = connection.createChannel(); channel.queueDeclare(QUEUE_NAME, false, false, false, null); String message = "Hello World!"; channel.basicPublish("", QUEUE_NAME, null, message.getBytes("UTF-8")); System.out.println(" [x] Sent '" + message + "'"); channel.close(); connection.close();
连接实例并消费消息
ConnectionFactory factory = new ConnectionFactory(); factory.setHost(host); factory.setPort(port); factory.setUsername(user); factory.setPassword(password); factory.useSslProtocol(); Connection connection = factory.newConnection(); Channel channel = connection.createChannel(); channel.queueDeclare(QUEUE_NAME, false, false, false, null); System.out.println(" [*] Waiting for messages. To exit press CTRL+C"); Consumer consumer = new DefaultConsumer(channel) { @Override public void handleDelivery(String consumerTag, Envelope envelope, AMQP.BasicProperties properties, byte[] body) throws IOException { String message = new String(body, "UTF-8"); System.out.println(" [x] Received '" + message + "'"); } }; channel.basicConsume(QUEUE_NAME, true, consumer);
在 应用总览 页面上,您可以查看应用的健康状况关键指标, 包括总请求量、平均响...
编者按:本文源自阿里云云效团队出品的《阿里巴巴DevOps实践指南》,扫描上方二...
健康检查是指应用组件在运行过程中,根据需要,定时检查应用健康状况。 平台提供...
分布式消息服务RabbitMQ完全兼容开源RabbitMQ,为您提供即开即用、消息特性丰富...
一名曾仅使用 JavaScript 的开发者解释自己为何从反对 TypeScript 到转变为 Type...
在互联网高速发展的时代,服务器租用托管、vps主机、虚拟主机等互联网基础产品充...
【51CTO.com原创稿件】2021年1月1日,华为重磅发布了《2021年华为中国政企业务合...
近期,一篇90后超一半网贷的文章引起了网络热议。看似90后的收入无法支撑他们的...
全面披露-我目前是一名Python工程师,因此您可以认为我有偏见。但是我想揭露一些...
2014年3月,大数据首次写入中国中央政府工作报告;2015年10月,党的十八届五中全...