个人介绍
我是程序员客栈的IZY,一名java开发工程师; 我毕业于沈阳工业大学,担任过杭州微蚁科技有限公司的java开发工程师岗位; 负责过义企拍App,销售管理系统,商户数据中心等相关业务的开发;
^_^ ^_^ ^_^ ^_^ ^_^ ^_^ ^_^ ^_^ ^_^ ^_^ ^_^ ^_^ ^_^
我所掌握的技能: 熟练使用springBoot、springMvc、Mybatis、Redis、dubbo、RabbitMq、ElasticSearch 等微服务框架技术 ;
熟练使用 MySql ,具备优化 sql 的能力
对 jvm 原理有一定了解,能够利用内存诊断工具对线上问题进行排查并解决
熟练掌握 java 并发编程,对其底层原理有一定了解
熟练掌握 netty 的基本使用,并在项目中使用 websocket 进行开发
熟练使用 nginx ,对线上 nginx 配置文件进行配置
熟悉常用的 linux 命令,负责服务器的维护
^_^ ^_^ ^_^ ^_^ ^_^ ^_^ ^_^ ^_^ ^_^ ^_^ ^_^ ^_^ ^_^
如果我能帮上您的忙,请点击“立即预约”或“发布需求”!
工作经历
2019-12-01 -至今杭州微蚁科技有限公司Java开发工程师
一、公司业务简介 义采宝是公司独立开发并运营的App,它是浙江中国小商品城集团重点打造的义乌小商品在线批发APP,专注为采购商提供一手工厂货源,为小商品批发商提供全方位的贸易SaaS工具。义采宝,手机上的义乌中国小商品城!*发求购,接生意-极速找货,快人一步;10秒报价,一键求购。*在线沟通-实时在线,高效沟通;图片语音,即时传递。*清库存,找爆款-卖热销清存货,一键推广;抢爆款捡便宜,轻松找货。*身份切换-既是供应商,又是采购商;两种身份,随意切换。所有市场认证的商铺,均通过义乌小商品城官方实体认证。 二、工作内容 ● 主要负责公司app和pc网站的开发与维护。 ● 与产品经理沟通需求; ● 相关接口文档的编写。 ● 完成后端业务开发,以及线上服务器的维护; ● 前后端配合联调; ● 完成测试过程中的BUG修改; ● 负责项目的上线、部署、监控
教育经历
2016-09-01 - 2020-06-15沈阳工业大学计算机科学与技术本科
获奖情况: 中共党员 2020年沈阳工业大学校优秀毕业生。 2018-2019年校三好学生、校一等奖学金、辽宁省新媒体竞赛二等奖。 2017-2018年校一等奖学金。 2016-2017年校三好学生标兵、校三好学生、校一等奖学金。
技能
一、项目描述: 销售管理系统是公司销售人员提出的需求,为了销售人员更好的管理客户资源,对客户进行更好的追踪。该系统主要分为两 个模块,一个是公海,一个是私库。首先公海里存放的都是未付费客户,私库是专属销售人员自己的,销售人员可以将公海 里的客户转到自己的私库方便追踪。公海中主要功能有查看客户详情,根据*号等条件查询客户,转入私库等功能。这样稍微值得注意的就是转入私库需要考虑线程安全问题,因为可能会出现多个销售人员同时将一个客户转入自己私库的情况, 为此在转入私库的时候,我使用了redis实现的分布式锁,它的key值是固定前缀+客户ID,基于redis单线程的特性,就可以保 证同一时刻只会有一个销售人员会成功调用转入私库的接口。对于私库模块,主要功能是添加客户拜访记录,另外每天都要 定时任务,会根据客户意向将一些私库里到期的客户释放到公海,另外店铺创建后会发送MQ消息,监听到创建店铺的消息后 回将该店铺放入公海中,同时用户付费会也会发送MQ消息,监听到消息后,如果该客户存在于公海中,那么就将该客户移除公海 二、实现思路 主要使用的技术是redis + rabbitMq, 一个是转入私库的时候考虑线程安全的问题,加上redis实现的分布式锁,另一个就是监听 MQ消息,更改客户的状态
一、项目描述: 商户数据中心主要为商户提供一个可视化数据分析的功能,它按照时间段统计商铺浏览量、商铺访客量、店铺产品总浏览 量、店铺产品总访客量、下单数、下单人数、支付订单数、支付人数 、支付金额,以及买家行为等各项数据指标,以及按天 为时间单位对支付金额、支付人数、产品浏览量、产品访客量指标进行分组统计,并且将本月数据指标与上月进行对比,将 本周数据指标与上周进行对比,最后提供可视化图表。让商户的自己的店铺经营情况一目了然,同时也可以了解买家对自己 店铺的哪些产品感兴趣。 二、 实现思路 对于下单数、下单人数、支付订单数、支付人数 、支付金额这些和订单相关的数据指标,由于在elasticSearch中原本有订单索 引,因此我们可以先使用商铺ID和所选时间段两个过滤条件已经对索引文档进行过滤,然后对过滤结果进行聚合分析。如 terms聚合、sum聚合、filter聚合、cardinality聚合 对于商铺浏览量、商铺访客量、店铺产品总浏览量、店铺产品总访客量这些数据指标,我们先对买家的行为进行记录,对于 买家的不同行为赋予不同的类型,最后记录买家ID、所访问商铺ID、所访问产品ID、行为类型、访问时间等关键信息、保存 到mysql,并同步到elasticSearch中,在elasticSearch中进行聚合分析。
一、项目描述: 义企拍项目是主要是为义乌小商品城集团开发的一套商铺摊位拍卖系统,委托方将需要转让或出租的商铺发布到平台,平台 在审核通过后将该竞拍商铺发布出来,竞拍方需缴纳保证金后方可参与竞拍,竞拍结束后,出价最高者获拍。 二、负责模块 1、在这个系统中我负责支付模块,订单模块,用户模块,以及后台管理模块的设计与开发。对于支付模块,由于是商铺拍卖, 缴纳的保证金一般都是几十万,那么使用在线小额支付明显是不能满足业务需求的,为此我们接入了招商银行的云直联系 统,通过大额转账的方式来满足业务需求。在对接招商银行云直联系统时,首先根据接口文档以及示例demo先联调成功,然后在进行优化。我采用的模板设计模式,把对参数的加解密,验签,以及请求调用的过程都在抽象父类中固定,只抛出一个 设置业务请求参数的钩子方法,为此,我们想实现哪些接口,只需继承这个抽象父类,在业务层面封装好请求参数,然后设 置进去即可,无需关注对底层的调用。 2、对于订单模块,主要是考虑如何保证创建订单的幂等性,对此我的实现是采用令牌机制,在构建该订单时在接口里返回一个 该用户对该竞拍品的token,客户端在调用创建订单接口时,必须将该token带上,才有资格去创建订单。服务端在拿到token 后,先对token进行验证,验证通过的前提下,去redis中把对应的token删除,删除成功的线程才真正有资格去创建订单!!! 3、其他我觉得比较重要的就是在用户出价的时候,进行websocket推送,让页面自动刷新,这样停留在这个页面的其他用户就可以实时知道当前价格啦。我的实现让前端在用户进入这个页面的时候就去与服务端建立websocket连接,同时需要携带一个 请求参数,就是拍卖物ID,因为我需要知道用户当前在哪个拍卖详情页,服务端在建立连接成功后,将建立的channel作为key,拍卖物id作为value,放入map中。如果有用户出价,我只需将map中value值是出价的拍卖物id的key找出来,调用相应的 方法将数据写入channel中,前端收到消息后会去请求接口刷新。