Giter Club home page Giter Club logo

fusion_go's Introduction

Fusion_Go

Fusion 是一个提供了高校赛事信息汇总以及组队功能的网站,项目采用前后端分离,前端主要采用 Vue 框架,后端主要基于 Go 的微服务框架。 该 Repo 保存的是后端代码。

前端项目地址:Fusion_Web

API 接口文档

查看详细的 API 接口文档:Fusion_API

项目介绍

  1. 微服务架构: 使用 HTTP 框架 Hertz 构建 API 层,微服务模块之间通过 RPC 框架 Kitex 进行通信。

  2. 数据库操作: 采用 GORM 框架操作 MySQL 数据库,实现高效的数据处理和存储。

  3. 数据缓存: 使用 Redis 对频繁访问的数据进行缓存,显著提升接口性能。

  4. 服务发现与注册: 利用 ETCD 进行服务发现和注册,增强系统的可伸缩性和可靠性。

  5. 用户认证: 使用 JWT 实现用户 token 的生成和校验,确保系统安全性。

  6. 链路跟踪: 通过 Hertz 中间件 tracer 实现链路跟踪,保证高可维护性和快速问题定位。

  7. 日志记录: 结合 Kitex 中间件 klog 和 Hertz 中间件 hlog 进行全面的日志记录。

  8. Gzip 压缩: 利用 gzip 中间件对 API 响应进行压缩,减少数据传输量,提高响应速度,特别适用于高延迟和低带宽的网络环境。适用于高延迟和低带宽的网络环境。

快速开始

  1. 编辑 pkg/constants/constants.go 文件,修改相关配置

  2. 启动相关服务,保证已经安装了 docker

make start
  1. 启动 api 服务
make run_api
  1. 启动 user 服务
make run_user
  1. 启动 contest 服务
make run_contest
  1. 启动 team 服务
make run_team
  1. 启动 favorite 服务
make run_favorite

fusion_go's People

Contributors

yra-a avatar rocketzhu avatar gdw118 avatar

Stargazers

Burstlink avatar  avatar  avatar  avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.