关于分布式:高性能分布式数据库tldb-v002-发布

5次阅读

共计 1323 个字符,预计需要花费 4 分钟才能阅读完成。

起源:《高性能分布式数据库 tldb v0.0.2 公布》
前言:Tldb 是一个高性能的分布式数据库和 MQ 服务器,tldb 数据库的测重点在于性能和分布式解决方案,通过 tldb 能够疾速搭建分布式系统,官网有具体介绍

tldb 第二个版本 v0.0.2 公布

该版本次要公布的内容:

  1. 性能优化。这个版本次要针对客户端数据服务接口与序列化进行性能优化。tldb 的客户端与服务器交互的接口应用了 thrift,该版本将官网 thrift 库换成 gothrift,gothrift 针对序列化和网络传输上做了优化,在反序列化上,有至多 3 倍性能的晋升,在网络传输上也有大幅度的进步,这与接口参数相干. gothrift 的相干介绍在《gothrift 一 go 版 thrift 性能优化我的项目》
  2. tldb 提供分布式锁的办法。分布式锁是分布式系统中重要的工具。tldb 提供了作用于整个 tldb 集群的分布式锁,所以多个客户端向 tldb 集群中的不同节点能够获取到雷同资源的分布式锁。分布式锁的相干办法是 lock,trylock,unlock. tldb 的锁资源 (或者说锁对象) 为字符串. 也就是说,tldb 对客户端提供的一串字符串进行分布式加锁。在同一时刻,tldb 集群中对雷同的字符串的分布式锁只有一个。tldb 的分布式锁的用法在《全新的分布式锁,性能简略且弱小》中有具体的阐明
  3. tldb 对治理后盾的界面进行了优化。
  4. mq 的客户端局部减少了 subJson(topic)办法,通过该办法,服务器会把所有公布该 topic 数据,包含非 json 格局的数据,都转换为 json 格局,推送到该链接。tldb MQ 的应用是十分简洁和灵便的,每个客户端链接都能够设置针对本链接的须要的性能,如,接管的数据格式,是否回执,数据是否聚合发送,是否压缩等。
  5. MQ 的客户端应用在《TLDB MQ 客户端应用》《tldb 数据库的 java 客户端如何应用》《如何应用 tldb MQ》有比拟具体的阐明
  6. 分布式锁的客户端办法在 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 发信给我,谢谢!

正文完
 0