在技术的海洋里遨游
请注意,此篇文章并不是介绍Zookeeper集群内部Leader的选举机制,而是应用程序使用Zookeeper作为选举。 使用Zookeeper进行选举,主要用到了Znode的两个性质: 临时节点(EPHEMERAL) 序列化节点(SEQUENCE) 每一个临时的序列化节点代表着一个客户端(client),也就是选民。
Zookeeper应用之——队列(Queue) 为了在Zookeeper中实现分布式队列,首先需要设计一个znode来存放数据,这个节点叫做队列节点,我们的例子中这个节点是/zookeeper/queue。
ZooKeeper简介 ZooKeeper:分布式应用的协调服务 ZooKeeper是一个分布式的开源协调服务,用于分布式应用程序。它公开了一组简单的原子操作,分布式应用程序可以构建这些原子操作,以实现更高级别的服务,以实现同步,配置维护以及组和命名。
今天闲来无事,学习Zookeeper,下载了Zookeeper的最新版本3.5。启动以后显示: ZooKeeper JMX enabled by default Using config: /opt/zookeeper-3.5.4-beta/bin/../conf/zoo.cfg Starting zookeeper ... STARTED 以为启动成功,然后连接时报错,查看后台进程,没有Zookeeper进程。
Kafka是分布式流平台。 一个流平台有3个主要特征: 发布和订阅消息流,这一点与传统的消息队列相似。 以容灾持久化方式的消息流存储。 在消息流发生时处理消息流。
String是值传递还是引用传递 今天上班时,同事发现了一个比较有意思的问题。他把一个String类型的参数传入方法,并在方法内改变了引用的值。 然后他在方法外使用这个值,发现这个String还是之前的值,并没有改变。
Mybatis Generator 使用com.mysql.cj.jdbc.Driver遇到的问题 今天闲来无事,准备搭一套SSM的环境,当然所有的jar包都用最新的。
kafka集群搭建 一、zookeeper集群搭建 略,请参考其他文档,这里不再赘述。 二、下载kafka 从kafka官网下载kafka_2.11-0.11.0.0.tgz,并解压。
Future 一、简介 通常情况下,我们在写多线程任务时,都是实现run方法,大家注意到run方法是没有返回值的。如果我们要用到其他线程的返回值该怎么办呢? 这里就要用到Future了。
闭锁——CountDownLatch 一、概念 闭锁是一个同步工具类,主要用于等待其他线程活动结束后,再执行后续的操作。例如:在王者荣耀游戏中,需要10名玩家都准备就绪后,游戏才能开始。
使用solr6.0搭建solrCloud 一、搭建zookeeper集群 下载zookeeper压缩包到自己的目录并解压(本例中的目录在/opt下),zookeeper的根目录我们在这里用${ZK_HOME}表示。
分布式定时任务——elastic-job 一、前言 在我们的项目当中,使用定时任务是避免不了的,我们在部署定时任务时,通常只部署一台机器。部署多台机器时,同一个任务会执行多次。
JAVA9模块化详解(二)——模块的使用 二、模块的使用 各自的模块可以在模块工件中定义,要么就是在编译期或者运行期嵌入的环境中。为了提供可靠的配置和强健的封装性,在分块的模块系统中利用他们,必须确定它们的位置,然后决定他们如何关联彼此。
JAVA9模块化详解(一)——模块化的定义 前言 java9已经出来有一段时间了,今天向大家介绍一下java9的一个重要特性——模块化。模块化系统的主要目的如下: 更可靠的配置,通过制定明确的类的依赖关系代替以前那种易错的类路径(class-path)加载机制。
MongoDB之分片集群(Sharding) 一、基本概念 分片(sharding)是一个通过多台机器分配数据的方法。MongoDB使用分片支持大数据集和高吞吐量的操作。
MongoDB之副本集 一、简介 MongoDB 是一个基于分布式文件存储的数据库。由 C++ 语言编写。旨在为 WEB 应用提供可扩展的高性能数据存储解决方案。
Spring Data(二)查询 接着上一篇,我们继续讲解Spring Data查询的策略。 查询的生成 查询的构建机制对于Spring Data的基础是非常有用的。
Spring Data(一)概念和仓库的定义 Spring Data的主要任务是为数据访问提供一个相似的、一致的、基于Spring的编程模型,同时又保留着下面各个数据存储的特征。
Spring Mobile——探测客户端设备和系统 今天闲来无事,浏览Spring的官方网站,发现了Spring Mobile项目,之前也看到过,还以为是针对手机端的项目,并没有细看。
Spring Cloud配置中心(Config) Spring Cloud是现在流行的分布式服务框架,它提供了很多有用的组件。比如:配置中心、Eureka服务发现、 消息总线、熔断机制等。
nginx的基础应用(续) 一、简介 上一篇文章我们介绍了nginx的基础应用,其中讲到了nginx作为代理服务器的使用,但是漏了一个重要的,也是使用非常普遍的特性——负载均衡。
nginx的基础应用 一、简介 今天我们将介绍一些nginx的简单应用,启动、停止nginx,重载nginx的配置,nginx配置文件的格式,如何配置nginx服务静态资源,如何配置nginx作为反向代理服务器。
Redis分布式锁的try-with-resources实现 一、简介 在当今这个时代,单体应用(standalone)已经很少了,java提供的synchronized已经不能满足需求,大家自然 而然的想到了分布式锁。
CAS与OAuth2的区别 CAS的单点登录时保障客户端的用户资源的安全 。 OAuth2则是保障服务端的用户资源的安全 。 CAS客户端要获取的最终信息是,这个用户到底有没有权限访问我(CAS客户端)的资源。
自制权限框架(二)注解 一、前言 上一篇中,咱们介绍了如何使用jsp自定义标签编写权限框架。在jsp中,权限标签内的内容,只有在用户拥有权限的时候,才能够正常的展示。
自制权限框架(一)jsp标签 一、概述 在我们的系统中,很多时候都用到了权限。最简单的权限就是登录。登录了,我就可以自己的相关信息;没有登录,就不能看到。
Spring Security实现RBAC权限管理 一简介 在企业应用中,认证和授权是非常重要的一部分内容,业界最出名的两个框架就是大名鼎鼎的 Shiro和Spring Security。
JMeter分布式测试 这篇文件将介绍如何使用多系统执行压力测试。在开始之前,我们有几件事情要确定一下。 系统的防火墙关闭,或者开放正确的端口; 所有的客户端在相同的子网内; 如果使用192或10网段开头的ip地址,则服务在同一个子网内;如果不使用192或10开头的ip地址,也应该在同一网段内。
JMeter基本元素简介 一、测试计划 测试计划对象有一个复选框叫做“Functional Testing”(函数测试模式),如果选中,它将使jmeter记录服务端返回的每一个样例的数据,如果你在测试监听器中选择了一个文件,数据将会写到这个文件。
Zuul 网关路由 路由是微服务架构中不可或缺的一部分,例如:/api/user映射到user服务,/api/shop映射到shop服务。 Zuul是一个基于JVM的路由和服务端的负载均衡器。
Feign 与 Hystrix Feign是一个声明式的web服务客户端,它使得web服务调用非常的简单,当我们使用Feign时,Spring Cloud 整合了Ribbon和Eureka,从而为我们提供了一个负载均衡的Http客户端。
Eureka服务注册与发现 一、服务注册 注册Eureka的服务非常的简单,只需要引入spring-cloud-starter-netflix-eureka-client的jar包即可。
Eureka服务注册中心 一、Eureka Server Eureka Server是服务的注册中心,这是分布式服务的基础,我们看看这一部分如何搭建。 首先,Spring Cloud是基于Spring Boot的,所以我们的项目都是Spring Boot项目。
Redis Cluster(集群)的搭建 一、Redis的下载、安装、启动(单实例) 我们统一将Redis安装在/opt目录下,执行命令如下: $ cd /opt $ wget http://download.