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

人才网官方网站常州seo外包公司

人才网官方网站,常州seo外包公司,网络编辑培训学校,wordpress采集文章后定时发布RabbiMQ 是用 Erlang 开发的,集群非常方便,因为 Erlang 天生就是一门分布式语言,但其本身并不支持负载均衡。 RabbitMQ 的集群节点包括内存节点、磁盘节点。RabbitMQ 支持消息的持久化,也就是数据写在磁盘上,最合适的方案就是既有内存节点,又有磁盘节点。 RabbitMQ 模式大…

RabbiMQ 是用 Erlang 开发的,集群非常方便,因为 Erlang 天生就是一门分布式语言,但其本身并不支持负载均衡。

RabbitMQ 的集群节点包括内存节点、磁盘节点。RabbitMQ 支持消息的持久化,也就是数据写在磁盘上,最合适的方案就是既有内存节点,又有磁盘节点。

RabbitMQ 模式大概分为以下三种:

  • 单一模式;
  • 普通模式(默认的集群模式);
  • 镜像模式(把需要的队列做成镜像队列,存在于多个节点,属于 RabbiMQ 的 HA 方案,在对业务可靠性要求较高的场合中比较适用)。 要实现镜像模式,需要先搭建一个普通集群模式,在这个模式的基础上再配置镜像模式以实现高可用。

1. 集群架构 #

2. 集群部署规划 #

itemnode 1node 2node 3
listeners.tcp.default500051005200
management.tcp.port502051205220
mqtt.listeners.tcp.default504051405240

3. 安装文件 #

下载文件

请下载 unix generic 版本

  • 以 3.9.11 版本为例: https://github.com/rabbitmq/rabbitmq-server/releases/download/v3.9.11/rabbitmq-server-generic-unix-3.9.11.tar.xz

  • 其他版本下载:https://github.com/rabbitmq/rabbitmq-server/releases

解压文件

xz -d rabbitmq-server-generic-unix-3.9.11.tar.xztar xvf rabbitmq-server-generic-unix-3.9.11.tar

复制成功!

4. 集群部署 #

4.1 创建文件目录 #

分别创建三个节点(node)目录,多个以此类推 node-N

cd /datamkdir -p rabbitmq/dc3/node-01 rabbitmq/dc3/node-02 rabbitmq/dc3/node-03

复制成功!

将解压的 rabbitmq 文件放入到每个节点中,其他节点操作一致

