共计 2142 个字符,预计需要花费 6 分钟才能阅读完成。
下载最新发行版的 PHAR 文件,解压即用:
https://github.com/louislivi/SMProxy/releases/latest
在Linux下面需要给 bin/SMProxy 执行权限。
win下不需要,win下需要下载swoole Windows版。
运行命令
SMProxy [ start | stop | restart | status | reload ] [ -c | --config <configuration_path> | --console | -f | --force ]
SMProxy -h | --help
SMProxy -v | --version
Options:
- start 运行服务
- stop 停止服务
- restart 重启服务
- status 查询服务运行状态
- reload 平滑重启
- -h --help 帮助
- -v --version 查看当前服务版本
- -c --config 设置配置项目录
- --console 前台运行(SMProxy>=1.2.5)
- -f --force 强制执行(SMProxy>=1.3.0)
server.json 配置文件,在conf/下
{
"server": {
"user": "root", // 对外提供连接时的用户名
"password": "123456", // 对外提供连接时的密码
"charset": "utf8mb4",
"host": "0.0.0.0",
"port": "3366",
"mode": "SWOOLE_PROCESS",
"sock_type": "SWOOLE_SOCK_TCP",
"logs": {
"open":true,
"config": {
"system": {
"log_path": "ROOT/logs",
"log_file": "system.log",
"format": "Y/m/d"
},
"mysql": {
"log_path": "ROOT/logs",
"log_file": "mysql.log",
"format": "Y/m/d"
}
}
},
"swoole": {
"worker_num": "swoole_cpu_num()",
"max_coro_num": 6000,
"open_tcp_nodelay": true,
"daemonize": true,
"heartbeat_check_interval": 60,
"heartbeat_idle_time": 600,
"reload_async": true,
"log_file": "ROOT/logs/swoole.log",
"pid_file": "ROOT/logs/pid/server.pid"
},
"swoole_client_setting": {
"package_max_length": 16777215
},
"swoole_client_sock_setting": {
"sock_type": "SWOOLE_SOCK_TCP"
}
}
}
database.json 配置文件 在 conf/ 下
{
"database": {
"account": {
"root": { //这个名字对应 serverInfo server1 account
"user": "root", // 连接你实际数据库的名称
"password": "root" // 连接你实际数据库的密码
}
},
"serverInfo": {
"server1": {
"write": {
"host": ["127.0.0.1"],// 可选,读库地址 多个用[]表示
"port": 3306,// 可选,读库端口
"timeout": 2,// 连接超时时间(秒)
"account": "root" // 与 account中的自定义用户名相对应
},
"read": {
"host": ["127.0.0.1"],// 可选,读库地址 多个用[]表示
"port": 3306, // 可选,读库端口
"timeout": 2, // 连接超时时间(秒)
"account": "root", // 与 account中的自定义用户名相对应
"startConns": "swoole_cpu_num()*10", // 重载,对应databases
"maxSpareConns": "swoole_cpu_num()*10", // 重载,对应databases
"maxSpareExp": 3600, // 重载,对应databases
"maxConns": "swoole_cpu_num()*20" // 重载,对应databases
}
}
},
"databases": { // 本节点对全局进行设置
"dbname": { // 数据库别名
"serverInfo": "server1",// 必选,自定义数据库连接信息 与serverInfo中的自定义数据库连接信息相对应
"maxConns": "swoole_cpu_num()*2", // 必选, 全局 最大连接数,支持计算
"maxSpareConns": "swoole_cpu_num()*2",//必选, 全局 最大空闲连接数,支持计算
"startConns": "swoole_cpu_num()*2", // 可选,全局 启动连接数,支持计算
"maxSpareExp": 3600, // 可选, 全局 最大空闲时间(秒),默认为0,支持计算
"charset": "utf8mb4" //可选, 全局 该库编码格式
}
}
}
}
正文完