1、10年以上 java 后端开发经验,5年架构设计经验,3年团队管理经验
2、对 Redis、rabbitMq、Zookeeper、Netty、Dubbo、Spring Cloud、Spring 等开源框架源码有过深入研究
3、精通 java、mysql、javascript、html、css 等开发语言
4、精通 jvm 调优 sql 调优
5、具有分布式、高并发、高可用系统架构设计以及研发经验,负责过注册用户三千万,日活三百多万,日访问量1亿+,高峰期十万并发电商平台的架构设计与研发
6、熟悉区块链技术
whateverpay支付项目
项目主要完成两方面的服务
1. 协助国内商户在国外做贸易交易时收款困难或者收人民币比较困难针对于这样的商户而解决他们在国
外贸易时的支付问题
2. 为公司交易所出入金服务
3. 项目架构:
a、项目整体使用微服务架构设计,使用 springboot+springcloud+dubbo 开源框架搭建的分布式系
统、zookeeper 做服务注册中心
b、数据库使用 mysql+mybatis
c、使用 redis 完成缓存数据库和分布式锁、RabbitMq 做消息中间件完成订单的异步推送;
d、使用 xxjob 分布式定时任务管理完成系统的定时任务调度
e、其他的例如:接口安全验证、参数加密、事务等等
1、完成项目初版源代码开发和调试,完成项目主要业务接口的压测
2、总共完成了50多家商户接口对接,项目生产环境正式上线运行,效果良好
3、 完成欧美国家部分银行的法币渠道对接
4、 完成便捷支付业务功能的设计和开发
5、完成新币种(TRC-20)代币网络协议的接入开发
6、新币种协议 BTC 闪电网络协议的接入开发
7、支付和结算币种支持多法币的业务功能开发
8、完成项目架构重构,高可用、高并发、高性能架构设计和重构
9、完成新架构下的性能测试、高并发测试等
10、 带领团队成员按时、按量、按质交付产品
11、 组织团队进行Code Review
12、不 定期组织技术分享等培训
whateverPay商城项目
项目摘要:whateverPay 商城项目主要服务于国内商家和海外用户,该项目是一个大型 saas 结构的商
城平台,为国内小型商家提供一个海外商城平台,以商家入驻的方式接入平台,在平台开设自己的商
铺,上架商品.核心功能有包括:商户管理、商品管理、积分管理、优惠券管理、活动管理、订单管理.
架构经验
(1)分布式系统架构
1、分布式系统基于 dubbo 划分为商品线、交易线、资金线、用户线、支付线、履约线构成的电商系统
架构,dubbo 配置关闭启动时检查、服务分组、多版本、延迟暴露等。基于 dubbo 如何做服务治理、
服务降级以及重试
2、配置中心使用携程 Appollo 框架,注册中心采用 ZK 实现。
3、基于分布式数据库 MongoDB 解决消息中心、广告中心的大批量终端 Id 的信息更新
4、基于分布式搜索系统 ElasticSearch+Kafka 自研的 Trace 进行链路追踪和日志统计
5、分布式事务主要应用于交易中心的支付功能采用 TCC 事务,保障支付,风控,优惠券处理的一致
性;支付网关回调采用可靠消息最终一致性设计,保证扣款,积分,抽奖的最终一致性;支付反馈消息
采用最大努力通知型设计
6、分布式 session 使用 Tomcat-redis-session-manager 实现共享
7、采用 Redisson 实现的分布式锁方案解决分布式并发需要加锁的场景
(2)高并发系统架构
1、SLB+Tengine 分散压力,优化并发连接数
2、Tomcat 采用非阻塞协议 Http11Nio2Protocol ,启用压缩,优化并发连接数,JVM 优化
3、用户中心、交易中心 采用 Mysql+ShardingJdbc+SLB 进行分库分表,读写分离
4、会员端小程序接口采用本地内存+Redis 多级缓存保存热点数据
5、个人中心、交易中心采用 RocketMQ 对低耦合业务进行异步处理
6、对热点数据预处理
(3)高可用架构
1、各业务模块多点布署保证高可用
2、会员端小程序接口采用 Sentinal 对异常流量进行熔断降级和监控
3、用户信息、渠道信息等采用 Redis+Ehcache 多级缓存
4、MHA+Mysql+ShardingJdbc+SLB ,应用分布式集群部署,Redis Cluster 集群保证存储高可用
5、RocketMq 高可用架构部署保证消息队列高可用
6、ElasticSearch+Zookeeper 集群保证搜索引擎高可用
7、Zabbix 自动化检测实时报警
8、核心接口异常和数据对比异常,发短信及时报警通知
(4)高性能架构
1、采用构造器模式构建活动商品,采用状态模式进行商品的上下架,采用原型模式构商品 VO 转换
2、采用分布式定时任务轮巡保证数据强一致性
3、采用职责单一,层极分明,高聚合低耦合的原则设计代码结构
4、基于 AOP 机制进行异常的捕获,通过错误码的方式返回,便于快速定位解决问题
5、基于 Appollo 配置做新旧代码开关控制,线上发布无需回滚,直接更改配置即可
问题解决经验
解决会员端接口请求缓慢,带宽占比高,代码维护性差的问题
1、工程工程业务功能拆分,分别集群部署,提高单机的性能
2、建立本地缓存,所有会员端接口走本地内存方式
3、精简接口返回字段,不需要的字段不返回
4、重构代码,实现高聚合低耦合的原则
saas医院管理HIS系统
医院管理系统的开发目标主要包括:实现医院内部的挂号、收费、药房、药库、科室、病床的信息化管
理,提供记录医院内部各类经营决策汇总和明细的月报表、年报表.记录用户住院信息、医生信息、科
室、药品、手术、病床信息等.药房管理、药房报缺.库房管理,入库信息经办人,查询剩余库存,出库
单,药房报缺后从库房调取.
架构介绍:springboot+mysql+mybatis+layui ,通过分库,为每一个医院创建单独的数据库,使用
dynamicdatasource 插件实现数据库动态切换以此实现项目的 saas 实现.
系统包括:系统管理、门诊管理、住院管理、统计管理、仓库管理、药房管理等模块
为中小型医疗机构内部实现信息化管理,提供了医院临床信息管理,挂号、收费、药房、药库、科室、
病床等信息管理.对患者的临床信息完整保存.保证患者能及时得到最佳治疗.
本人主要负责项目系统架构,项目部署上线,性能优化和部分业务功能开发.
我主要负责项目架构和核心功能开发 项目主要目标:实现医院内部的挂号、收费、药房、药库、科室、病床的信息化管理。提供记录医院内部各类经营决策汇总和明细的月报表、年报表。 记录用户住院信息、医生信息、科室,药品,手术,病床信息等。 药房管理,药房报缺. 库房管理,入库信息及经
项目架构 1、后端架构 后端核心框架: Spring Boot , Shiro+Jwt(权限认证),Ehcache(后端缓存),quartz(定时任务管理)数据库层:Spring data jpa+MySQL+Druid / Spring data mongodb+Mongo
概述: 项目是基于nodejs,java,javaScript,PHP,HTML5等语言开发的医院管理系统,本项目是为医院开发的一套后台管理以及前端预约等功能的一套程序,目的是方便医院管理药品,医生,病房,库存等一系列的繁琐事务,也方便了病人到医院的排队挂号,排队交费等,浪费时
项目架构 1、后端架构 后端核心框架: Spring Boot , Shiro+Jwt(权限认证),Ehcache(后端缓存),quartz(定时任务管理)数据库层:Spring data jpa+MySQL+Druid / Spring data mongodb+Mongo