下面一一个典型的config.json的配置:
{
"master":{"rootport":9999,"webport":9998},
"servers":{
"testserver":{"netport":1000,"rootport":20001,"name":"gate","app":"app.apptest","log":"serverlog.log",
"db":true,"mem":true,"cpu":1}
},
"db":{
"host":"localhost",
"user":"root",
"passwd":"111",
"port":3306,
"db":"test",
"charset":"utf8"
}
"mamcached":{"urls":["127.0.0.1:11211"],"hostname":"locahost"}
}
配置中主要包括四个部分,master,servers,db,memcached。master用来定义master的端口,servers用来定义各个服务器中的配置,以及服务进程的扩展。db定义了数据库的连接配置信息,memcached配置memcached服务的连接配置信息。
master配置
rootport master服务的管理端口;
webport master服务的对外http端口,通过web接口实现对各个服务进程的管理。
servers配置
server下面配置的没一个key的名称就是定义的新的服务进程的名称。通过添加新的项来扩充服务进程。每个服务进程的配置规则如下:
netport[可选]提供客户端进行tcp连接的端口,用户与客户端的通信。
rootport[可选]提供其他服务进程连接的端口,这样实现进程间的RPC调用
remoteport[可选]指定要连接到哪些服务进程的信息的列表,其中包括rootname要连接到的服务进程的名称,rootport要连接到的服务进程的端口。
name[可选]服务进程的名称
app[可选]指定该进程的入口模块名称
log[可选]指定该进程的日志文件存放信息
db[可选]是否需要数据库服务
mem[可选]是否需要memcached缓存服务
cpu[可选]进程绑定到指定cpu核心运行,减少cpu切换的性能消耗
db配置[可选]
host 数据库服务地址
user 数据库用户名
passwd 数据库密码
port 数据库连接端口
db 数据库库名称
charset 数据库连接客户端编码
memcached配置[可选]
urls memcache连接配置
hostname memcached缓存分配命名。