个人介绍
我是程序员客栈的周汉文,一名后端开发,java方向,go也ok。
负责过斗鱼主站分类优化、融资管理平台、AAM剧院云端自动化管理系统等项目
熟悉的分布式,微服务开发经验。
熟悉常见设计模式,SpringCloud,MyBatis,SpringBoot等开源框架
熟练掌握熟悉mysql数据库,mysql主流数据引擎的数据结构,锁,事务等
熟悉掌握Java基础、多线程、集合、等基础框架
熟悉掌握redis,持久化,哨兵,集群。内存回收等基础原理
熟悉使用rocketMq,dubbo,xxljob等分布式中间件。
具有1年左右的golang开发经验
具有基于数据库、缓存、分布式存储开发数据应用的实际经验
了解spring cloud alibaba系nacos,seata等组件
工作经历
2021-06-03 -2023-06-01纬创软件有限公司java
负责对接斗鱼公司的技术需求,整理项目排期,进行相应的软件设计、开发、部署等工作.
教育经历
2012-06-20 - 2015-06-08武汉商贸职业学院计算机网络专科
技能
此项目由多个,客户系统,交易系统,金融系统,风控系统等组合而成,是一个典型的分布式微服务架构。 每个系统具有单独的负载均衡部署,进行垂直拆库,利用dubbo,activemq等进行中间件技术进行服务间的数据交互。 工作内容: 主要负责金融系统的开发与维护。主要业务为承接交易系统与第三方资金方之间的放款操作。 1.将每一笔交易匹配到符合其资格的第三方资金方,匹配核心为策略模式的使用进行不同资金方需求业务之间的解耦操作,然后利用mvel表达式的动态验证特性完成了可供后台业务员操作的规则配置功能 2.匹配逻辑较为复杂,其中为了报表业务做了动态数据埋点,定时产生业务报表 3.利用工厂,策略模式实现了不同资金方的动态业务选择与数据交互 4.利用定时任务进行异步的状态校验处理完成与交易系统和第三方资金方系统之状态最终一致性的同步 操作业务幂等和使用reddison来实现分布式锁的实现
AAM-cloud是一个人分布式,多语言,软硬件结合的的云端剧院管理系统。主要分为ScreenWriter和Producer2大模块 ScreenWriter较多与硬件交互,包括影片内容包的上传,加密文件的部署,设备信息的变更等等硬件信息的管理。将所有硬件相关信息传输至信息流整合系统Agent,由Agent系统进行信息整合,统一传输至云端处理. Producer较为复杂,由多个分布式子系统构成。主要分为3层架构。底层服务如影院信息系统,用户系统,日志系统等。中间层为POS排期系统,影片管理系统,播放列表管理系统等,最上层由前端Producer-view系统负责数据聚合,提供至前端调用,展示结果给用户使用 工作内容: 负责部分底层服务业务日志系统,标题系统以及最上层的聚合服务Producer-view系统的开发维护工作。 5.聚合多业务系统的数据,通过kafka进行数据同步。处理数据重发,并发等技术问题 6.将高峰期数据同步业务进行缓存的定时异步处理 7.多条件的复杂查询由mysql迁移至ElasticSearch进行搜索性能的优化 8.利用责任链模式进行同步数据的递归处理 9.有较为长期的项目优化经验,如业务层进行业务拆分,流程优化,分段加载等。技术层面进行存储系统的优化迁移,垂直拆表,索引重构等
斗鱼主站分类页面优化。针对分类配置进行自定义的分类处理,允许运营人员通过自定义的分类来完成分页栏目的定制,而不是使用传统的二级分类,保证能够自定义分类下的数据。同时加上用户喜爱分类的数据,根据权重逻辑计算,来最终展示用户看到的分类列表。 1.聚合多数据源的数据,通过dubbo,http等接口对大数据,分区服务等内部服务进行数据聚合。利用定时任务进行异步的数据缓存,接口通过直接读取缓存保证接口性能。用到了redis,local缓存 2.为保证用户访问的数据独特性,去掉了CDN缓存 3.利用模板技术对页面加载进行预处理,保证页面加载性能。 4.兼容旧逻辑处理,通过AB实验的区分,保证新老逻辑能够同时在线上运行,避免可能的线上问题能够及时切换流量进行规避