zookeeper集群

全网最通俗易懂的Kafka入门!

守給你的承諾、 提交于 2019-12-06 16:22:13
摘自: https://www.cnblogs.com/Java3y/p/11982381.html 全网最通俗易懂的Kafka入门! 前言 只有光头才能变强。 文本已收录至我的GitHub仓库,欢迎Star: https://github.com/ZhongFuCheng3y/3y 在这篇之前已经写过两篇基础文章了, 强烈建议 先去阅读: 什么是ZooKeeper? 什么是消息队列? 众所周知,消息队列的产品有好几种,这里我选择学习Kafka的原因,无他,公司在用。 我司使用的是Kafka和自研的消息队列(Kafka和RocketMQ)改版,于是我就想学学Kafka这款消息队列啦。本篇文章对Kafka入门,希望对大家有所帮助。 本文知识点提前预览: 这篇文章花了我很长时间画图,目的是希望以最通俗易懂的方式带大家入门,如果觉得不错, 希望能给我点个赞 ! 一、什么是Kafka? 首先我们得去官网看看是怎么介绍Kafka的: https://kafka.apache.org/intro 在收集资料学习的时候,已经发现有不少的前辈对官网的介绍进行翻译和总结了,所以我这里就不重复了,贴下地址大家自行去学习啦: https://scala.cool/2018/03/learning-kafka-1/ https://colobu.com/2014/08/06/kafka

zookeeper应用场景

本秂侑毒 提交于 2019-12-06 15:16:26
1、基本思想:zookeeper的应用场景均可从其节点类型和watcher机制进行考虑。 2、应用场景: a、统一命名服务:主要使用顺序节点进行。 b、集群管理:临时节点+wather机制 c、分布式日志收集: d、master选举: 5、分布式锁:使用临时节点+监听机制 6、分布式屏障:使用临时节点+监听机制 来源: https://www.cnblogs.com/guoyu1/p/11992274.html

Kafka初识

亡梦爱人 提交于 2019-12-06 14:22:36
转载自 https://www.cnblogs.com/luotianshuai/p/5206662.html Kafka初识 1、Kafka使用背景 在我们大量使用分布式数据库、分布式计算集群的时候,是否会遇到这样的一些问题: 我们想分析下用户行为(pageviews),以便我们设计出更好的广告位 我想对用户的搜索关键词进行统计,分析出当前的流行趋势 有些数据,存储数据库浪费,直接存储硬盘效率又低 这些场景都有一个共同点: 数据是由上游模块产生,上游模块,使用上游模块的数据计算、统计、分析,这个时候就可以使用消息系统,尤其是分布式消息系统! 2、Kafka的定义 What is Kafka:它是一个分布式消息系统,由linkedin使用scala编写,用作LinkedIn的活动流(Activity Stream)和运营数据处理管道(Pipeline)的基础。具有高水平扩展和高吞吐量。 3、Kafka和其他主流分布式消息系统的对比 定义解释: 1、Java 和 scala都是运行在JVM上的语言。 2、erlang和最近比较火的和go语言一样是从代码级别就支持高并发的一种语言,所以RabbitMQ天生就有很高的并发性能,但是 有RabbitMQ严格按照AMQP进行实现,受到了很多限制。kafka的设计目标是高吞吐量,所以kafka自己设计了一套高性能但是不通用的协议

docker kafka 单节点及集群部署

纵饮孤独 提交于 2019-12-06 12:47:19
docker kafka 单节点 宿主机IP: 192.168.43.177 1.下载镜像 这里使用了wurstmeister/kafka和wurstmeister/zookeeper这两个版本的镜像 docker pull wurstmeister/zookeeper docker pull wurstmeister/kafka 在命令中运行docker images验证两个镜像已经安装完毕 2.启动 启动zookeeper容器 docker run -d --name zookeeper -p 2181:2181 -t wurstmeister/zookeeper 启动kafka容器 docker run -d --name kafka -p 9092:9092 -e KAFKA_BROKER_ID=0 -e KAFKA_ZOOKEEPER_CONNECT=192.168.43.177:2181 -e KAFKA_ADVERTISED_LISTENERS=PLAINTEXT://192.168.43.177:9092 -e KAFKA_LISTENERS=PLAINTEXT://0.0.0.0:9092 -t wurstmeister/kafka 3.进入容器操作: cd /opt/kafka_2.12-2.3.0/bin 创建主题 sh kafka-topics.sh -

