当前位置: 首页 > news >正文

番禺建设网站开发网站开发的一般流程

番禺建设网站开发,网站开发的一般流程,wordpress装饰公司主题,网络推广培训班课程这些教程介绍了使用RabbitMQ创建消息传递应用程序的基础知识。您需要安装RabbitMQ服务器才能完成教程 1. 打造第一个Hello World 程序 RabbitMQ是一个消息代理#xff1a;它接受和转发消息。你可以把它想象成一个邮局#xff1a;当你把你想要发布的邮件放在邮箱里时#xff… 这些教程介绍了使用RabbitMQ创建消息传递应用程序的基础知识。您需要安装RabbitMQ服务器才能完成教程 1. 打造第一个Hello World 程序 RabbitMQ是一个消息代理它接受和转发消息。你可以把它想象成一个邮局当你把你想要发布的邮件放在邮箱里时你可以确定先生或女士邮递员最终将邮件发送给你的收件人。 在这个比喻中RabbitMQ是邮政信箱邮局和邮递员。 RabbitMQ和邮局的主要区别在于它不处理纸张而是接受存储和转发二进制数据块 - 消息。 英文原文地址https://www.rabbitmq.com/tutorials/tutorial-one-java.html 2 Hello World使用 Java 客户端 在本教程的这一部分中我们将用Java编写两个程序; 一个发送单个消息的生产者以及接收消息并将其打印出来的消费者。 我们将详细介绍Java API中的一些细节专注于这个非常简单的事情以便开始使用。 这是一个消息传递的“Hello World”。 在下图中“P”是我们的生产者“C”是我们的消费者。 中间的盒子是一个队列 - RabbitMQ代表消费者保存的消息缓冲区。   RabbitMQ 有许多不同语言的RabbitMQ客户端。 这里我们将使用RabbitMQ提供的Java客户端。 2.1  下载相关依赖Jar 包 下载RabbitMQ提供的Java客户端以及它的依赖(SLF4J API and SLF4J Simple) 将这些文件复制到工作目录中并跟着教程复制Java文件。 Tips: RabbitMQ Java客户端也位于中央Maven存储库中其中包含groupId com.rabbitmq和artifactId amqp-client。 请注意SLF4J Simple对于教程来说已经足够了但是您应该在生产环境中使用像Logback 这样的完整日志库。  关于Maven 等其他下载方式请移步 Java Client On Maven Central: RabbitMQ Java client.Quick download: Binary | SourceJavadocAll Java client downloadsOlder versions 2.2 编写代码 我们拥有Java客户端及其依赖关系那么我们接下来开始写代码。 由于是学习使用RabbitMQ,我们这里使用 STS 来写这个项目。 1. 打开STS,新建一个名字叫做 RabbitMQ_HelloWorld_Sample  的 Java Project。 2. 新建一个叫做libs的文件夹我们将上面三个jar 复制到我们的项目中然后并添加依赖    完成后项目结构如图所示 3. 编写生产者类 我们会打电话给我们的消息发布者发送者发送和我们的消息使用者接收者Recv。 发布者将连接到RabbitMQ发送一条消息然后退出 创建Send.java 文件关于代码的讲解在注释里 import java.util.concurrent.TimeoutException; import com.rabbitmq.client.Channel; import com.rabbitmq.client.Connection; import com.rabbitmq.client.ConnectionFactory;public class Send {//设置消息队列的名称private final static String QUEUE_NAMEhello; public static void main(String[] args) throws java.io.IOException, TimeoutException{ /** * 创建一个到RabbitMQ Server 的连接 * 连接抽象出套接字连接并为我们处理协议版本协商和身份验证等。 * 在这里我们连接到本地机器上的代理 - 因此是本地主机。 * 如果我们想连接到另一台机器上的代理我们只需在此指定其名称或IP地址。 * */ ConnectionFactory factory new ConnectionFactory(); factory.setHost(localhost); Connection connection factory.newConnection(); Channel channel connection.createChannel(); /** * 接下来我们创建一个Channel 对象这是大部分用于完成任务的API驻留的地方。 * 要想发送出去我们必须声明一个队列来执行发送,那么我们可以将消息发布到队列中 * */ channel.queueDeclare(QUEUE_NAME, false, false, false, null); String message Hello World!; //声明一个队列是幂等的 - 只有当它不存在时才会被创建。 //消息内容是一个字节数组所以你可以编码任何你喜欢的地方。 channel.basicPublish(, QUEUE_NAME, null, message.getBytes()); System.out.println( [x] Sent message ); //最后我们关闭这些连接对象 channel.close(); connection.close(); } }   执行成功后你将看到这样的内容 Tips: 如果这是您第一次使用RabbitMQ并且您没有看到“已发送”消息那么您可能会抓住您的头脑想知道会出现什么问题 也许代理启动时没有足够的可用磁盘空间默认情况下它至少需要200 MB空闲空间因此拒绝接受消息。 检查代理日志文件以确认并在必要时减少限制。 配置文件文档将告诉你如何设置disk_free_limit。 还有一种可能是你的RabbitMQ 没有启动执行下面命令再次尝试即可。 rabbitmq-service.bat start  4. 编写消费者 这就是我们的出版商。 我们的消费者推送来自RabbitMQ的消息因此与发布单个消息的发布者不同我们将继续运行以收听消息并将其打印出来。 创建一个Recv.java 文件代码讲解在注释里面 import com.rabbitmq.client.ConnectionFactory; import com.rabbitmq.client.Connection;import java.io.IOException; import java.util.concurrent.TimeoutException;import com.rabbitmq.client.AMQP; import com.rabbitmq.client.Channel; import com.rabbitmq.client.Consumer; import com.rabbitmq.client.DefaultConsumer; import com.rabbitmq.client.Envelope; /** * 消费者 * 额外的DefaultConsumer是一个实现Consumer接口的类我们将使用它来缓存由服务器推送给我们的消息。 * */ public class Recv { private final static String QUEUE_NAMEhello; public static void main(String[] args) throws IOException, TimeoutException { /** * 设置与发布者相同; * 我们打开一个连接和一个通道并声明我们将要使用的队列。 * 请注意这与发送发布到的队列相匹配 * */ ConnectionFactory factory new ConnectionFactory(); factory.setHost(localhost); 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 CTRLC); /** * 我们即将告诉服务器将队列中的消息传递给我们。 * 由于它会异步推送消息因此我们以对象的形式提供回调该消息将缓冲消息直到我们准备好使用它们。 * 这是一个DefaultConsumer子类的作用。 * */ 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); } } 执行成功后 我们可以看到我们的消费者收到了消息队列生产者刚发布的消息。 本篇完~ 转载于:https://www.cnblogs.com/xingyunblog/p/9761344.html
http://wiki.neutronadmin.com/news/247363/

