• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    迪恩网络公众号

dqlite: Dqlite 是一个快速、嵌入式、持久化的 SQL 数据库,具有Raft共识,非常适合容 ...

原作者: [db:作者] 来自: 网络 收藏 邀请

开源软件名称:

dqlite

开源软件地址:

https://gitee.com/mirrors/dqlite

开源软件介绍:

dqlite Build Status codecov

dqlite is a C library that implements an embeddable and replicated SQL databaseengine with high-availability and automatic failover.

The acronym "dqlite" stands for "distributed SQLite", meaning that dqlite extendsSQLite with a network protocol that can connect togethervarious instances of your application and have them act as a highly-availablecluster, with no dependency on external databases.

Design highlights

  • Asynchronous single-threaded implementation using libuvas event loop.
  • Custom wire protocol optimized for SQLite primitives and data types.
  • Data replication based on the Raft algorithm and itsefficient C-raft implementation.

License

The dqlite library is released under a slightly modified version of LGPLv3, thatincludes a copyright exception allowing users to statically link the library codein their project and release the final work under their own terms. See the fulllicense text.

Try it

The simplest way to see dqlite in action is to use the demo program that comeswith the Go dqlite bindings. Please see the relevantdocumentation in that project.

Media

A talk about dqlite was given at FOSDEM 2020, you can watch ithere.

Wire protocol

If you wish to write a client, please refer to the wire protocoldocumentation.

Install

If you are on a Debian-based system, you can get the latest development release fromdqlite's dev PPA:

sudo add-apt-repository ppa:dqlite/devsudo apt-get updatesudo apt-get install libdqlite-dev

Build

To build libdqlite from source you'll need:

  • A reasonably recent version of libuv (v1.8.0 or beyond).
  • A reasonably recent version of sqlite3-dev
  • A build of the C-raft Raft library.

Your distribution should already provide you with a pre-built libuv sharedlibrary and libsqlite3-dev.

To build the raft library:

git clone https://github.com/canonical/raft.gitcd raftautoreconf -i./configuremakesudo make installcd ..

Once all the required libraries are installed, in order to build the dqliteshared library itself, you can run:

autoreconf -i./configuremakesudo make install

Usage Notes

Detailed tracing will be enabled when the environment variable LIBDQLITE_TRACE is set before startup.


鲜花

握手

雷人

路过

鸡蛋
该文章已有0人参与评论

请发表评论

全部评论

专题导读
热门推荐
热门话题
阅读排行榜

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap