Skip to content

Latest commit

 

History

History
72 lines (54 loc) · 3.05 KB

readme_zh_cn.md

File metadata and controls

72 lines (54 loc) · 3.05 KB

感谢JetBrains提供的免费授权.
Open source: Gitee | Github | CodeChina
文档: Gitbook

   

 

介绍

Klein是一个基于Paxos的分布式集合工具库,包括分布式Cache、分布式消息队列、分布式List、分布式Map、分布式Lock等。。它有趣的地方在于:您可以不依赖任何中间件,保证各个成员之间的数据一致。

你可以理解Klein是一个通过Maven依赖到您项目中的分布式工具。我们希望它可以替换掉您现有的Redis、消息中间件、注册表、配置中心等。

如果您对分布式消息队列、分布式List、分布式Map、分布式Lock兴趣的话,我们可以分享现有相应的设计,您可以参与到编码工作当中来。😆😆😆

Look forward to your star⭐

使用

引入klein

<dependency>
    <groupId>com.ofcoder.klein.core</groupId>
    <artifactId>klein-core</artifactId>
    <version>{last-version}</version>
</dependency>

启动

Klein instance = Klein.startup();
instance.awaitInit();

KleinCache cache = KleinFactory.getInstance().createCache("klein");
cache.put("hello", "klein");

KleinCache lock = KleinFactory.getInstance().createLock("klein");
cache.acquire(1, TimeUnit.SECONDS);

配置

所有可配置的参数,请查看:com.ofcoder.klein.KleinProp

你可以通过System#setProperty设置,也可以获取到KleinProp对象

System.setProperty("klein.id", "2")

// 或者 

KleinProp prop = KleinProp.loadIfPresent();

Jepsen 测试

Run on Gitpod