相关文章:

  • 找培训机构的网站广州建网站哪里比较好
  • 注册过域名后怎么建设网站信息化管理系统软件
  • 网站优化外包顾问基础很差去公司做网站
  • 网站建设都包括哪些方面网站建设业务员前景
  • 农家乐网站 建设移动商城网站建设
  • 网站建设 10万元网站项目分析怎么做 方法有哪些
  • 网站建设好后打开是目录文件企业年金管理办法
  • 自己可以做网站吗wordpress返回键
  • WordPress建站如何解析新注册公司网站怎么做
  • 广州网站建站wordpress 如何安装插件
  • 网站没有模版能打开吗网络公司排名兴田德润
  • 如何修改网站主页网页设计首页制作
  • qq网页版登录官网登录入口网站wordpress崩了
  • 没有内容的网站应该怎么做传奇霸业手游官网
  • 校园网站建设情况统计表seo关键词有哪些类型
  • 网站logo衔接有公网ip 建网站
  • 商城网站建设需要多少我的电脑做网站服务器
  • php班级网站建设用linux做网站
  • 广州网站建设专家教育培训班
  • 临沂有哪几家做网站的郑州品牌网站建设费用
  • 做特殊任务的网站有网站吗推荐一下
  • 专业的网站制作中心wordpress简约红主题
  • 做公众号首图网站怎么创建个人视频号
  • 如何管理wordpress网站模板下载wordpress备份数库
  • 搭建网站要什么配置做教育网站需要规划哪些内容
  • 深圳网站建设中为汽车设计网站
  • 济南行业网站开发邢台网站123
  • 南宁品牌网站建设公司做网站简单需要什么
  • 仿购物网站目录网站浏览历史能恢复吗怎么设置的
  • 深圳网站建设 外包合作口碑好网站制作公司哪家好