最近在自学之前学过的大数据,Zookeeper这个组件到底在集群中扮演一个样什么样子的角色?

Mr906 2019-03-13 09:43:17
RT,我一致不明白zookeeper充当的角色是什么?
...全文
366 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
Mr906 2019-03-15
  • 打赏
  • 举报
回复
引用 6 楼 maradona1984 的回复:
[quote=引用 3 楼 Mr906 的回复:]
[quote=引用 2 楼 stacksoverflow 的回复:]
zookeeper的特点是集群高可用,写慢,读快。
原因自己查一查。

你想一下,你机房里那么多服务器你不能保证每台都不宕机,但假设你有一个永远不会宕机的节点(zookeeper),你会用他来做什么?
首先想到的就是注册中心,把多个实例注册到zookeeper上,然后其它机器都从zookeeper上去查找实例的真实IP地址。。。自己想想。
意思是 zookeeper 可以当作缓存数据库?[/quote]
在分布式环境下存一些动态变化的且需要实时通知的数据是比较适合的场景,比如规则引擎的代码,限流降级这些配置等等
仅仅当缓存数据库还不如用redis[/quote]
最近在看一些大数据方向的东西。准备以后想这方面发展。
Mr906 2019-03-15
  • 打赏
  • 举报
回复
引用 5 楼 maradona1984 的回复:
[quote=引用 4 楼 Mr906 的回复:]
[quote=引用 1 楼 maradona1984 的回复:]
只能说他提供了一些功能,部分功能是可以用其他组件替代,比如redis,数据库什么都可以实现

个人觉得状态同步是比较好的总结,在分布式环境下,其中一台服务器改变了环境的状态,在没有强耦合的情况下通知到其他服务器

无论是分布式锁,注册中心,配置中心,都大体是用到了这方面的功能

这个我懂注册中心是指如果有新机器加入集群便可以在zookeeper中创建一个节点如果机器离开集群,那么这个节点消失,来判断集群中机器的允许状态,那么配置中心怎么理解呀。[/quote]
配置中心跟注册中心类似,但着重点不一样
比如你有些数据是保存在内存中(各种配置,各种地址,等等),但又想动态修改(集群环境下不能只修改一台服务器),用数据库自然不太合适,没有通知功能,zk是个比较好的解决方案,当然其他比如产品也能做到这些[/quote]
明白了,感谢。
maradona1984 2019-03-15
  • 打赏
  • 举报
回复
引用 3 楼 Mr906 的回复:
[quote=引用 2 楼 stacksoverflow 的回复:]
zookeeper的特点是集群高可用,写慢,读快。
原因自己查一查。

你想一下,你机房里那么多服务器你不能保证每台都不宕机,但假设你有一个永远不会宕机的节点(zookeeper),你会用他来做什么?
首先想到的就是注册中心,把多个实例注册到zookeeper上,然后其它机器都从zookeeper上去查找实例的真实IP地址。。。自己想想。
意思是 zookeeper 可以当作缓存数据库?[/quote]
在分布式环境下存一些动态变化的且需要实时通知的数据是比较适合的场景,比如规则引擎的代码,限流降级这些配置等等
仅仅当缓存数据库还不如用redis
maradona1984 2019-03-15
  • 打赏
  • 举报
回复
引用 4 楼 Mr906 的回复:
[quote=引用 1 楼 maradona1984 的回复:]
只能说他提供了一些功能,部分功能是可以用其他组件替代,比如redis,数据库什么都可以实现

个人觉得状态同步是比较好的总结,在分布式环境下,其中一台服务器改变了环境的状态,在没有强耦合的情况下通知到其他服务器

无论是分布式锁,注册中心,配置中心,都大体是用到了这方面的功能

这个我懂注册中心是指如果有新机器加入集群便可以在zookeeper中创建一个节点如果机器离开集群,那么这个节点消失,来判断集群中机器的允许状态,那么配置中心怎么理解呀。[/quote]
配置中心跟注册中心类似,但着重点不一样
比如你有些数据是保存在内存中(各种配置,各种地址,等等),但又想动态修改(集群环境下不能只修改一台服务器),用数据库自然不太合适,没有通知功能,zk是个比较好的解决方案,当然其他比如产品也能做到这些
Mr906 2019-03-15
  • 打赏
  • 举报
回复
引用 1 楼 maradona1984 的回复:
只能说他提供了一些功能,部分功能是可以用其他组件替代,比如redis,数据库什么都可以实现

个人觉得状态同步是比较好的总结,在分布式环境下,其中一台服务器改变了环境的状态,在没有强耦合的情况下通知到其他服务器

无论是分布式锁,注册中心,配置中心,都大体是用到了这方面的功能

这个我懂注册中心是指如果有新机器加入集群便可以在zookeeper中创建一个节点如果机器离开集群,那么这个节点消失,来判断集群中机器的允许状态,那么配置中心怎么理解呀。
Mr906 2019-03-15
  • 打赏
  • 举报
回复
引用 2 楼 stacksoverflow 的回复:
zookeeper的特点是集群高可用,写慢,读快。
原因自己查一查。

你想一下,你机房里那么多服务器你不能保证每台都不宕机,但假设你有一个永远不会宕机的节点(zookeeper),你会用他来做什么?
首先想到的就是注册中心,把多个实例注册到zookeeper上,然后其它机器都从zookeeper上去查找实例的真实IP地址。。。自己想想。
意思是 zookeeper 可以当作缓存数据库?
maradona1984 2019-03-13
  • 打赏
  • 举报
回复
只能说他提供了一些功能,部分功能是可以用其他组件替代,比如redis,数据库什么都可以实现

个人觉得状态同步是比较好的总结,在分布式环境下,其中一台服务器改变了环境的状态,在没有强耦合的情况下通知到其他服务器

无论是分布式锁,注册中心,配置中心,都大体是用到了这方面的功能
stacksoverflow 2019-03-13
  • 打赏
  • 举报
回复
zookeeper的特点是集群高可用,写慢,读快。 原因自己查一查。 你想一下,你机房里那么多服务器你不能保证每台都不宕机,但假设你有一个永远不会宕机的节点(zookeeper),你会用他来做什么? 首先想到的就是注册中心,把多个实例注册到zookeeper上,然后其它机器都从zookeeper上去查找实例的真实IP地址。。。自己想想。

50,545

社区成员

发帖
与我相关
我的任务
社区描述
Java相关技术讨论
javaspring bootspring cloud 技术论坛(原bbs)
社区管理员
  • Java相关社区
  • 小虚竹
  • 谙忆
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