[转帖]从0开始的高并发(一)--- Zookeeper的基础概念

牧云@^-^@ 提交于 2019-12-06 11:05:49
从0开始的高并发(一)--- Zookeeper的基础概念 https://juejin.im/post/5d0bd358e51d45105e0212db 前言 前面几篇以spring作为主题也是有些时日了,高并发分布式这个主题也挺大能说挺多东西的,也是再开了个坑,然后分P来慢慢跟进吧。 我和大部分人一样是一名学习者,不是布道者,更多的是自己的学习总结而不具有权威,进行总结,尽量让人看的简单是我的本意,然后有错则改,无则加勉是最好的,在此也希望大家共同进步。 高并发分布式开发技术体系已然非常的庞大,从国内互联网企业使用情况,可发现RPC、Dubbo、ZK是最基础的技能要求。 关于Zookeeper你是不是还停留在Dubbo注册中心的印象中呢?还有它的工作原理呢?经典应用场景呢?对前面三个问题,如若回答时没有自己的思路或者说并未了解,那么我觉得我可以帮助到你去入门,并深化这些知识,让你在面试中更好地去回答。 话不多说进入正题 1. 并发环境下面临的挑战 回忆我们学多线程的时候,网上有个图也是十分的有意思 其实我们把线程换成进程,相当于每台服务上跑了一个程序,相同的应用程序运行于多个服务器集群上,是为了解决单台服务面对高并发处理不来的情况。而尝试去处理这些情况,我们就会面临很多诸如此类的问题 比如说我们现在是3台服务器的一个集群, 怎么保证所有机器共享的配置信息保持一致?

终极手撕之架构大全:分布式+开源框架+微服务+性能优化,够不够?

谁都会走 提交于 2019-12-06 10:20:01
终极手撕之架构大全:分布式+开源框架+微服务+性能优化,够不够? 一只Tom猫4小时前 我要分享 之前有零零散散整理过一些专题给大家参考学习,这次一次性来个终极手撕之架构大全,包含开源框架、分布式、微服务、性能优化等四个大专题共17个小专题,全部一锅端,送给大家一起学习~ 注意:需要全部完整版架构大全答案的可以 【“点击我”免费领取】 《终极手撕之架构大全:分布式+开源框架+微服务+性能优化,够不够?》 01 开源框架(Spring +SpringMVC+Mybatis) 开源框架答案解析如下: 1.1 手撕开源框架之Spring 什么是 Spring 框架?Spring 框架有哪些主要模块? 使用 Spring 框架能带来哪些好处? 什么是控制反转(IOC) 请解释下 Spring 框架中的 IoC BeanFactory 和 和 ApplicationContext 有什么区别? Spring 有几种配置方式? 如何用基于 XML 配置的方式配置 Spring 如何用基于 Java 配置的方式配置 Spring 怎样用注解的方式配置 Spring 请解释 Spring Bean 的生命周期? Spring Bean 的作用域之间有什么区别? Spring 框架中的单例 Beans 是线程安全的么? 请举例说明如何在 Spring 中注入一个 Java Collection

zookeeper 学习

寵の児 提交于 2019-12-06 08:41:24
zk 可视化客户端 zk 可视化工具: ZooInspector 参考: https://www.jianshu.com/p/f45af8027d7f 简介 特性 目录 还有 recipes 目录下面就是 demo ,, src 目录就是 zookeeper 的源码 配置 # The number of milliseconds of each tick 用于计算的时间单元 毫秒 : 比如 session 超时 : N* tickTime 。 所有的时间都是 以这个为单位 tickTime=5000 # The number of ticks that the initial # synchronization phase can take 用于集群,允许从节点连接并同步到 master 节点的初始化连接时间,以 tickTime 的倍数表示 initLimit=10 # The number of ticks that can pass between # sending a request and getting an acknowledgement 用于集群,master 主节点与从节点之间发生消息,请求和应答时间长度(心跳机制) syncLimit=5 # the directory where the snapshot is stored. # do not use

