分类:运维

运维工具:Operation Tool

2019-09-20 0 By admin

Dubbo 运行原理和Java代码示例

一、Dubbo 在工作时有以下四个角色参与 Provider:暴露服务的服务提供方(工作者,用于处理任务) Consumer:调用远程服务的服务消费方(提交任务并接受任务处理结果) Registry:服务注册与发现的注册中心 Monitor: 统计服务的调用次数和调用时间的监控中心 Containe…

2019-09-20 0 By admin

分布式系统的CAP和BASE理论扩展

一、分布式一致性 在分布式系统中要解决的一个重要问题就是数据的复制。 在我们的日常开发经验中,相信很多开发人员都遇到过这样的问题:假设客户端C1将系统中的一个值K由V1更新为V2,但客户端C2无法立即读取到K的最新值,需要在一段时间之后才能 读取到。这很正常,因为数据库复制之间存在延时。 1.1、分…

2019-09-19 0 By admin

Zookeeper 集群选主和数据同步算法

一、选主流程 1、恢复模式 当『Leader』崩溃或者『Leader』失去大多数的『Follower』,这时候 Zookeeper 进入恢复模式。 恢复模式需要重新选举出一个新的『Leader』,让所有的 Server都恢复到一个正确的状态。 Zookeeper 的选举算法有两种:一种是基于basi…

2019-09-18 0 By admin

Zookeeper 数据节点介绍和命令管理

ZooKeeper的目标就是封装好复杂易出错的关键服务,将简单易用的接口和性能高效、功能稳定的系统提供给用户。 ZooKeeper包含一个简单的原语集,提供Java和C的接口。 一、Zookeeper Znode 数据节点 在Zookeeper中,znode是一个类似Unix文件系统路径(目录)的节…

2019-09-18 0 By admin

Dubbo (开源分布式服务框架)

Dubbo是阿里巴巴公司开源的一个高性能优秀的服务框架,使得应用可通过高性能的 RPC 实现服务的输出和输入功能,可以和Spring框架无缝集成。 Dubbo是一款高性能、轻量级的开源Java RPC框架,它提供了三大核心能力:面向接口的远程方法调用,智能容错和负载均衡,以及服务自动注册和发现。 一…

2019-09-11 0 By admin

RabbitMQ 使用中的注意事项

一、轮询调度 我们使用任务队列的好处之一就是使任务可以并行化,增加系统的并行处理能力。如果我们正在建立一个积压的工作,我们可以紧紧增加更多的Worker实例就可以完成大量工作的处理,修改和维护就很容易。 默认情况下,RabbitMQ将会发送每一条消息给序列中每一个消费者。每个消费者都会得到相同数量的…

2019-09-11 0 By admin

RabbitMQ 的消息传递模型

虚拟消息服务器(VirtualHost) 对象下可以分为【消息交换机】Exchange用于管理消息队列和【队列】Queue用于消息队列的分类。 一、消息传递模型 我们都知道【生产者】将消息发送到 RabbitMQ 服务中,而【消费者】从其接受和使用消息。不过消息是如何在RabbitMQ中传递的呢?这…

2019-09-05 0 By admin

Ansible 关于变量的介绍

ansible 提供了多种定义变量和使用的方式供我们选择使用。 一、定义变量 1.1、vars 在playbook 直接定义 在playbook 编写中,直接在开头部分的vars块中定义变量;并在任务中调用。 1.2、vars_files 在playbook 中加载变量文件 使用 vars_file…