个人介绍
我是景元,是一名中级软件工程师,毕业于新疆大学,有两年大型跨国电商业务研发经验,独立设计负责支付、弹窗、积分兑换、后台数据可视化、日志报警系统的研发。熟悉前后端分离的开发模式,熟练掌握YII,Vue等开发框架,熟练使用pjax,Jquery,DAO,elasticsearch、MySQL、linux、git。
工作经历
2020-04-03 -2022-04-06智线云科技有限公司软件工程师
公司主要产品是游戏应用行业的SaaS软件服务,电商行业的软件和服务。我在中台线,为所有产品线的提供公共业务研发。
教育经历
2015-09-01 - 2019-06-04新疆大学软件工程本科
技能
1、本项目使用前后端分离技术,使用Vue.js前端框架基于Pjax技术发起HTTP请求,向后端服务器请求数据。后端服务器接收请求,使用Yii框架的DAO获取所需数据后,经过业务处理将数据封装在HTTP响应中发送回前端。前端收到响应后,解析数据并动态渲染到用户界面。采用的技术有 jQuery,DAO,elasticsearch,Flex布局等。为适应业务的变更,每一业务模块均有专门的接口及实现类。 2、我在其中主要负责支付模块、弹窗模块、积分兑换套餐、后台数据可视化,以及异常日志报警系统等板块内容。具体业务内容不便透露,请看图片。 3、曾经遇到过MySQL资源死锁问题,当时后台日志报警系统出现连续高危报警,一看是业务接口响应超时,经定位原来,由于多线程查询,其中一条出现MySQL慢查询,导致事务未被释放进而资源死锁。当时公司内部也没有什么好办法需要自己独立研究,为了模拟线上环境,关闭了自动提交模拟死锁情景,希望从linux进程的角度着手,监控进程日志,进而及时关闭异常进程,以免影响其他进程查询,但是这种方法的缺点是依然无法释放MySQL事务资源。后面经过仔细调研,多措并举,一方面设置合理的事务超时时间,并实施事务重试逻辑,以便在超时时自动重新尝试执行事务;另一方面,合理地为查询条件字段建立索引,为此我们优化了索引结构,定期监控数据库的死锁日志;最后优化了SQL查询语句,取缔了较为复杂的原生SQL,使用DAO判断,最终彻底解决了业务死锁问题。
1、本项目使用前后端分离技术,使用Vue.js前端框架基于Pjax技术发起HTTP请求,向后端服务器请求数据。后端服务器接收请求,使用Yii框架的DAO获取所需数据后,经过业务处理将数据封装在HTTP响应中发送回前端。前端收到响应后,解析数据并动态渲染到用户界面。采用的技术有 jQuery,DAO,elasticsearch,Flex布局等。为适应业务的变更,每一业务模块均有专门的接口及实现类。 2、我在其中主要负责支付模块、弹窗模块、积分兑换套餐、后台数据可视化,以及异常日志报警系统等板块内容。具体业务内容不便透露,请看图片。 3、曾经遇到过MySQL资源死锁问题,当时后台日志报警系统出现连续高危报警,一看是业务接口响应超时,经定位原来,由于多线程查询,其中一条出现MySQL慢查询,导致事务未被释放进而资源死锁。当时公司内部也没有什么好办法需要自己独立研究,为了模拟线上环境,关闭了自动提交模拟死锁情景,希望从linux进程的角度着手,监控进程日志,进而及时关闭异常进程,以免影响其他进程查询,但是这种方法的缺点是依然无法释放MySQL事务资源。后面经过仔细调研,多措并举,一方面设置合理的事务超时时间,并实施事务重试逻辑,以便在超时时自动重新尝试执行事务;另一方面,合理地为查询条件字段建立索引,为此我们优化了索引结构,定期监控数据库的死锁日志;最后优化了SQL查询语句,取缔了较为复杂的原生SQL,使用DAO判断,最终彻底解决了业务死锁问题。
1、本项目使用前后端分离技术,使用Vue.js前端框架基于Pjax技术发起HTTP请求,向后端服务器请求数据。后端服务器接收请求,使用Yii框架的DAO获取所需数据后,经过业务处理将数据封装在HTTP响应中发送回前端。前端收到响应后,解析数据并动态渲染到用户界面。采用的技术有 jQuery,DAO,elasticsearch,Flex布局等。为适应业务的变更,每一业务模块均有专门的接口及实现类。 2、我在其中主要负责支付模块、弹窗模块、积分兑换套餐、后台数据可视化,以及异常日志报警系统等板块内容。具体业务内容不便透露,请看图片。 3、曾经遇到过MySQL资源死锁问题,当时后台日志报警系统出现连续高危报警,一看是业务接口响应超时,经定位原来,由于多线程查询,其中一条出现MySQL慢查询,导致事务未被释放进而资源死锁。当时公司内部也没有什么好办法需要自己独立研究,为了模拟线上环境,关闭了自动提交模拟死锁情景,希望从linux进程的角度着手,监控进程日志,进而及时关闭异常进程,以免影响其他进程查询,但是这种方法的缺点是依然无法释放MySQL事务资源。后面经过仔细调研,多措并举,一方面设置合理的事务超时时间,并实施事务重试逻辑,以便在超时时自动重新尝试执行事务;另一方面,合理地为查询条件字段建立索引,为此我们优化了索引结构,定期监控数据库的死锁日志;最后优化了SQL查询语句,取缔了较为复杂的原生SQL,使用DAO判断,最终彻底解决了业务死锁问题。