cp -r rabbitmq-server/* rabbitmq/dc3/node-01/# pwd
# /data/rabbitmq/dc3/node-01# ls
# escript  etc  plugins  sbin  share

复制成功!

为每个节点创建配置和 keys 目录,其他节点操作一致

cd node-Nmkdir -p etc/rabbitmq keys

复制成功!

4.2 配置文件 #

在每个节点的 etc/rabbitmq 下添加配置文件 advanced.configrabbitmq.confrabbitmq-env.confenabled_plugins

4.2.1 advanced.config #
[%% ----------------------------------------------------------------------------%% Advanced Erlang Networking/Clustering Options.%%%% See https://www.rabbitmq.com/clustering.html for details%% ----------------------------------------------------------------------------%% Sets the net_kernel tick time.%% Please see http://erlang.org/doc/man/kernel_app.html and%% https://www.rabbitmq.com/nettick.html for further details.%%%% {kernel, [{net_ticktime, 60}]},%% ----------------------------------------------------------------------------%% RabbitMQ Shovel Plugin%%%% See https://www.rabbitmq.com/shovel.html for details%% ----------------------------------------------------------------------------{rabbitmq_shovel,[{shovels,[%% A named shovel worker.%% {my_first_shovel,%%  [%% List the source broker(s) from which to consume.%%%%   {sources,%%    [%% URI(s) and pre-declarations for all source broker(s).%%     {brokers, ["amqp://user:password@host.domain/my_vhost"]},%%     {declarations, []}%%    ]},%% List the destination broker(s) to publish to.%%   {destinations,%%    [%% A singular version of the 'brokers' element.%%     {broker, "amqp://"},%%     {declarations, []}%%    ]},%% Name of the queue to shovel messages from.%%%% {queue, <<"your-queue-name-goes-here">>},%% Optional prefetch count.%%%% {prefetch_count, 10},%% when to acknowledge messages:%% - no_ack: never (auto)%% - on_publish: after each message is republished%% - on_confirm: when the destination broker confirms receipt%%%% {ack_mode, on_confirm},%% Overwrite fields of the outbound basic.publish.%%%% {publish_fields, [{exchange,    <<"my_exchange">>},%%                   {routing_key, <<"from_shovel">>}]},%% Static list of basic.properties to set on re-publication.%%%% {publish_properties, [{delivery_mode, 2}]},%% The number of seconds to wait before attempting to%% reconnect in the event of a connection failure.%%%% {reconnect_delay, 2.5}%% ]} %% End of my_first_shovel]}%% Rather than specifying some values per-shovel, you can specify%% them for all shovels here.%%%% {defaults, [{prefetch_count,     0},%%             {ack_mode,           on_confirm},%%             {publish_fields,     []},%%             {publish_properties, [{delivery_mode, 2}]},%%             {reconnect_delay,    2.5}]}]},{rabbitmq_auth_backend_ldap, [%%%% Authorisation%% =============%%%% The LDAP plugin can perform a variety of queries against your%% LDAP server to determine questions of authorisation. See%% https://www.rabbitmq.com/ldap.html#authorisation for more%% information.%% Set the query to use when determining vhost access%%%% {vhost_access_query, {in_group,%%                       "ou=${vhost}-users,ou=vhosts,dc=example,dc=com"}},%% Set the query to use when determining resource (e.g., queue) access%%%% {resource_access_query, {constant, true}},%% Set queries to determine which tags a user has%%%% {tag_queries, []}]}
].

复制成功!

4.2.2 rabbitmq.conf #
## This example configuration file demonstrates various settings
## available via rabbitmq.conf. It primarily focuses core broker settings
## but some tier 1 plugin settings are also covered.
##
## This file is AN EXAMPLE. It is NOT MEANT TO BE USED IN PRODUCTION. Instead of
## copying the entire (large!) file, create or generate a new rabbitmq.conf for the target system
## and populate it with the necessary settings.
##
## See https://rabbitmq.com/configure.html to learn about how to configure RabbitMQ,
## the ini-style format used by rabbitmq.conf, how it is different from `advanced.config`,
## how to verify effective configuration, and so on.
##
## See https://rabbitmq.com/documentation.html for the rest of RabbitMQ documentation.
##
## In case you have questions, please use RabbitMQ community Slack and the rabbitmq-users Google group
## instead of GitHub issues.# ======================================
# Core broker section
# ======================================## Networking
## ====================
##
## Related doc guide: https://rabbitmq.com/networking.html.
##
## By default, RabbitMQ will listen on all interfaces, using
## the standard (reserved) AMQP 0-9-1 and 1.0 port.
##
listeners.tcp.default = 5000## To listen on a specific interface, provide an IP address with port.
## For example, to listen only on localhost for both IPv4 and IPv6:
##
# IPv4
# listeners.tcp.local    = 127.0.0.1:5672
# IPv6
# listeners.tcp.local_v6 = ::1:5672## You can define multiple listeners using listener names
# listeners.tcp.other_port = 5673
# listeners.tcp.other_ip   = 10.10.10.10:5672## TLS listeners are configured in the same fashion as TCP listeners,
## including the option to control the choice of interface.
##
# listeners.ssl.default = 5030## It is possible to disable regular TCP (non-TLS) listeners. Clients
## not configured to use TLS and the correct TLS-enabled port won't be able
## to connect to this node.
# listeners.tcp = none## Number of Erlang processes that will accept connections for the TCP
## and TLS listeners.k
##
# num_acceptors.tcp = 10
# num_acceptors.ssl = 10## Socket writer will force GC every so many 
http://www.dinnco.com/news/75973.html

相关文章:

  • wordpress如何添加链接菜单企业seo推广
  • wordpress视频点播太原seo网络优化招聘网
  • 网站可以做的兼职营销网络是什么
  • 网站如何做电脑和手机app长春网站提升排名
  • gis做图网站近几年的网络营销案例
  • 论坛类网站搭建网站推广计划书范文
  • 网站怎么做流量竞价网站推广
  • 兰山网站建设seo免费入门教程
  • 仿威客网站百度官网登录入口手机版
  • 不是用于制作网页的软件昆明seo工资
  • WordPress网站远程访问口碑营销成功案例
  • 购物网站做兼职聚名网官网
  • 博客网站开发源代码百度搜索排行seo
  • 修改文章缩略字数 WORDPRESSseo营销培训咨询
  • 有哪些网站的搜索引擎营销活动推广策划
  • 做一个网站需要多长时间深圳网站建设服务
  • 网站兼容平台外宣推广技巧
  • 装修绘图软件appseo关键词排名实用软件
  • 做古建的那些网站比较适合百度seo排名优化联系方式
  • 阿里建设网站百度如何免费打广告
  • 企业网站建设预算方案二级域名在线扫描
  • 重庆网络营销网站建设销售百度广告投放价格
  • 广州建设网站的公司简介网址收录网站
  • 天津做网站多少钱无锡seo优化公司
  • 黄页网址大全视频在线观看关键词排名seo优化
  • 如何 做网站跳转霸屏推广
  • 嘉兴简单建站seo长沙
  • 沈阳建设工程监理有限公司湖南专业关键词优化
  • 网站建设与管理的总结报告在线培训管理系统
  • 网站后台文章编辑器磁力猫搜索引擎入口官网