ZK调优——悟空智慧教育

大兔子大兔子 提交于 2019-12-06 08:34:56
(1)、zookeeper.session.timeout:默认值3分钟,不可配置太短,避免session超时,hbase停止服务,线上生产环境由于配置为1分钟,出现过2次该原因导致的hbase停止服务,也不可配置太长,如果太长,当rs挂掉,zk不能快速知道,从而导致master不能及时对region进行迁移。 (2)、zookeeper数量:至少5个节点。给每个zookeeper 1G 左右的内存,最好有独立的磁盘。 (独立磁盘可以确保zookeeper不受影响).如果集群负载很重,不要把Zookeeper和RegionServer运行在同一台机器上面。就像DataNodes 和 TaskTrackers一样,只有超过半数的zk存在才会提供服务,比如:共5台,则最多只运行挂2台,配置4台与3台一样,最多只运行挂1台。 (3)、hbase.zookeeper.property.maxClientCnxns:zk的最大连接数,默认为300,可配置上千。 以上文章内容来源于《悟空智慧教育》: www.wukongone.com,《悟空智慧教育》是一家专业的大数据视频教学网,专属定制您的未来。 来源: https://www.cnblogs.com/wukongone/p/11972722.html

一步步教你搭建Hadoop集群

落花浮王杯 提交于 2019-12-06 08:33:00
一、准备工作 假设现在有4台机器,分别是:192.168.1.101,192.168.1.102,192.168.1.103,192.168.1.104。 这里以Centos7系统为例 (不同版本的Linux系统在做某些操作时命令不一样,可自行百度) 四个节点都有登录账户hadoop。 我们计划这么配置: 先关闭防火墙 systemctl stop firewalld . service systemctl stop iptables . service 然后再检查各机器的22端口是否开放 这里我们把ip映射成主机名,执行如下命令: vi / etc / hosts 在hosts文件中,编辑以下内容 192.168 . 1.101 node1 192.168 . 1.102 node2 192.168 . 1.103 node3 192.168 . 1.104 node4 保存退出 检查node1的3306端口是否开放 然后将hosts文件发送到其它节点上 scp / etc / hosts hadoop@node2 : /etc/ scp / etc / hosts hadoop@node3 : /etc/ scp / etc / hosts hadoop@node4 : /etc/ 在发送的过程中需要输入hadoop用户的密码 二、配置免密码登录 然后在家目录下执行 ssh -

ZooKeeper

安稳与你 提交于 2019-12-06 07:40:46
一、ZooKeeper入门   1.1 ZooKeeper 概述    Zookeeper是一个 基于观察者模式分布式开源框架 ,提供了协调分布式应用的基本服务,它向外部应用暴露一组通用服务 ——分布式同步( Distributed Synchronization)、命名服务( Naming Service)、集群维护( Group Maintenance)等,简化分布式应用协调及其管理的难度,提供高性能的分布式服务。 ZooKeeper本身可以以单机模式安装运行,不过它的长处在于 通过分布式 ZooKeeper集群(一个 Leader,多个 Follower),基于一定的策略来保证 ZooKeeper集群的稳定性和可用性,从而实现分布式应用的可靠性。   1.2 集群机制    Zookeeper集群的角色: Leader 和 follower   只要集群中有半数以上节点存活,集群就能提供服务   1.3 ZooKeeper 特性     1. 一个leader,多个follower组成的集群    2、 全局数据一致: 每个server保存一份相同的数据副本,client无论连接到哪个server,数据都是一致的    3、分布式读写,更新请求转发,由leader实施    4、更新请求顺序进行,来自同一个client的更新请求按其发送顺序依次执行    5、 数据更新原子性