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

网站建设猪八戒官网cms

网站建设猪八戒,官网cms,怎样做网站分析总结,建设工程教育网题库新版的 Kafka 使用一个选举出来的 controller 来监听 zookeeper#xff0c;其他 node 再去和 controller 通信#xff0c;这么做的目的是为了减少 zookeeper 的压力。bootstrap-servers 会自动发现其他 broker#xff0c;这也是 bootstrap 的含义 前面我们讲到了消费者其他 node 再去和 controller 通信这么做的目的是为了减少 zookeeper 的压力。bootstrap-servers 会自动发现其他 broker这也是 bootstrap 的含义 前面我们讲到了消费者接下来我们详细讲下消费者个数改变分区重新分配是如何接着消费的 首先我们还是一样创建一个新的主题topic 主题是名字叫bigdata  这里报错原因我已经创建过了主题已经存在 发送一条消息 hello  因为有两个分区其中一个分区有变化一个没有变化 我们开启一个消费者让其中一个分区被消费 查看zookeeper  进入zk客户端 [rootbackup01 bin]# ./zkCli.sh Connecting to localhost:2181 2020-04-06 08:54:43,793 [myid:] - INFO [main:Environment100] - Client environment:zookeeper.version3.4.13-2d71af4dbe22557fda74f9a9b4309b15a7487f03, built on 06/29/2018 04:05 GMT 2020-04-06 08:54:43,816 [myid:] - INFO [main:Environment100] - Client environment:host.namebackup01 2020-04-06 08:54:43,816 [myid:] - INFO [main:Environment100] - Client environment:java.version1.8.0_172 2020-04-06 08:54:43,817 [myid:] - INFO [main:Environment100] - Client environment:java.vendorOracle Corporation 2020-04-06 08:54:43,818 [myid:] - INFO [main:Environment100] - Client environment:java.home/usr/local/java/jdk1.8.0_172/jre 2020-04-06 08:54:43,818 [myid:] - INFO [main:Environment100] - Client environment:java.class.path/usr/local/hadoop/zookeeper/zookeeper-3.4.13/bin/../build/classes:/usr/local/hadoop/zookeeper/zookeeper-3.4.13/bin/../build/lib/*.jar:/usr/local/hadoop/zookeeper/zookeeper-3.4.13/bin/../lib/slf4j-log4j12-1.7.25.jar:/usr/local/hadoop/zookeeper/zookeeper-3.4.13/bin/../lib/slf4j-api-1.7.25.jar:/usr/local/hadoop/zookeeper/zookeeper-3.4.13/bin/../lib/netty-3.10.6.Final.jar:/usr/local/hadoop/zookeeper/zookeeper-3.4.13/bin/../lib/log4j-1.2.17.jar:/usr/local/hadoop/zookeeper/zookeeper-3.4.13/bin/../lib/jline-0.9.94.jar:/usr/local/hadoop/zookeeper/zookeeper-3.4.13/bin/../lib/audience-annotations-0.5.0.jar:/usr/local/hadoop/zookeeper/zookeeper-3.4.13/bin/../zookeeper-3.4.13.jar:/usr/local/hadoop/zookeeper/zookeeper-3.4.13/bin/../src/java/lib/*.jar:/usr/local/hadoop/zookeeper/zookeeper-3.4.13/bin/../conf: 2020-04-06 08:54:43,818 [myid:] - INFO [main:Environment100] - Client environment:java.library.path/usr/java/packages/lib/amd64:/usr/lib64:/lib64:/lib:/usr/lib 2020-04-06 08:54:43,818 [myid:] - INFO [main:Environment100] - Client environment:java.io.tmpdir/tmp 2020-04-06 08:54:43,818 [myid:] - INFO [main:Environment100] - Client environment:java.compilerNA 2020-04-06 08:54:43,818 [myid:] - INFO [main:Environment100] - Client environment:os.nameLinux 2020-04-06 08:54:43,818 [myid:] - INFO [main:Environment100] - Client environment:os.archamd64 2020-04-06 08:54:43,818 [myid:] - INFO [main:Environment100] - Client environment:os.version3.10.0-862.el7.x86_64 2020-04-06 08:54:43,818 [myid:] - INFO [main:Environment100] - Client environment:user.nameroot 2020-04-06 08:54:43,818 [myid:] - INFO [main:Environment100] - Client environment:user.home/root 2020-04-06 08:54:43,818 [myid:] - INFO [main:Environment100] - Client environment:user.dir/usr/local/hadoop/zookeeper/zookeeper-3.4.13/bin 2020-04-06 08:54:43,819 [myid:] - INFO [main:ZooKeeper442] - Initiating client connection, connectStringlocalhost:2181 sessionTimeout30000 watcherorg.apache.zookeeper.ZooKeeperMain$MyWatcher277050dc 2020-04-06 08:54:43,845 [myid:] - INFO [main-SendThread(localhost:2181):ClientCnxn$SendThread1029] - Opening socket connection to server localhost/127.0.0.1:2181. Will not attempt to authenticate using SASL (unknown error) Welcome to ZooKeeper! JLine support is enabled 2020-04-06 08:54:43,960 [myid:] - INFO [main-SendThread(localhost:2181):ClientCnxn$SendThread879] - Socket connection established to localhost/127.0.0.1:2181, initiating session 2020-04-06 08:54:43,985 [myid:] - INFO [main-SendThread(localhost:2181):ClientCnxn$SendThread1303] - Session establishment complete on server localhost/127.0.0.1:2181, sessionid 0x1000393bf830000, negotiated timeout 30000WATCHER::WatchedEvent state:SyncConnected type:None path:null 我们进入了zk客户端的根目录   看到的除了zookeeper其他都是kafka 这个controller是后面要聊的是关于kafka的老大controller不是指定的这个controller是争抢资源的谁先抢到谁就是老大正常情况下先启动的就是老大 [zk: localhost:2181(CONNECTED) 1] get /controllercontroller_epoch controller [zk: localhost:2181(CONNECTED) 1] get /controller {version:1,brokerid:0,timestamp:1586133981273} cZxid 0x500000003 ctime Mon Apr 06 08:46:21 CST 2020 mZxid 0x500000003 mtime Mon Apr 06 08:46:21 CST 2020 pZxid 0x500000003 cversion 0 dataVersion 0 aclVersion 0 ephemeralOwner 0x2000392dd2c0000 dataLength 54 numChildren 0 [zk: localhost:2181(CONNECTED) 2] 我们看到brokerid:0   --- backup01:9092 [zk: localhost:2181(CONNECTED) 3] ls /brokers [ids, topics, seqid] [zk: localhost:2181(CONNECTED) 4] broker/ids    0    1     2 topics有5个主题 [zk: localhost:2181(CONNECTED) 2] ls /controller [] [zk: localhost:2181(CONNECTED) 3] ls /brokers [ids, topics, seqid] [zk: localhost:2181(CONNECTED) 4] ls /brokers/ids [0, 1, 2] [zk: localhost:2181(CONNECTED) 5] ls /brokers/topics [secend, bigdata, three, first, __consumer_offsets] [zk: localhost:2181(CONNECTED) 6] 在新的版本中topics中多了一个__consumer_offsets这样一个主题 查看到消费者的默认50个分区信息 这里我也不知道为啥在zk客户端查看consumers消费者组consumer-group信息为空从上面的消息可以知道我的生产者和消费者都是正常的不知道新版本有什么特殊的改变 查资料可知Kafka 0.9 版本之前consumer 默认将 offset 保存在 Zookeeper 中从 0.9 版本开始consumer 默认将 offset 保存在 Kafka 一个内置的 topic 中该 topic 为__consumer_offsets。  1修改配置文件 consumer.properties  exclude.internal.topicsfalse cd /usr/local/hadoop/kafka/kafka_2.12-2.4.1/config vim consumer.properties 所以我们知道了新版的kafka使用__consumer_offsets想要消费生成功 必须修改consumer.properties 这个配置文件才能正常记录消费信息 __consumer_offsets这个也是个主题正常情况下kafka并不希望我们去获取这个主题下的数据我们这里是为了看里面的消费情况所以我们就设置一下 2读取 offset  (我们使用的是0.11版本之后) 0.11.0.0 之前: bin/kafka-console-consumer.sh --topic __consumer_offsets zookeeper backup01:2181 --formatter kafka.coordinator.GroupMetadataManager\$OffsetsMessageFormatter --consumer.config config/consumer.properties from-beginning 0.11.0.0 之后版本(含): bin/kafka-console-consumer.sh --topic __consumer_offsets zookeeper backup01:2181 --formatter kafka.coordinator.group.GroupMetadataManager\$OffsetsMessageFormatter --consumer.config config/consumer.properties frombeginning 这个很关键指定配置文件如果不指定那就不生效 这里抛出一个问题为什么要使用zookeeper 假设我们要启动一个消费者A去消费这个T1这个主题我们连的是bootstrap-server,这个A 会把消息放到 topic 为__consumer_offsets这个主题下那A是不是相当于__consumer_offsets这个主题的生产者我们要消费的是__consumer_offsets如果我们这里__consumer_offsets连的bootstrap-server感觉这个__consumer_offsets又充当了生产者感觉自己生产数据自己消费有点怪怪的所以我们这里使用了zookeeper 但是在新的版本中 [rootbackup01 kafka_2.12-2.4.1]# bin/kafka-console-consumer.sh --topic __consumer_offsets zookeeper backup01:2181 --formatter kafka.coordinator.group.GroupMetadataManager\$OffsetsMessageFormatter --consumer.config config/consumer.properties frombeginning Missing required argument [bootstrap-server]我们从consumer.properties配置文件也可以只是这里用的是bootstrap.servers  Missing required argument [bootstrap-server]那我们不能用zookeeper了 [rootbackup01 kafka_2.12-2.4.1]# bin/kafka-console-consumer.sh --topic __consumer_offsets --bootstrap-server backup01:9092 --formatter kafka.coordinator.group.GroupMetadataManager\$OffsetsMessageFormatter --consumer.config config/consumer.properties frombeginning key value形式      [test-consumer-group,__consumer_offsets,3]的hash值我们不知道但是程序自己是能找到那个分区50个分区中能确定唯一的offset 假如一个消费者组的的其中一个消费者挂了其他消费者怎么能拿到offset接着消费呢 因为是同一个组的挂了之后会通知其他消费者会带着同一个组名来继续消费 我们可以发现大概1秒钟更新一次这个提交是速度是可以改的 补充一点消费者组kafka的命令操作 我们通过其它方式查看在kafka消费者组的信息  查看consumer group列表使用--list参数 查看consumer group列表有新、旧两种命令分别查看新版(信息保存在broker中)consumer列表和老版(信息保存在zookeeper中)consumer列表因而需要区分指定bootstrap--server和zookeeper参数 注意在新的版本中老版本的查询方式已经移除这里只提供新版本的查询方式 bin/kafka-consumer-groups.sh new--consumer --bootstrap-server backup01:9092 --list 使用kafka的bin目录下面的kafka-consumer-groups.sh命令可以查看offset消费情况注意如果你的offset是存在kafka集群上的就指定kafka服务器的地址bootstrap-server ./bin/kafka-consumer-groups.sh --bootstrap-server backup01:9092 --describe --group console-consumer-63897 GROUP TOPIC PARTITION CURRENT-OFFSET LOG-END-OFFSET LAG CONSUMER-ID HOST CLIENT-ID console-consumer-63897 bigdata 0 - 3 - consumer-console-consumer-63897-1-255b7119-e051-4ee1-ad64-d44581be1d20 /192.168.0.120 consumer-console-consumer-63897-1 console-consumer-63897 bigdata 1 - 2 - consumer-console-consumer-63897-1-255b7119-e051-4ee1-ad64-d44581be1d20 /192.168.0.120 consumer-console-consumer-63897-1[rootbackup01 kafka_2.12-2.4.1]# ./bin/kafka-consumer-groups.sh --bootstrap-server backup01:9092 --describe --group console-consumer-69882GROUP TOPIC PARTITION CURRENT-OFFSET LOG-END-OFFSET LAG CONSUMER-ID HOST CLIENT-ID console-consumer-69882 bigdata 0 - 3 - consumer-console-consumer-69882-1-7df49099-2e83-4871-8468-3279b3213edb /192.168.0.120 consumer-console-consumer-69882-1 console-consumer-69882 bigdata 1 - 2 - consumer-console-consumer-69882-1-7df49099-2e83-4871-8468-3279b3213edb /192.168.0.120 consumer-console-consumer-69882-1补充说明 关于这个__consumer_offsets后续再说这里大概了解下 抛出问题 __consumer_offsets这个topic是由kafka自动创建的默认50个但是都存在一台kafka服务器上这是不是就存在很明显的单点故障 经测试如果将存储consumer_offsets的这台机器kill掉所有的消费者都停止消费了。请问这个问题是怎么解决的呢 原因分析 由于__consumer_offsets这个用于存储offset的分区是由kafka服务器默认自动创建的那么它在创建该分区的时候分区数和副本数的依据是什么 分区数是固定的50这个没什么可怀疑的副本数呢应该是一个默认值1依据是如果我们没有在server.properties文件中指定topic分区的副本数的话它的默认值就是1。 __consumer_offsets是一个非常重要的topic我们怎么能允许它只有一个副本呢这样就存在单点故障也就是如果该分区所在的集群宕机了的话 我们的消费者就无法正常消费数据了。我在笔记本上搭建了kafka集群共3个Broker来解决这个问题。下面是一些记录。 说明如果你的__consumer_offsets这个topic已经被创建了而且只存在一台broker上如果你直接使用命令删除这个topic是会报错了提示这是kafka内置的topic禁止删除。可以在zookeeper中删除我是使用ZooInspector这个客户端连上zookeeper删除和__consumer_offsets这个topic有关的目录或节点。
http://www.pierceye.com/news/78451/

