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

苏州网站建设方案网络营销推广专员的岗位职责

苏州网站建设方案,网络营销推广专员的岗位职责,快速搭建网站 优帮云,房屋设计图片1 MQ简介 1.1 什么是MQ MQ#xff08;Message Queue#xff09;是一种跨进程的通信机制#xff0c;用于传递消息。通俗点说#xff0c;就是一个先进先出的数据结构。 1.2 MQ的应用场景 1.2.1 异步解耦 最常见的一个场景是用户注册后#xff0c;需要发送注册邮件和短信通…1 MQ简介 1.1 什么是MQ MQMessage Queue是一种跨进程的通信机制用于传递消息。通俗点说就是一个先进先出的数据结构。 1.2 MQ的应用场景 1.2.1 异步解耦 最常见的一个场景是用户注册后需要发送注册邮件和短信通知以告知用户注册成功。传统的做法如下 此架构下注册、邮件、短信三个任务全部完成后才返回注册结果到客户端用户才能使用账号登录。但是对于用户来说注册功能实际只需要注册系统存储用户的账户信息后该用户便可以登录而后续的注册短信和邮件不是即时需要关注的步骤。         所以实际当数据写入注册系统后注册系统就可以把其他的操作放入对应的消息队列 MQ 中然后马上返回用户结果由消息队列 MQ 异步地进行这些操作。架构图如下 异步解耦是消息队列 MQ 的主要特点主要目的是减少请求响应时间和解耦。主要的使用场景就是将比较耗时而且不需要即时同步返回结果的操作作为消息放入消息队列。同时由于使用了消息队列MQ只要保证消息格式不变消息的发送方和接收方并不需要彼此联系也不需要受对方的影响即解耦合。 1.2.2 流量削峰 流量削峰也是消息队列 MQ 的常用场景一般在秒杀或团队抢购(高并发)活动中使用广泛。 在秒杀或团队抢购活动中由于用户请求量较大导致流量暴增秒杀的应用在处理如此大量的访问流量后下游的通知系统无法承载海量的调用量甚至会导致系统崩溃等问题而发生漏通知的情况。为解决这些问题可在应用和下游通知系统之间加入消息队列 MQ。 秒杀处理流程如下所述 1用户发起海量秒杀请求到秒杀业务处理系统。 2 秒杀处理系统按照秒杀处理逻辑将满足秒杀条件的请求发送至消息队列 MQ。 3下游的通知系统订阅消息队列 MQ 的秒杀相关消息再将秒杀成功的消息发送到相应用户。 4用户收到秒杀成功的通知。 1.3 常见的MQ产品 目前业界有很多MQ产品比较出名的有下面这些 ZeroMQ  号称最快的消息队列系统尤其针对大吞吐量的需求场景。扩展性好开发比较灵活采用C语言实现实际上只是一个socket库的重新封装如果做为消息队列使用需要开发大量的代码。ZeroMQ仅提供非持久性的队列也就是说如果down机数据将会丢失。RabbitMQ  使用erlang语言开发性能较好适合于企业级的开发。但是不利于做二次开发和维护。ActiveMQ  历史悠久的Apache开源项目。已经在很多产品中得到应用实现了JMS1.1规范可以和spring-jms轻松融合实现了多种协议支持持久化到数据库对队列数较多的情况支持不好。RocketMQ  阿里巴巴的MQ中间件由java语言开发性能非常好能够撑住双十一的大流量而且使用起来很简单。Kafka       Kafka是Apache下的一个子项目是一个高性能跨语言分布式Publish/Subscribe消息队列系统相对于ActiveMQ是一个非常轻量级的消息系统除了性能非常好之外还是一个工作良好的分布式系统。 2 RocketMQ入门 RocketMQ是阿里巴巴开源的分布式消息中间件现在是Apache的一个顶级项目。在阿里内部使用非常广泛已经经过了双11这种万亿级的消息流转。 2.1 RocketMQ环境搭建 接下来我们先在linux平台下安装一个RocketMQ的服务 2.1.1 环境准备 下载RocketMQ http://rocketmq.apache.org/release_notes/release-notes-4.4.0/ 环境要求 Linux 64位操作系统64bit JDK 1.8 2.1.2 安装RocketMQ 1 上传文件到Linux系统 [rootheima rocketmq]# ls /usr/local/src/ rocketmq-all-4.4.0-bin-release.zip 2 解压到安装目录 [rootheima src]# unzip rocketmq-all-4.4.0-bin-release.zip [rootheima src]# mv rocketmq-all-4.4.0-bin-release ../rocketmq 2.1.3 启动RocketMQ 1切换到安装目录 [rootheima rocketmq]# ls benchmark bin conf lib LICENSE NOTICE README.md 2 启动NameServer [rootheima rocketmq]# nohup ./bin/mqnamesrv [1] 1467 # 只要进程不报错,就应该是启动成功了,可以查看一下日志 [rootheima rocketmq]# tail -f /root/logs/rocketmqlogs/namesrv.log 3 启动Broker # 编辑bin/runbroker.sh  和  bin/runserver.sh文件,修改里面的 #  JAVA_OPT${JAVA_OPT} -server -Xms8g -Xmx8g -Xmn4g # 为JAVA_OPT${JAVA_OPT} -server -Xms256m -Xmx256m -Xmn128m [rootheima rocketmq]# nohup bin/mqbroker -n localhost:9876 [rootheima rocketmq]# tail -f /root/logs/rocketmqlogs/broker.log  2.1.4 测试RocketMQ 1 测试消息发送 [rootheima rocketmq]# export NAMESRV_ADDRlocalhost:9876 [rootheima rocketmq]# bin/tools.sh org.apache.rocketmq.example.quickstart.Producer 2 测试消息接收 [rootheima rocketmq]# export NAMESRV_ADDRlocalhost:9876 rootheima rocketmq]# bin/tools.sh org.apache.rocketmq.example.quickstart.Consumer 2.1.5 关闭RocketMQ [rootheima rocketmq]# bin/mqshutdown broker [rootheima rocketmq]# bin/mqshutdown namesrv 2.2 RocketMQ的架构及概念 如上图所示整体可以分成4个角色分别是NameServerBrokerProducerConsumer。 Broker(邮递员)  Broker是RocketMQ的核心负责消息的接收存储投递等功能NameServer(邮局)消息队列的协调者Broker向它注册路由信息同时Producer和Consumer向其获取路由信息Producer(寄件人)消息的生产者需要从NameServer获取Broker信息然后与Broker建立连接向Broker发送消息Consumer(收件人)消息的消费者需要从NameServer获取Broker信息然后与Broker建立连接从Broker获取消息Topic(地区) 用来区分不同类型的消息发送和接收消息前都需要先创建Topic针对Topic来发送和接收消息Message Queue(邮件)为了提高性能和吞吐量引入了Message Queue一个Topic可以设置一个或多个MessageQueue这样消息就可以并行往各个Message Queue发送消息消费者也可以并行的从多个Message Queue读取消息Message  Message 是消息的载体。Producer Group   生产者组简单来说就是多个发送同一类消息的生产者称之为一个生产者组。Consumer Group   消费者组消费同一类消息的多个 consumer 实例组成一个消费者组。 2.3 RocketMQ控制台安装 1 下载 # 在git上下载下面的工程 rocketmq-console-1.0.0 https://github.com/apache/rocketmq-externals/releases 2 修改配置文件 # 修改配置文件 rocketmq-console\src\main\resources\application.properties server.port7777 #项目启动后的端口号 rocketmq.config.namesrvAddr192.168.109.131:9876 #nameserv的地址注意防火墙要开启9876端口 3 打成jar包并启动 # 进入控制台项目将工程打成jar包 mvn clean package -Dmaven.test.skiptrue # 启动控制台 java -jar target/rocketmq-console-ng-1.0.0.jar 4 访问控制台
http://www.hkea.cn/news/14520273/

