共计 1323 个字符,预计需要花费 4 分钟才能阅读完成。
起源:《高性能分布式数据库 tldb v0.0.2 公布》
前言:Tldb 是一个高性能的分布式数据库和 MQ 服务器,tldb 数据库的测重点在于性能和分布式解决方案,通过 tldb 能够疾速搭建分布式系统,官网有具体介绍
tldb 第二个版本 v0.0.2 公布
该版本次要公布的内容:
- 性能优化。这个版本次要针对客户端数据服务接口与序列化进行性能优化。tldb 的客户端与服务器交互的接口应用了 thrift,该版本将官网 thrift 库换成 gothrift,gothrift 针对序列化和网络传输上做了优化,在反序列化上,有至多 3 倍性能的晋升,在网络传输上也有大幅度的进步,这与接口参数相干. gothrift 的相干介绍在《gothrift 一 go 版 thrift 性能优化我的项目》
- tldb 提供分布式锁的办法。分布式锁是分布式系统中重要的工具。tldb 提供了作用于整个 tldb 集群的分布式锁,所以多个客户端向 tldb 集群中的不同节点能够获取到雷同资源的分布式锁。分布式锁的相干办法是 lock,trylock,unlock. tldb 的锁资源 (或者说锁对象) 为字符串. 也就是说,tldb 对客户端提供的一串字符串进行分布式加锁。在同一时刻,tldb 集群中对雷同的字符串的分布式锁只有一个。tldb 的分布式锁的用法在《全新的分布式锁,性能简略且弱小》中有具体的阐明
- tldb 对治理后盾的界面进行了优化。
- mq 的客户端局部减少了 subJson(topic)办法,通过该办法,服务器会把所有公布该 topic 数据,包含非 json 格局的数据,都转换为 json 格局,推送到该链接。tldb MQ 的应用是十分简洁和灵便的,每个客户端链接都能够设置针对本链接的须要的性能,如,接管的数据格式,是否回执,数据是否聚合发送,是否压缩等。
- MQ 的客户端应用在《TLDB MQ 客户端应用》《tldb 数据库的 java 客户端如何应用》《如何应用 tldb MQ》有比拟具体的阐明
- 分布式锁的客户端办法在 MQ 客户端中实现。目前曾经实现的 mq 客户端 java,golang 曾经同步更新
java MQ 客户端 tlmq-j 的 maven 配置为:
<dependency>
<groupId>io.github.donnie4w</groupId>
<artifactId>tlmq-j</artifactId>
<version>0.0.2</version>
</dependency>
MQ 客户端:
golang:https://github.com/donnie4w/tlmq-go
java:https://github.com/donnie4w/tlmq-j
python:https://github.com/donnie4w/tlmq-py
js:https://github.com/donnie4w/tlmq-js
以下是局部分布式锁的性能测试数据
多线程并发调用 lock 获取同一个对象锁后,程序的运行数据:
多线程并发应用自旋的形式调用 trylock 与 lock 获取同一个对象锁:
以下是 tldb0.0.2 局部优化的后盾界面:
有任何问题或倡议请 Email:donnie4w@gmail.com 或 https://tlnet.top/contact 发信给我,谢谢!
正文完