相关文章:

  • 铜川市建设集团网站成品短视频网站源码搭建免费
  • 为网站开发软件电子电路自学网站
  • 微网站模板 php简单的网站建立怎么做
  • 做网站赚外快自己给别人做网站挣钱吗
  • 设计网站技术手机收费网页制作
  • 珙县网站建设wordpress好还是hexo好
  • 泰州营销型网站怎样把网站提交到百度
  • 网站快速优化排名免费中国核工业第五建设公司网站
  • 可视化建网站数字广东网络建设有限公司介绍
  • 电商网站开发文字教程俄罗斯免费服务器
  • 有的网站网速慢wordpress app下载模板下载
  • 做网站首页ps中得多大英文 edm营销 的网站 与 工具
  • 做网站建设涉及哪些算法杭州做网站公司
  • 在阿里巴巴做网站多少钱wordpress5.2中文
  • 深圳市网站建设公司设计公司杭州公司注册代理中介
  • 长春网站建设及推广软文推广渠道
  • 网站加背景音乐高端自适应网站建设
  • 手机网站布局铜川微网站建设
  • 网站的推广和宣传工作如何做默认wordpress菜单去除
  • 承德网站江门网站制作方案定制
  • 城乡建设招投标网站网站 毕业设计代做
  • 怎么弄公众号上饶seo博客
  • php网站开发试卷非凡网站建设
  • 招商网站开发文档郑州勘察设计信息网
  • 360网站seo怎么做wordpress文章不分段
  • 网站建设黄页视频北京网站建设华大
  • 有趣的网站有哪些重庆网站设计建设
  • 百度seo服务公司上海网站建设优化公司
  • 自搭建网站学生管理系统 网站开发
  • 免费零食网站模板天猫网站左侧菜单向右滑出的导航菜单