ID:354438

月月小

高级JAVA开发

  • 公司信息:
  • 中软国际
  • 工作经验:
  • 2年
  • 兼职日薪:
  • 800元/8小时
  • 兼职时间:
  • 下班后
  • 周六
  • 周日
  • 可工作日远程
  • 可工作日驻场(离职原因)
  • 可工作日驻场(自由职业原因)
  • 所在区域:
  • 武汉
  • 全区

技术能力

多维查询数据平台德鲁伊 • 多线程futureTask fork-join 自定义线程池 • fru内存管理淘汰算法 • springioc单例多例 springaop • springboot springCloud 本人使用多线程futureTask以及fork-join 将原来项目的查询性能提升1.5倍多。
fork-join和futureTask实现多线程并行查询。

永旺是日本的一家跨国电商公司,我做的永旺在中国的一个B2C项目,有参与优惠券系统,购物车系统、订单系统的架构设计指导工作。
电商系统涉及到3流,信息流,资金流,物流。而订单系统作为中枢将三者有机的结合起来。
永旺中国项目用到技术有
1、基于Lucene的elasticSearch,用ik分词器对中文进行灵活分词,千万级以上数据可以对关键词进行灵活的关联查询,数据快,并有crud的基本操作,数据统计功能,并利用阿里的框架和rocketMq监控mysql数据库数据的变化,并同步到es中去;
2、单点登录系统,由于公司有多个域名,用到了单点登录系统,一个系统登录了,同一个会话下,其他系统不用登录了,直接是登录状态。因为springsession只能解决父子域名的session共享问题,不能解决不同域名之间session共享问题。
3、rocketMq实现系统间解耦,让次要系统不会影响核心系统的性能,并且能够实现顺序消费。
技术细节:保证消息不丢失,publisher的两个回调(confirmCallback、returnCallback)和consumer的ack确认,ack的自动确认会让消息丢失,如果设置成手动确认ack,就可以保证消息不丢失;
4、redis共享缓存:c端系统秒杀高并发场景,缓存击穿,缓存雪崩,场景的运用熟练,会灵活运用redis缓存减轻数据库访问压力。
5、购物车的设计逻辑,用户在没登录状态下,可以在浏览器选择商品添加到临时购物车,此时系统会给用户分配一个临时session,过期时间为一个月,当用户真正登录之后,就要把临时购物车的商品加入到用户购物车,临时购物车删除商品。
5、订单分为实物订单和虚拟订单。正常的网购步骤:订单生成->支付订单->卖家发货->确认收货->交易成功,每个步骤背后,订单在多系统之间交互流转。
6、库存锁定之后,支付超时,库存解除锁定。
7、退货逻辑以及售后处理。
8、创建订单要做好幂等性处理,使用的是给订单对象加一个防重令牌token。Token 获取、比较和删除必须是原子性。
9、订单服务feign远程调用购物车微服务时,出现丢失请求头参数问题,登录session丢失,所以要重写feign请求拦截器。
10、对于需要快速返回的请求,后台采用异步任务CompletableFuture结合线程池的方式,性能上比常规串行有提升。
11、异步任务出现了多线程远程feign调用会出现ThreadLocal无法共享request信息,解决方法是在父线程进来的时候,给子线程RequestContextHolder设置父线程的requestAttributes。
12、分布式定时任务解决的问题:由于同样的服务会部署多个节点,多个节点的定时任务代码可能同时启动。将同样的事情做了多次使用分布式锁。任务拆分并发执行,使用 ElasticJob。
13、秒杀的8个手段:服务单一职责独立部署,秒杀服务即使自己扛不住压力,挂掉,不要影响别的服务;秒杀链接加密,防止恶意攻击和连接暴露,加入随机码机制;库存预热和快速扣减,信号量控制进来的秒杀请求;Nginx做好动静分离;恶意请求拦截;流量错峰;限流、熔断、降级;队列削峰。
14、sentinel的限流,熔断,降级保证服务集群稳定性。
15、Sleuth链路追踪可以帮助快速定位那个微服务出现了问题。
16、nacos完美兼容了acp理论的要求,同时作为注册中心和配置中心对于分布式一致性的满足提供了完善的方案。
17、分布式事务,熟悉cap的raft算法原理,熟练使用Seata事务

项目经验

平安证券集中运营平台下单开户流程的开发,前段是把easyui封装的kui框架,阿里sea.js把JS模块化处理,前段的mvc采用的是backbone,流程用activity流程框架,对接的是c++集中结算系统。控制层是springMVC,持久层框架是mybatis,项目版本管理用git(sourceTree工具辅助),项目依赖管理是maven。有项目版本控制管理,代码合并管理,敏捷开发管理的经验。

平安银行人员管理系统,角色权限管理,机构树,用的springmvc,vue.js,mybatis,  hive,oracle,
的框架。

案例展示

  • stock-web-crawler

    stock-web-crawler

    外盘,内盘的api调用以及爬虫系统,数据分析,主力资金分析系统,龙虎榜同统计系统,港美股A股咨询系统

  • 谷粒商城人人管理系统

    谷粒商城人人管理系统

    gulimall(谷粒商城) 项目是一套电商项目,包括前台商城系统以及后台管理系统,基于 SpringCloud + SpringCloudAlibaba + MyBatis-Plus实现,采用 Docker 容器化部署。前台商城系统包括:用户登录、注册、商品搜索、商品详情、购物

查看案例列表(含更多 0 个案例)

信用行为

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

发布任务

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

微信接收人才推送

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

接收人才推送
联系聘用方端客服
联系聘用方端客服