GolangNote

Golang笔记

golang 实现的一个SSDB 分布式代理

Permalink

可在多台机器上部署SSDB 服务,当作不同节点。

只需配置节点文件:

JSON: 配置节点
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
{
  "debug":true,
  "host":"127.0.0.1", //Proxy listen host
  "port":4001,// Proxy listen port
  "password":"", //Proxy password
  "nodelist":[ //Sharding nodes
    {
      "id":"current", 
      "host":"127.0.0.1",
      "port":4002,
      "password":"ssdbpassword",
      "weight":100
    },
    {
      "id":"asia",
      "host":"127.0.0.1",
      "port":4003,
      "password":"ssdbpassword",
      "weight":100
    }
    ]
}

实现机制:通过设置节点权重来写数据,优先在第一个节点写入;通过遍历节点来取数据,处理速度降低了,但能作分布式扩展。

项目地址 https://github.com/matishsiao/ssdbproxy

本文网址: https://golangnote.com/topic/71.html 转摘请注明来源

Related articles

Golang phantomjs 动态代理实现

phantomjs 是个很优秀的软件,虽然现在被chrome headless 抢了风头,但在某些特定场合,使用phantomjs 还是很方便,这里是介绍使用Go 实现动态代理。...

Golang实现简单的Socks5代理

Socks5 代理较 `http/https` 代理有较好的性能,下面是借鉴某个著名开源软件的 local 实现的简单代理。...

golang 实现的基于web的文件管理-filebrowser

FileBrowser 在指定目录中提供了一个文件管理界面,可用于上传,删除,预览,重命名和编辑文件。它允许创建多个用户,每个用户都可以有自己的目录。它可以用作独立的应用程序。...

Golang 实现 10 进制转 N 进制

给定一个不没有重复字符的字符串,如 `[0-9,a-z]`,把一个 10 进制数字转为,该字符集的字符串。应用场合如汽车牌、顺序计数。...

Write a Comment to "golang 实现的一个SSDB 分布式代理"

Submit Comment Login
Based on Golang + fastHTTP + sdb | go1.20 Processed in 0ms