RedisProxy 正在参加 2020 年度 OSC 中国开源项目评选,请投票支持!
RedisProxy 在 2020 年度 OSC 中国开源项目评选 中已获得 {{ projectVoteCount }} 票,请投票支持!
投票让它出道
已投票
RedisProxy 获得 2020 年度 OSC 中国开源项目评选「最佳人气项目」 !
RedisProxy 获得 2020 年度 OSC 中国开源项目评选「最佳人气项目」「最积极运营项目」 !
RedisProxy 获得 2020 年度 OSC 中国开源项目评选「最积极运营项目」 !

软件简介

介绍

dbproxy是一个采用C++11编写的代理服务器,支持redisssdb数据库。 其主要用于扩容和提高系统负载。使用lua控制sharding,把不同的key-value映射到不同的后端redis或ssdb服务器。

构建

dbproxy支持windwos和linux。

  • windows:打开根目录的DBProxy.sln编译即可。

  • linux:

    • 在根目录下执行 make 即可构建 dbproxy 可执行文件

配置文件

dbproxy的配置文件是Config.lua其ProxyConfigbackendskey配置后端服务器列表,其中的sharding_function指示sharding函数。 作为示例,test_sharding就是被指定的sharding函数,其根据key参数,返回对应的服务器号,这里返回0,意思是将key映射到127.0.0.1 : 6379这个服务器。

补充

目前dbproxy只作为代理映射,不包含读写分离以及额外缓存,也不解决分布式等问题。 当然其服务器C++代码主体并不涉及任何sharding方案,必须由用户自己在Config.lua里自己实现sharding函数 (当然,也可以从网上找现成的,譬如lua版的一致性hash lua-consistent-hash)

感谢

一定程度上借鉴了redis-shattercodis

展开阅读全文

代码

的 Gitee 指数为
超过 的项目

评论 (0)

加载中
更多评论
暂无内容
发表于AI & 大数据专区
2018/11/02 09:40

不到100行的redis代理

import io.vertx.core.AbstractVerticle; import io.vertx.core.DeploymentOptions; import io.vertx.core.Vertx; import io.vertx.core.json.JsonObject; import io.vertx.core.net.*; import org.slf4j.Logger;......

0
0
发表了博客
2018/12/24 10:55

HookPHP一款基于C扩展搭建支持AI在线编程的PHP框架-安全秒杀ThinkPHP-性能秒Laravel-功能秒YAF-易用秒Symfony-入门秒Zend-组件秒Yii-耦合秒Phalcon

前言 众所周知,PHP7已经开始支持PHP强类型编程很久了,但是还是有那么多的程序员无论是理念还是实践依然停留在PHP弱类型的时代; 再回首,开启1个新项目,总有些工作如轮回似的重复再重复,比如 用户管理、权限管理、配置管理、菜单管理、语言管理、DB建模、模板管理等; 观今朝,高级架构师、IT大佬、CXO满天飞,但是真...

0
0
没有更多内容
加载失败,请刷新页面
点击加载更多
加载中
下一页
暂无内容
0 评论
9 收藏
分享
OSCHINA
登录后可查看更多优质内容
返回顶部
顶部