熟练掌握golang开发,能够结合mysql、mongodb、redis等数据库快速开发项目。
熟练使用golang 通用框架(gin、gorm、validator、grpc、quic),实现了基于gin+gorm自行封装的mvc框架、基于quic的rpc、rpc-proxy服务框架。
熟悉golang 分布式服务注册,发现,以及负载均衡、限流、熔断降级等理论知识,实现了基于grpc+etcd的分布式服务框架。
熟练掌握linux基本命令,能够搭建linux开发和运行、测试环境,成功搭建gitlab+jenkins+harbor+k8s一体化的开发测试部署环境。
熟悉docker基础命令,能够使用docker部署服务器项目,熟悉Kubernetes应用部署流程,并成功部署KubeSphere PAAS容器云管理本地Kubernetes集群环境。
熟练掌握vue开发,能够使用nuxt+node开发服务器端渲染应用。
了解electron、tauri等桌面应用开发流程,并基于neon开发出node音乐爬虫扩展。
社交应用服务器程序cg-bacend
项目描述:配合社交应用客户端设计和开发、维护服务器端程序,社交应用项目类似于微博以及微信的结合体。
项目技术:项目是基于gin+gorm自行封装的mvc框架开发完成,使用swagger进行服务器端接口文档展示以及测试;使用google validator库进行数据入参基础校验;使用oauth2机制进行接口鉴权;使用阿里云短信接口完成用户手机一键登录模块;使用websocket+redis实现客户端到服务器端以及客户端消息发送、离线消息通知模块;使用mongodb数据库实现lbs即附近人搜索模块;使用seaweedfs分布式文件存储系统完成服务器端应用存储模块。
项目成就:项目主要实现了用户登录、用户个人中心管理、用户好友管理、附近人搜索、用户聊天消息发送、用户空间展示、用户评论点赞等社交应用具备的常用功能模块。
自动化运维子项目auto-server
项目描述:配合PAAS云建设,设计和开发运维相关项目,公司运维项目类似于蓝鲸云,此项目是运维功能融合项目子项目。
项目技术:auto-server提供对auto-web指令下发的转发功能,项目基于gin+gorm自行封装的mvc框架开发完成;使用grpc以及grpc双向流技术完成服务器端和远程主机代理端之间的通信;服务器端和远程主机代理端使用内置san证书保证grpc通信安全;使用map替代struct进行orm操作,优化了数据库执行速度;使用metricbeat、filebeat实现主机、进程监控和数据采集上报,将上报的监控数据存放至kafaka,由java程序过滤放到es中进行数据分析;使用分片上传技术,获取远程主机文件,断点下载技术,下发文件到远程主机。
项目成就:项目主要实现了auto-web功能指令的转发以及指令执行结果的上报存储、主机以及进程监控配置下发、主机和进程监控数据上报存储、数据库连接、查询、事务执行、事务回退指令的下发和指令执行状态上报结果接收、指令执行结果接收转发、远程代理端程序自动升级更新等功能,大大减少了运维人员连接远程主机数据库进行数据脚本维护的时间。
自动化运维子项目auto-agent
项目描述:配合PAAS云建设,设计和开发运维相关项目,公司运维项目类似于蓝鲸云,此项目是运维功能融合项目子项目。
项目技术:auto-agent项目部署在被隔离的网络中,只提供一台主机对外访问,项目可以通过指令启动成两种不同的模式,一种是主节点模式,一种是字节点模式,主节点模式代理主要负责服务器端指令的转发和服务器端文件的缓存,子节点模式代理主要负责服务器端指令的执行以及执行状态,执行结果上报。主agent端使用rsa技术生成基于环境的证书对,服务器端程序使用环境公钥加密通信,保证了系统的安全性,实现了es api接口代理,子agent端使用local ssh技术执行shell指令,规避了云厂商安全告警,子agent端实现了服务器端指令(主机监控、主机文件管理、主机程序关联管理、项目版本仓以及镜像仓管理、镜像打包、普通项目程序和k8s项目程序远程发布部署、回退、健康检查、k8s镜像远程推送、k8s pod检测和重启、普通和k8s程序日志读取、链路追踪日志生成和读取等功能指令)执行以及指令执行状态,执行结果上报。
项目成就:项目主要实现了指令执行以及执行状态、执行结果上报功能,大大减少了运维人员登机分析程序异常日志的时间,有利于运维人员分析远程主机资源占用情况以及程序运行情况。
职位:Golang开发工程师 项目技术实现:项目是基于gin+gorm自行封装的mvc框架开发完成,使用swagger进行服务器端接口文档展示以及测试;使用google validator库进行数据入参基础校验;使用oauth2机制进行接口鉴权;使用阿里云短信接口完成用户手机一
职位:Golang开发工程师 项目技术实现:auto-server提供对auto-web指令下发的转发功能,项目基于gin+gorm自行封装的mvc框架开发完成;使用grpc以及grpc双向流技术完成服务器端和远程主机代理端之间的通信;服务器端和远程主机代理端使用内置san证书