2020.7-2021.3 嗨淘网
Java开发工程师
软件架构:SpringCloud+Mysql+redis+MongoDB+RabbitMQ+Elasticsearch+nginx
开发环境:Idea、JDK1.8、Mysql、Git
项目介绍:
此项目用java开发的电子商务网站模式为B2C模式。针对单一商品进行网上交易。
在整个项目中,我们采用的是nginx+tomcat来部署的,nginx一方面做加载静态资源的服务器,另一方面来做反向代理和负载均衡。因为该项目需要在多个环境中运行,我们利用了nginx的反向代理解决了不同环境同系统访问地址不统一带来的问题。
因为整个项目实现的功能较多,所以我们使用Spring Cloud微服务框架,采用分布式的架构设计整个项目包括后台管理系统、前台系统、订单系统、登录系统、搜索系统、购物车系统等,这样做的好处是使每个功能模块独立出来,降低了各系统之间的耦合度,增删一个功能不会影响其他功能模块
在项目中主要负责相关系统的开发,主要有:
1) 后台管理系统,主要实现商品管理、商品规格参数管理、订单管理、会员管理等、CMS(内容管理系统)等,并且提供了跨域支持;
2) 前台系统,主要是面向用户访问,使用Httpclient和后台系统接口做交互,并且该系统在部署上采用集群的方式;
3) 单点登录系统,主要是提供集中用户登录凭证的集中解决方案,提供和用户信息相关的接口,比如说用户注册、查询等接口。
4) 订单系统,主要是提供和订单相关的业务接口,在订单系统了做了严格的数据校验以及高并发写的支持,并且使用了定时任务实现对订单的定时扫描,比如说关闭超时未付款的订单;
5) 搜索系统,主要是提供商品的搜索,采用Elasticsearch实现,采用了RabbitMQ保证了商品数据可以及时同步到Elasticsearch中;
6) 会员系统,主要是维护用户的信息,已购买订单、优惠券、系统消息、修改密码、绑定手机等功能;
7) 缓存,主要是用Redis实现,并且对Redis做了集群来保证Redis服务的高可用。
8) 支付系统,主要是负责订单的支付、对账等功能,主要是对接了支付宝的接口;
9)负责项目整体的测试,使用postman对所有接口进行接口测试,使用jmeter对秒杀系统的并发测试,以及使用loadrunner对项目的压力测试
2019.5-2020.6 “今日开讲”授课云平台
Java开发工程师
软件环境:
Spring MVC +Spring+ MyBatis + redis+ Dubbo+ zookeeper
开发工具:
Windows+ Eclipse + Tomcat + Mysql + SVN + nginx
项目描述:
该项目致力于打造一个类似“淘宝”的授课平台。任何注册的普通用户都可以申请成为讲师(初级、中级、高级、金牌),申请通过后就可以发布课程。然后,普通用户就可以购买课程(购买时钱打到企业账户),进而进行授课。授课方式为“在线预约和支付”当面授课。授课的对象模型有个人对个人、个人对企业和公开课三种形式。授完课程,用户给予评价,然后课程费用才打到讲师个人账户。如果用户不评价,达到一定时间后,自动将钱打到讲师个人账户。每笔交易公司会抽取一定的费用。为了推广系统,还打造了一个独立的活动子模块,推出“一元课程”等类似的奖励课程业务。这样,人人都可以免费成为“讲师”,利用我们的授课平台来分享知识并获得相应的报酬。
项目使用Dubbo+Zookeeper实现分布式,Zookeeper作为注册中心,实现透明化调用;应用Nginx+Tomcat集群,Nginx作为反向代理服务器,异步转发请求,降低高并发下访问服务器压力;Redis作为非关系型数据库来存储用户间的关系信息,以及讲师课程等基础数据,以提高访问速度。
责任描述:
在整个项目开发中,参与需求讨论,整理相关需求文档,编写 API 接口文档
负责首页搜索,订单管理模块;
负责后台讲师管理,讲师审核
负责支付模块
负责搭建redis集群;
负责Linux服务器上部署以及系统的后期维护工作。
负责项目的总体测试,bug修复