相关文章:

  • wap网站案例网站开发后端
  • 网站的制作公司网站开发带后台
  • 太仓住房和城乡建设局网站企业官网怎么和别的网站做链接
  • 青岛网站建设开发外包贵州网站制作设计公司哪家好
  • 数据网站建设成本新泰程序开发
  • xampp做网站设置怎么分析一个网站
  • 网站seo是什么意建筑公司网站排名
  • 南阳网站seo推广公司哪家好做家政下载什么网站或什么群呢
  • 网站title如何写网站建设可行性分析报告
  • 郴州市网站建设公司制作人是干嘛的
  • 青海省城乡建设网站域名网站网址
  • 建设项目验收网站wordpress 老板页
  • 个人证书查询网全国联网如何优化网页
  • 北京建设主管部门网站网站开发必学的技巧有哪些
  • wordpress网站模板下载商业网站开发实训内容
  • 网站建设 地址 上海石门二路手机软件开发
  • 服装企业网站策划书自己做网站自己买服务器
  • seo网站排名优化公司哪家如何将下载好的网站模板用到织梦程序上
  • 做饲料的专业网站做网站的服务器很卡怎么办
  • 学做吃的的网站四川建设行业数据共享平台的网站
  • 免费asp地方门户网站系统上海注册公司流程及资料
  • 汉语资源建设相关网站网页制作百度百科
  • 做网站用到的工具重庆天古装饰公司
  • 宁波网站制作哪家强网络推广方案范文
  • 美度手表网站网页设计总结2000字
  • 安徽望江县城乡建设局官方网站泉州app网站开发
  • 焦作电子商务网站建设案例wordpress搬家_后台错乱
  • 一学一做教育视频网站有哪些wordpress 翻墙
  • 哪个网站做ppt企业网站建设方案机构
  • 免费wap自助建站网站wordpress 图片2m