https://github.com/jdk-plus/spring-boot-starter-zookeeper
https://github.com/jdk-plus/spring-boot-starter-zookeeper
Last synced: 5 months ago
JSON representation
- Host: GitHub
- URL: https://github.com/jdk-plus/spring-boot-starter-zookeeper
- Owner: JDK-Plus
- License: mit
- Created: 2022-12-26T14:59:17.000Z (over 3 years ago)
- Default Branch: master
- Last Pushed: 2022-12-30T17:13:50.000Z (over 3 years ago)
- Last Synced: 2024-12-31T02:43:51.432Z (over 1 year ago)
- Language: Java
- Size: 23.4 KB
- Stars: 2
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README-CN.md
- License: LICENSE
Awesome Lists containing this project
README
一个集成Zookeeper依赖的Springboot扩展
## 引入依赖
```xml
plus.jdk.zookeeper
spring-boot-starter-zookeeper
1.0.1
```
## 需要添加的配置项
```
# 是否开启该组件
plus.jdk.zookeeper.enabled=true
# 指定zookeeper集群列表
plus.jdk.zookeeper.hosts=127.0.0.1:2181,127.0.0.2:2181
# 连接超时时间
plus.jdk.zookeeper.conn-timeout=3000
# 每个节点数据多久更新一次
plus.jdk.zookeeper.heart-rate=30
# 会话超时时间
plus.jdk.zookeeper.session-timeout=3000
# 处理节点数据变化事件(节点删除、节点新增、节点修改)的核心线程数,默认10个
plus.jdk.zookeeper.watcher-thread-core-poll-size=10
# 指定一个用于数据序列化的实现类
plus.jdk.zookeeper.data-adapter=plus.jdk.zookeeper.client.DefaultZKDataAdapter
```
## 引入后如何使用
当上文配置完成后,您只需要在对应的bean实例中使用 `@ZookeeperNode` 注解来指定要获取哪个节点的数据即可,示例如下:
```java
import org.springframework.stereotype.Component;
import plus.jdk.grpc.client.INameResolverConfigurer;
import plus.jdk.grpc.model.GrpcNameResolverModel;
import plus.jdk.zookeeper.annotation.ZookeeperNode;
import java.net.URI;
import java.util.ArrayList;
import java.util.List;
@Component
public class GrpcGlobalNameResolverConfigurer implements INameResolverConfigurer {
private final RSACipherService rsaCipherService;
@ZookeeperNode(value = "/brand/grpc/name/provider", adapter = DefaultZKDataAdapter.class)
private List grpcNameResolverModels;
}
```