版本更行

This commit is contained in:
hahwu 2025-02-17 10:49:31 +08:00
parent 23721ea594
commit 96347ed68a
5 changed files with 84 additions and 79 deletions

View File

@ -0,0 +1,57 @@
services:
# zoo1:
# image: zookeeper
# hostname: zoo1
# container_name: zoo1
# ports:
# - "2181:2181"
# volumes:
# - zoo1_data:/data
# environment:
# ZOOKEEPER_CLIENT_PORT: 2181
# ZOOKEEPER_SERVER_ID: 1
# ZOOKEEPER_SERVERS: zoo1:2888:3888
kafka1:
image: bitnami/kafka:latest
hostname: kafka-server
container_name: kafka-server
restart: always
ports:
- "9092:9092"
- "9093:9093"
volumes:
- kafka1_data:/bitnami/kafka
environment:
KAFKA_CFG_NODE_ID: 0
KAFKA_CFG_PROCESS_ROLES: controller,broker
KAFKA_CFG_LISTENERS: PLAINTEXT://:9092,CONTROLLER://:9093
KAFKA_CFG_LISTENER_SECURITY_PROTOCOL_MAP: CONTROLLER:PLAINTEXT,PLAINTEXT:PLAINTEXT
KAFKA_CFG_CONTROLLER_QUORUM_VOTERS: 0@kafka-server:9093
KAFKA_CFG_CONTROLLER_LISTENER_NAMES: CONTROLLER
# KAFKA_CFG_ZOOKEEPER_CONNECT: zoo1:2181
# depends_on:
# - zoo1
kafka-ui:
container_name: kafka-ui
restart: always
image: provectuslabs/kafka-ui:latest
ports:
- 500:8080
depends_on:
- kafka1
environment:
DYNAMIC_CONFIG_ENABLED: "TRUE"
networks:
default:
name: kafka-network
external: true
volumes:
zoo1_data:
driver: local
kafka1_data:
driver: local

View File

