west2-online / fzuhelper-server

Distributed architecture-based server application for fzuhelper, serving more than 「 23,000 」 teachers and students in the school everyday
Apache License 2.0
9 stars 10 forks source link

fzuhelper-server

English | 中文

Overview

fzuhelper-server is a distributed architecture-based server application for fzuhelper, which has been in use since 2024, serving over 23,000 students from Fuzhou University everyday (Data source and introduction to fzuhelper).

This project focuses on business implementation. To see how we interface with the academic affairs office, you can check out our open-source version at west2-online/jwch.

fzuhelper was launched in 2015, developed from scratch by west2-online and continuously operated, providing students with industrial-grade practice as much as possible on campus and offering robust support for student employment.

Features

Project structure

.
├── .golangci.yml              # GolangCI configuration
├── .licenseignore
├── go.mod
├── go.sum
├── LICENSE
├── Makefile                   # some useful commands
├── README.md
├── api                       # gateway
├── cmd                       # microservices entry
├── config                    # configuration files and examples
├── docker                    # Docker build configuration
├── docs
├── hack                      # tools for automating development, building, and deployment tasks
├── idl                       # interface definition
├── internal                  # microservices implementation
├── kitex_gen                 # kitex generated code
└── pkg
    ├── base/                 # common base service
    │   └── client/           # client for corresponding components (redis, mysql e.g.)
    ├── cache/                # cache service
    ├── db/                   # database service
    ├── constants/            # store any consts
    ├── errno/                # custom error
    ├── eshook                # elasticsearch hook
    ├── logger/               # logging system
    ├── tracer/               # for jaeger
    └── utils/                # useful funcs

Quick start and deploy

Due to the script we have written, the process has been greatly simplified. You just need to use the following command to quickly start the environment and run the program in a containerized manner.

please visit: deploy

Architecture

Contributors

If you are interested in joining the maintenance of fzuhelper-server, please contact us on our official website

License

fzuhelper-server is licensed under the Apache 2.0 license. See the LICENSE file for details.