ID:242830

leo

Java开发组长

  • 公司信息:
  • 江苏千米网络科技有限公司
  • 工作经验:
  • 4年
  • 兼职日薪:
  • 600元/8小时
  • 兼职时间:
  • 下班后
  • 周六
  • 周日
  • 可工作日远程
  • 所在区域:
  • 上海
  • 浦东

技术能力

1.Java基础知识掌握牢固,能运用所学的知识来完成项目。
2.熟悉使用内存数据库redis。
3.熟悉java中的JVM和了解Java中的GC机制
4.熟练使用mysql数据库,对mysql 原理及优化有一定了解;
5.掌握spring+springmvc+mybatis等Javaweb开发框架。
6.熟练使用项目版本管理工具git,maven,根据开发规范完成编码,测试和相关文档。
7.了解react,react native等前端框架;
8.熟悉Java中的多线程和并发操作,对多线程开发有一定的理解。
9.熟练使用idea,webstorm,MyEclipse,Xcode, Android Studio,微信开发者工具等项目编译软件

项目经验

宁波得力集团电商项目
1.项目描述:
本项目是一套基于 spring cloud 开发的微服务电商系统。主要涉及订单下单、支付系统开发及秒杀营销功能开发。
2.项目职责:
● 授信支付功能:这个功能是面向像学校,政府机构这些消费者所增加的一种先货后款的支付方式。在定义授信下单接口的时候,使用了Redis分布式事务锁来保证订单不会被用户重复提交。由于用户在提交订单的时候存在网络原因或者其他问题的时候,会去重复点击提交订单的按钮,这样就有可能导致用户下单时一个请求还没有Response,另一个请求就已经在进行中,导致脏数据的产生(虽然前端有防抖函数可以限制一层)。在做这个业务的时候,难点是何时给对象加锁,一开始我是在方法体内执行时加锁,执行完解锁。但是这个并不符合实际场景。因此我想到了使用spring的@aspect,定义一个handler类去实现一个切面,采用注解的形式放在调用方的头部,在调用方执行之前就对传入的对象加锁,在调用方Response后才对对象解锁,完成任务重复提交问题的解决。
● 秒杀功能主要通过 RabbitMq+Redis 来实现,用户发起抢购时,mq 异步发送一条抢购消息。消费者端接收到抢购请求后,通过 redis 分布式锁锁住对应商品,如果库存满足请求,则为该请求设置一个抢购资格,存到 redis 中。同时通过 mq 生产者发布一条删除该抢购资格消息到延时队列,处理还库存操作,这样做主要是删除拥有抢购资格,但是下单未支付的用户。如果用户正常下单支付,支付完则从 redis 中删除该用户的抢购资格。秒杀功能的实现思路主要还是将多个并发的请求通过mq 转化为有序的顺序请求,降低锁的争抢。同时为了避免瞬间请求太高,导致整个服务不可用。
● 对接客户的ERP系统,采用xxl-job定时任务,同步订单信息,推送订单支付单和退款单,对接物流信息推送,发票开具/冲红,根据客户提供的计算公式定期账期结算,推送给ERP

信用行为

  • 接单
    0
  • 评价
    0
  • 收藏
    0
微信扫码,建群沟通

发布任务

企业点击发布任务,工程师会在任务下报名,招聘专员也会在1小时内与您联系,1小时内精准确定人才

微信接收人才推送

关注猿急送微信平台,接收实时人才推送

接收人才推送
联系需求方端客服
联系需求方端客服