littlebot
Published on 2025-04-08 / 0 Visits
0

【源码】基于Go语言的用户管理系统

项目简介

本项目是基于Go语言开发的用户管理系统,包含用户Web登陆界面、HTTP server服务与TCP server服务。利用Redis进行热点数据缓存,MySQL存储用户相关信息,通过RPC调用实现HTTP server和TCP server间的通信,为用户提供注册、登录、获取信息、修改昵称和头像等功能。

项目的主要特性和功能

  1. 分层架构:HTTP server处理HTTP请求并转发,TCP server处理转发请求并访问数据库。
  2. 数据库结合:用Redis缓存热点数据,如登陆校验的token、用户信息和登录信息;MySQL维护用户信息表和用户登陆信息表。
  3. RPC通信:通过自定义的RPC通信协议,实现HTTP server和TCP server之间的高效通信。
  4. 丰富接口:提供注册、登录、获取用户信息、更改用户昵称和头像等API接口。
  5. 测试机制:具备功能测试、单元测试和压力测试,可对系统性能和功能进行全面验证。

安装使用步骤

前提条件

用户已下载本项目的源码文件,并安装好Go语言环境。

具体步骤

  1. 启动TCP server:在终端中执行go run tcp_server.go
  2. 启动HTTP server:待TCP server启动后,在终端执行go run http_server.go
  3. 功能测试:通过Web界面或工具进行用户登录、显示用户信息、修改用户头像等功能测试。
  4. 单元测试:在redismysqltcp_server目录下执行go test命令运行对应代码的单元测试。
  5. 压力测试:例如进行固定用户登陆压力测试,在wrk目录下执行wrk -t5 -c200 -d50s -T20s -s fixedLogin.lua http://localhost:1088/login

下载地址

点击下载 【提取码: 4003】【解压密码: www.makuang.net】