为什么会有ZooKeeper 我们知道要写一个分布式应用是非常困难的,主要原因就是局部故障。一个消息通过网络在两个节点之间传递时,网络如果发生故障,发送方并不知道接收方是否接收到了这个消息。有可能是收到消息以后发生了网络故障,也有可能是没有收到消息,又或者可能接收方的进程死了。发送方唯一的确认方法就 ...
分类:
其他好文 时间:
2020-06-09 16:45:51
阅读次数:
57
kafka启动(需要先启动zk): bin/zookeeper-server-start.sh -daemon config/zookeeper.properties bin/kafka-server-start.sh -daemon config/server.properties kafka停止 ...
分类:
其他好文 时间:
2020-06-08 12:58:18
阅读次数:
252
Zookeeper概述zookeeper高容错数据一致性协议(CP)的分布式小文件系统,提供类似于文件系统的目录方式的数据存储。全局数据一致性:每个server保存一份相同的数据副本,client无论连接到哪个server展示的数据都是一致的。可靠性:一旦事务成功提交,就会被保留下来。有序性:客户端发起的事务请求,在也会顺序的应用在Zookeeper中。数据更新原子性:一次数据更新要么成功要么失败
分类:
其他好文 时间:
2020-06-08 12:44:34
阅读次数:
60
1、安装zookeeper 因为zookeeper 与kafka 存在对应的版本,选择不当,将无法使用,所以两者都使用最新版本 下载地址:https://zookeeper.apache.org/releases.html 目录 下载并解压ZooKeeper软件压缩包后,可以看到zk包含以下的文件和 ...
分类:
系统相关 时间:
2020-06-08 12:37:32
阅读次数:
82
一、基础知识 1. 分布式理论 (1)什么是分布式系统? 分布式系统是若干独立计算机的集合,这些计算机对于用户来说就像单个相关系统。 分布式系统由一组通过网络进行通信、为了完成共同的任务而协调工作的计算机节点组成的系统。分布式系统的出现是为了用廉价的、普通的机器完成单个计算机无法完成的计算、存储任务 ...
分类:
编程语言 时间:
2020-06-07 21:30:53
阅读次数:
63
一、写在前面 现在面试,一般都会聊聊分布式系统这块的东西。通常面试官都会从服务框架(Spring Cloud、Dubbo)聊起,一路聊到分布式事务、分布式锁、ZooKeeper等知识。 所以咱们这篇文章就来聊聊分布式锁这块知识,具体的来看看Redis分布式锁的实现原理。 说实话,如果在公司里落地生产 ...
分类:
其他好文 时间:
2020-06-05 21:28:08
阅读次数:
66
kafka的高可用 一、高可用的由来 1.1 为何需要Replication 在Kafka在0.8以前的版本中,是没有Replication的,一旦某一个Broker宕机,则其上所有的Partition数据都不可被消费,这与Kafka数据持久性及Delivery Guarantee的设计目标相悖。同 ...
分类:
其他好文 时间:
2020-06-04 20:10:00
阅读次数:
56
Eureka 自我保护机制:某时刻某个服务不能用了,但是还会保存该服务信息(默认90s收不到心跳会设置该服务为宕机),不会立即清理,属于CAP里面的AP分支 Zookeeper 实时剔除宕机的服务,所以在服务可用性不如Eureka和Consul Consul go语言写的,所以在维护和个性化方面代价 ...
分类:
编程语言 时间:
2020-06-04 15:26:13
阅读次数:
78
前言 之前的Zookeeper协议篇-Paxos算法与ZAB协议通过了解Paoxs算法开始,到Zab协议的两大特性:崩溃恢复和消息广播,学习了Zookeeper是如何通过Zab协议实现高可用,本篇主要解析Zookeeper的启动流程 单机模式启动流程 我们知道,Zookeeper使用中分为单机和集群 ...
分类:
其他好文 时间:
2020-06-04 10:24:44
阅读次数:
68
生态 Spark Core:最重要,其中最重要的是RDD(弹性分布式数据集) Spark SQL Spark Streaming Spark MLLib:机器学习算法 Spark Graphx:图计算 特点 针对大规模数据处理的快速通用引擎 基于内存计算 速度快,易用,兼容性强 体系架构 主节点:C ...
分类:
数据库 时间:
2020-06-03 20:48:29
阅读次数:
89