Skip to content
View bz-2021's full-sized avatar

Block or report bz-2021

Block user

Prevent this user from interacting with your repositories and sending you notifications. Learn more about blocking users.

You must be logged in to block users.

Please don't include any personal information such as legal names or email addresses. Maximum 100 characters, markdown supported. This note will be visible to only you.
Report abuse

Contact GitHub support about this user’s behavior. Learn more about reporting abuse.

Report abuse
bz-2021/README.md

Hi, I'm bz2021 👋 My Blog

山东大学计算机专业25届本科生

技术栈

🛠 熟悉 Golang, C/C++。

⛏ 了解 Java。了解 React, Vue 等前端框架。

开源项目

simple-rpc: 基于 Go 实现的 RPC 框架 (2023.12)

  • 从零实现了 net/rpc 包,具有基本调用功能
  • 支持通过不同的编码格式进行序列化和反序列化
  • 高性能客户端,支持并发异步请求
  • 支持客户端和服务端的超时处理
  • 具有注册中心,通过心跳机制进行健康检查
  • 具有服务发现功能,支持多种负载均衡算法

bitcask-kv: 基于 Bitcask 模型的高性能 KV 存储引擎(2023.10)

  • 具备高吞吐量低读写放大的特征
  • 实现数据的持久化,确保数据可靠性和可恢复性
  • 支持多种内存索引结构,兼容 Redis 数据结构和协议
  • 使用锁机制,确保数据一致性和并发访问的正确性
  • 通过 mmap 等机制对存储引擎进行性能优化

mini-douyin: 基于微服务架构的极简抖音后端(2023.08)

  • 微服务架构,服务间通过 gRPC 通信,对外暴露 HTTP 接口
  • 包含视频流服务、社交服务、用户服务、API服务
  • 使用 Go 语言进行开发, Gin、Gorm 等框架

tank-trouble: 使用 Go 实现的坦克动荡小游戏(2023.11)

  • 通过回溯算法生成随机地图
  • 实现坦克的方向控制,坦克与墙壁的碰撞检测
  • 实现炮弹的发射,炮弹与墙壁的碰撞反弹,炮弹的定时销毁
  • 实现回合数的统计

Pinned Loading

  1. simple-rpc simple-rpc Public

    实现net/rpc并增加协议交换、服务注册与发现、负载均衡、超时处理等特性

    Go 3

  2. mini_douyin mini_douyin Public

    Go+Gin+GORM+gRPC 极简版抖音后端

    Go 2

  3. tank_trouble_go tank_trouble_go Public

    基于 go 和 ebiten 框架实现的简单坦克动荡

    Go 1

  4. kv-go kv-go Public

    基于 Bitcask 模型的 Key-Value 存储引擎

    Go