【工作周报】2023.8.7-2023.8.18

工作周报 / 2023-08-20

原工作计划

  • 完成域名备案
  • 利用七牛云优化博客图片加载
  • 取得https认证
  • 部署博客到小程序

完成工作进度
全部完成原定工作计划

  • 此外,在等待备案审核期间学习了springcloud、MQ等内容,也对vue与后端的交互进行了初步的了解
  • 完善了自己的简历三个项目的部分

项目一:分布式发号器
项目描述:为业务系统提供分布式环境下的唯一标识,如:分库分表后的唯一ID。
目前已接入多个系统(短链接系统、营销平台),峰值TPS目前为2W+。该发号器具备通用性,具备全局唯一、趋势/单调递增、高可用、易接入等特点。
所用技术:
• 技术栈/框架:springboot + redis + dubbo + nacos
• 构建:docker-compose
• CI/CD:gitlab CI + jenkins + 阿里云
• 分布式链路跟踪:zipkin
• 项目管理:teambition + jira
• 性能测试:jmeter

个人职责:
• 根据需求进行算法调研(snowFlake等),参与架构设计的讨论以及技术选型。
• 参与发号器核心接口的设计、编码工作。
• 负责接口的编写、调试工作,按时完成业务系统的对接工作。
• 采用号段模式优化接口性能,减少数据传输量,可支撑8W+并发需求。

项目二: 短链接项目
项目描述: 为内部业务系统提供短链接服务,解决营销短信等业务场景字数限制的问题(短信最多70个汉字),目前承载每月千万条短网址的服务转换,上亿次短链接跳转,该项目具备高可用、高性能(跳转近实时)、安全(链接不可被猜测)的特性,作为自研中间件服务于全系统。
所用技术:
• 技术栈/框架:springboot + redis + mybatis + ShardingSphere(分库分表) + Nacos + dubbo
• 构建:docker-compose
• CI/CD:gitlab CI + jenkins + 阿里云
• 分布式链路跟踪:zipkin
• 项目管理:teambition + jira
• 监控:Prometheus
• 性能测试:jmeter
• 数据库:MySql

个人职责:
• 根据需求进行短链接实现的算法调研(murmurhash、base62等),采用全局自增ID(解决hash算法的随机碰撞问题,较少对数据库层的无效访问),参与架构设计。
• 负责短链接项目的详细设计工作,并组织会议进行技术评审(80%的设计一次性评审通过)。
• 根据业务量进行分库分表设计,按照一年过期时间设计,解决3.6亿条数据的存储、检索问题。
• 负责短网址转换、跳转等功能的编码工作,按期交付项目。
• 使用bloom过滤器解决非法请求的跳转问题,减少对后端服务的无效访问,提升性能。

项目三:高校闲置资源交易系统
项目描述: 本系统采用微服务架构设计,在分布式环境下利用Spring Cloud框架,通过业务划分,设计独立模块的微服务,拆分为订单服务、购物车服务、支付服务、用户管理服务、商品管理服务、文件上传服务等模块,结合了当前比较流行的互联网电商模式,为消费者提供商品贸易平台。
所用技术:
• 技术栈/框架:SpringcloudAlibaba + springboot + redis + mybatis + rabbitMQ
• 实现熔断降级和错误处理:Sentinel
• 分布式事务解决方案:Seata
• 服务网关:Gateway
• 链路追踪:Sleuth
• 数据库:MySql

个人职责:
• 参与系统的登录、订单、文件等服务的接口开发工作。
• 利用redis开发手机验证码、登录校验等功能。
• 使用RabbitMQ延时队列实现未付款订单的超时取消和解锁库存等功能。
• 基于Elastic Search实现商品检索功能。