dev.json 8.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298
  1. {
  2. "@desc": "dev环境为开发服务器,使用的环境配置,请勿随意改动!",
  3. "include": [],
  4. "env": "dev",
  5. "debug": true,
  6. "print_level": "debug",
  7. "cluster": {
  8. "discovery": {
  9. "mode": "nats",
  10. "@mode1": "mode=default,从profile-{x}.json读取node节点的配置数据",
  11. "@mode2": "mode=nats,通过nats->master_node_id获取已注册的节点",
  12. "@mode3": "mode=etcd,通过etcd同步已注册节点"
  13. },
  14. "nats": {
  15. "master_node_id": "master-1",
  16. "prefix": "test",
  17. "address": "nats://nats:4222,nats://nats-1:4223,nats://nats-2:4224",
  18. "reconnect_delay": 1,
  19. "max_reconnects": 0,
  20. "request_timeout": 2,
  21. "user": "",
  22. "password": "",
  23. "pool_size": 16,
  24. "is_stats": false
  25. }
  26. },
  27. "data_config": {
  28. "parser": "json",
  29. "data_source": "file",
  30. "@data_source": "file:配置从文件读取, redis:配置从redis读取",
  31. "file": {
  32. "file_path": "../data/",
  33. "ext_name": ".json",
  34. "reload_time": 3000
  35. },
  36. "redis": {
  37. "address": "redis:6379",
  38. "password": "H+5QfwG0jE3C@Plvgikb",
  39. "db": 0,
  40. "prefix_key": "data_config",
  41. "subscribe_key": "data_config_change"
  42. }
  43. },
  44. "node": {
  45. "gate": [
  46. {
  47. "enable": true,
  48. "node_id": "gate-1",
  49. "address": ":30001",
  50. "__settings__": {
  51. "heartbeat": 120,
  52. "ref_logger": "debug_file_log",
  53. "redis_id_list": {
  54. "guid_redis_id": "redis-global",
  55. "center_redis_id": "redis-global"
  56. }
  57. }
  58. }
  59. ],
  60. "game": [
  61. {
  62. "enable": true,
  63. "node_id": "^\\d+$",
  64. "__settings__": {
  65. "ref_logger": "debug_file_log",
  66. "redis_id_list": {
  67. "guid_redis_id": "redis-global",
  68. "center_redis_id": "redis-global",
  69. "game_redis_id": "redis-game",
  70. "chat_redis_id": "redis-global"
  71. },
  72. "mongo_id_list": {
  73. "mongo_id": "mongo-f1-game"
  74. },
  75. "battle_validation": false
  76. }
  77. }
  78. ],
  79. "web": [
  80. {
  81. "enable": true,
  82. "node_id": "web-1",
  83. "address": ":80",
  84. "__settings__": {
  85. "ref_logger": "debug_file_log",
  86. "redis_id_list": {
  87. "guid_redis_id": "redis-global",
  88. "center_redis_id": "redis-global"
  89. }
  90. }
  91. }
  92. ],
  93. "master": [
  94. {
  95. "enable": true,
  96. "node_id": "master-1",
  97. "__settings__": {
  98. "ref_logger": "debug_file_log"
  99. }
  100. }
  101. ],
  102. "center": [
  103. {
  104. "enable": true,
  105. "node_id": "center-1",
  106. "__settings__": {
  107. "ref_logger": "debug_file_log",
  108. "mongo_id_list": {
  109. "mongo_id": "mongo-f1-center"
  110. },
  111. "redis_id_list": {
  112. "guid_redis_id": "redis-global",
  113. "center_redis_id": "redis-global"
  114. }
  115. }
  116. }
  117. ],
  118. "pay": [
  119. {
  120. "enable": true,
  121. "node_id": "pay-1",
  122. "__settings__": {
  123. "ref_logger": "debug_file_log",
  124. "redis_id_list": {
  125. "guid_redis_id": "redis-global",
  126. "center_redis_id": "redis-global"
  127. },
  128. "mongo_id_list": {
  129. "mongo_id": "mongo-f1-pay"
  130. },
  131. "auto_pay": true
  132. }
  133. }
  134. ],
  135. "ops": [
  136. {
  137. "enable": true,
  138. "node_id": "^ops-\\d+$",
  139. "address": ":18081",
  140. "__settings__": {
  141. "ref_logger": "debug_file_log"
  142. }
  143. }
  144. ],
  145. "chat": [
  146. {
  147. "enable": true,
  148. "node_id": "^chat-\\d+$",
  149. "__settings__": {
  150. "ref_logger": "debug_file_log",
  151. "redis_id_list": {
  152. "guid_redis_id": "redis-global",
  153. "chat_redis_id": "redis-global",
  154. "game_redis_id": "redis-global"
  155. }
  156. }
  157. }
  158. ],
  159. "map": [
  160. {
  161. "enable": true,
  162. "node_id": "^map-\\d+$",
  163. "__settings__": {
  164. "ref_logger": "debug_file_log",
  165. "redis_id_list": {
  166. "guid_redis_id": "redis-global",
  167. "game_redis_id": "redis-global"
  168. },
  169. "mongo_id_list": {
  170. "mongo_id": "mongo-f1-map"
  171. }
  172. }
  173. }
  174. ],
  175. "record": [
  176. {
  177. "enable": true,
  178. "node_id": "^record-\\d+$",
  179. "__settings__": {
  180. "ref_logger": "debug_file_log"
  181. }
  182. }
  183. ]
  184. },
  185. "db_queue": {
  186. "save_ticker": 3,
  187. "save_count": 1000,
  188. "stop_save_count": 10000,
  189. "print_save_log": false,
  190. "tables": []
  191. },
  192. "redis": [
  193. {
  194. "redis_id": "redis-global",
  195. "address": "redis:6379",
  196. "password": "H+5QfwG0jE3C@Plvgikb",
  197. "db": 0,
  198. "pool_size": 64,
  199. "desc": "全局"
  200. },
  201. {
  202. "redis_id": "redis-game",
  203. "address": "redis:6379",
  204. "password": "H+5QfwG0jE3C@Plvgikb",
  205. "db": 0,
  206. "pool_size": 64,
  207. "desc": "游戏"
  208. }
  209. ],
  210. "mongo": {
  211. "db_game_group": [
  212. {
  213. "enable": true,
  214. "db_id": "mongo-f1-game",
  215. "db_name": "f1-game",
  216. "uri": "mongodb://f1user:3#GPU?MJcKbY2&fYbgplnckfU@mongodb:27017",
  217. "timeout": 3000
  218. }
  219. ],
  220. "db_center_group": [
  221. {
  222. "enable": true,
  223. "db_id": "mongo-f1-center",
  224. "db_name": "f1-center",
  225. "uri": "mongodb://f1user:3#GPU?MJcKbY2&fYbgplnckfU@mongodb:27017",
  226. "timeout": 3000
  227. }
  228. ],
  229. "db_pay_group": [
  230. {
  231. "enable": true,
  232. "db_id": "mongo-f1-pay",
  233. "db_name": "f1-pay",
  234. "uri": "mongodb://f1user:3#GPU?MJcKbY2&fYbgplnckfU@mongodb:27017",
  235. "timeout": 3000
  236. }
  237. ],
  238. "db_map_group": [
  239. {
  240. "enable": true,
  241. "db_id": "mongo-f1-map",
  242. "db_name": "f1-map",
  243. "uri": "mongodb://f1user:3#GPU?MJcKbY2&fYbgplnckfU@mongodb:27017",
  244. "timeout": 3000
  245. }
  246. ]
  247. },
  248. "rate_limiter": [
  249. {
  250. "enable": true,
  251. "rate_id": "ip_rate",
  252. "interval": 1,
  253. "capacity": 60,
  254. "quantum": 60,
  255. "clean_ticker_interval": 10,
  256. "clean_before_minute": 5,
  257. "error_code": 205
  258. }
  259. ],
  260. "sessions": {
  261. "redis_id": "redis-global"
  262. },
  263. "gen-pool": {
  264. "redis_id": "redis-global"
  265. },
  266. "battle_record": {
  267. "enable": true,
  268. "mode": "file",
  269. "@mode": "file:文件存储, cloud:云存储",
  270. "file": {
  271. "suffixKey": ".bin",
  272. "succeedPathKey": "../battle_record/succeed",
  273. "failedPathKey": "../battle_record/failed"
  274. },
  275. "cloud": {
  276. "url": "",
  277. "secretKey": ""
  278. }
  279. },
  280. "logger": {
  281. "debug_file_log": {
  282. "level": "debug",
  283. "stack_level": "error",
  284. "enable_write_file": true,
  285. "enable_console": false,
  286. "max_age": 7,
  287. "time_format": "15:04:05.000",
  288. "print_caller": true,
  289. "rotation_time": 86400,
  290. "@rotation_time": [
  291. "3600(秒):每小时分割日志",
  292. "86400(秒):每天分割日志"
  293. ],
  294. "file_link_path": "logs/%nodeid.log",
  295. "file_path_format": "logs/%nodeid_%Y%m%d%H%M.log"
  296. }
  297. }
  298. }