@ -7,7 +7,9 @@ import (
"kafka-comsumer/statistics"
"log"
"os"
"os/signal"
"sync"
"syscall"
"time"
"github.com/segmentio/kafka-go"
@ -23,27 +25,27 @@ var d = make(chan int, 1)
// GOOS=linux GOARCH=amd64 go build -o /data/devops/kafka/release/kafka_comsumer main.go
func main() {
// 打开日志文件
// logFile, err := os.OpenFile("./log/kafka-comsumer.log", os.O_CREATE|os.O_WRONLY|os.O_APPEND, 0666)
// if err != nil {
// log.Fatalf("Failed to open log file: %v", err)
// }
// defer logFile.Close()
//打开日志文件
logFile, err := os.OpenFile("./log/kafka-comsumer.log", os.O_CREATE|os.O_WRONLY|os.O_APPEND, 0666)
if err != nil {
log.Fatalf("Failed to open log file: %v", err)
}
defer logFile.Close()
// // 将日志输出重定向到文件
// log.SetOutput(logFile)
// log.SetFlags(log.LstdFlags | log.Lshortfile)
// Games := config.GetGames()
// for _, game := range Games {
// go comsumer(game)
// }
// go scheduleDailyTask()
// signal.Notify(c, os.Interrupt, syscall.SIGTERM, syscall.SIGINT, syscall.SIGKILL)
// sig := <-c
// d <- 1
// log.Printf("kafka comsumer closing down (signal: %v)\n", sig.String())
// Wait.Wait()
statistics.Statistics()
// 将日志输出重定向到文件
log.SetOutput(logFile)
log.SetFlags(log.LstdFlags | log.Lshortfile)
Games := config.GetGames()
for _, game := range Games {
go comsumer(game)
}
go scheduleDailyTask()
signal.Notify(c, os.Interrupt, syscall.SIGTERM, syscall.SIGINT, syscall.SIGKILL)
sig := <-c
d <- 1
log.Printf("kafka comsumer closing down (signal: %v)\n", sig.String())
Wait.Wait()
// statistics.Statistics()
}
func scheduleDailyTask() {

View File

@ -1,54 +0,0 @@
/*==============================================================*/
/* Database name: sg_gamedb */
/* DBMS name: MySQL 5.5.17 */
/* Created on: 2014-10-16 10:00:00 */
/*==============================================================*/
create database if not exists pet_home CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci;
use pet_home;
CREATE TABLE IF NOT EXISTS `log_var` (
`Key` varchar(128) DEFAULT '' COMMENT '',
`Value` varchar(128) DEFAULT '' COMMENT '',
`Timestamp` int DEFAULT 0 COMMENT '时间',
PRIMARY KEY (`key`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='登录日志';
CREATE TABLE IF NOT EXISTS `log_login` (
`id` int unsigned AUTO_INCREMENT COMMENT '自增id',
`Uid` int unsigned NOT NULL COMMENT '玩家id',
`Event` varchar(128) DEFAULT '' COMMENT '事件',
`Timestamp` int DEFAULT 0 COMMENT '时间',
PRIMARY KEY (`id`),
KEY `Event` (`Event`),
KEY `Uid` (`Uid`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='登录日志';
CREATE TABLE IF NOT EXISTS `log_event` (
`id` int unsigned AUTO_INCREMENT COMMENT '自增id',
`Uid` int unsigned NOT NULL COMMENT '玩家id',
`Event` varchar(128) DEFAULT '' COMMENT '事件',
`Param` text COMMENT '参数',
`Timestamp` int DEFAULT 0 COMMENT '时间',
PRIMARY KEY (`id`),
KEY `Event` (`Event`),
KEY `Uid` (`Uid`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='操作事件';
CREATE TABLE IF NOT EXISTS `log_order` (
`id` int unsigned AUTO_INCREMENT COMMENT '自增id',
`Uid` int unsigned NOT NULL COMMENT '玩家id',
`OrderId` varchar(128) DEFAULT '' COMMENT '订单号',
`Price` float NOT NULL DEFAULT '0' COMMENT '价格',
`PayChannelOrderId` varchar(128) DEFAULT '' COMMENT '支付渠道订单号',
`ProductId` int unsigned NOT NULL DEFAULT '0' COMMENT '商品id',
`CreateTime` int unsigned NOT NULL DEFAULT '0' COMMENT '创建时间',
`PayTime` int unsigned NOT NULL DEFAULT '0' COMMENT '支付时间',
`PayType` int unsigned NOT NULL DEFAULT '0' COMMENT '支付类型',
`Param` text COMMENT '参数',
`Timestamp` int DEFAULT 0 COMMENT '时间',
PRIMARY KEY (`id`),
KEY `OrderId` (`OrderId`),
KEY `Uid` (`Uid`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='订单';

View File

@ -19,5 +19,5 @@ CREATE TABLE IF NOT EXISTS `remain` (
FourteenthRemain int unsigned NOT NULL DEFAULT '0' COMMENT '十四日留存',
ThirtiethRemain int unsigned NOT NULL DEFAULT '0' COMMENT '三十日留存',
PRIMARY KEY (id),
KEY `Date` (`Date`)
UNIQUE `Date` (`Date`)
)ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='留存';

View File

@ -244,7 +244,7 @@ func createConfigFile(Id int, Type string) (map[string]interface{}, string) {
MaxConnNum, _ := cfg.Section("server").Key("max_conn").Int()
conf["MaxConnNum"] = MaxConnNum
app_name := cfg.Section("app").Key("app_name").String()
conf["LogPath"] = fmt.Sprintf("%s/zone/%s_%s_%d/log/", app_path, app_name, Type, Id)
conf["LogPath"] = fmt.Sprintf("%s/zone/%s_%s_%d/log", app_path, app_name, Type, Id)
conf["DbName"] = fmt.Sprintf("%s_%d", app_name, Id)
conf["TELOGDIR"] = cfg.Section("log").Key("te_log_path").String()
@ -252,7 +252,7 @@ func createConfigFile(Id int, Type string) (map[string]interface{}, string) {
conf["GameName"] = app_name
AppId, _ := cfg.Section("app").Key("app_id").Int()
conf["AppID"] = AppId
conf["AppPath"] = app_path
conf["ServerType"] = Type
conf["ServerID"] = Id
@ -340,10 +340,10 @@ func reload() error {
if len(os.Args) < 4 {
log.Fatal("请输入要重启的服务类型和区号 reload [center|node] 区号")
}
app_name := cfg.Section("app").Key("app_name").String()
NodeType := os.Args[2]
Zone := os.Args[3]
args := fmt.Sprintf("%s_%s", NodeType, Zone)
args := fmt.Sprintf("%s_%s_%s", app_name, NodeType, Zone)
pid, err := getPidByArgs(args)
if err != nil {