Language
: go (go1.21.9)Database
: mariadbweb framework
: gorillacommunication
: kafka, tcp/ip, restful api, ssekernel
: shared memory, signalversion control
: github
gobesvrbase
is a backend server process
- It provides http rest api and http sse
- It provides kafka and tcp/ip commucation
- It provides database access(mariadb)
- It provides shared memory between process, linux signal handling and CLI process
- It is just backend server base process
apimp
: API server Manage Process, mornitor 'apisvr', exe processapisvr
: backend prcoess (It perform http, db access and network communication(tcp and kafka))cli
: Client line interface (It provides debug command and information)
- It exist only main package
- apisvr package tree
├── main
├── app
│ ├── appmodel `[global model package]`
│ ├── dbapp `[Database interface package]`
│ │ └── mdb `[mariadb access package]`
│ ├── httpapp `[http api, sse package]`
│ ├── msgapp `[network message processing package]`
│ ├── netapp `[network communication, httpapp-netapp and netapp-msgapp channel management package]`
│ ├── kafkatapp `[kafka message consume and produce]`
│ └── objdb `[Object management package]`
└── comm `[tcp/ip wrapper package]`
- cli package tree
├── main
└── cmd `[command processing package]`
- $sh make.sh
- move bin directory : $cd ./bin
- execute process : apimp
/gettest
: get test api, It resonse "{"result":0,"data":[{"Dt":"2024-08-05 17:09:33","Val":1}],"reqdata":null}"/posttest
: post test api, It response {"result":0,"data":"PostTest","reqdata":null}"/deltest
: delete test api, It response {"result":0,"data":"DelTest","reqdata":null}/netcmd
: request network command/events
: send server time every 1sec (YYYY-MM-DD HH:MM:SS)
- command list
* help
* system
* version
* process
* debug
* exit
* termiante
- help : show command help message
- system : show system infomation
- version : show application version infomation
- process : show process state infomation
- debug : change logging level
- exit : quti cli
- terminate : terminate all process