ID:247058

Gyhj

java后端开发

  • 公司信息:
  • 广州聆科网络技术有限公司
  • 工作经验:
  • 2年
  • 兼职日薪:
  • 700元/8小时
  • 兼职时间:
  • 可工作日驻场(自由职业原因)
  • 所在区域:
  • 武汉
  • 全区

技术能力

熟悉 JavaSE,对 JVM、IO、多线程、并发等有深入理解,有良好的编程习惯,熟悉常用的JavaAPI,包括I/O(NIO)、Socket、JDBC、XML、集合框架、多线程(并发编程)、反射等。

掌握 ConurrentHashMap/HashMap、Arraylist、LinkedList、LinkedHashMap 集合框架源码底层实现

 掌握 JVM 内存模型,堆、栈、本地方法栈、方法区(元空间)、程序计数器以及 GC 机制

掌握 SpringMVC、SpringBoot、Mybatis、Mybatis-plus 等后台相关技术和开源框架

 掌握 SpringCloud 框架及其相关组件,熟悉分布式系统的设计和应用,熟悉微服务架构设计

 掌握 MySQL 数据库,具有复杂 sql 的编写能力,熟悉 sql 调优,了解数据库存储和索引原理

 熟练掌握 Redis 缓存中间件,熟悉 Redis 的基本数据类型及其原理,熟悉 RedisSon 分布式锁

 熟练掌握 RocketMQ 消息中间件,分布式任务调度中间件 xxl-job,了解消息丢失和重复消费的解决方法

 掌握 Nginx、Tomcat 等应用服务器的部署和配置,熟悉 Nginx 的负载均衡和反向代理及 Nginx 配置文件

 掌握 TCP/IP、HTTP/HTTPS、TTPS 协议,熟悉各个协议的关系与区别,熟悉 HTTP 常见状态码

掌握 Elasticsearch 倒排索引,可实现资源导入、搜索引擎功能,手写 ES 的全量导入和增量导入

 掌握 Restful 风格 API 的设计,熟悉 Get/Post/Delete/Put 等请求方法,熟悉使用接口开发和调试工具

 掌握 阿里的支付接口调用及短信发送流程,熟悉微信小程序、公众号的接口调用和开发流程,快速对接

 掌握 Git 版本管理,熟悉 add、commit、push、pull、checkout、fetch/clone 等常用指令

掌握 Java 中的各种锁,乐观锁(CAS)、悲观锁(synchronized)、自旋锁、可重入锁、死锁等

 掌握 Linux 常用命令,jps、ps-ef、tail、chmod

项目经验

项目名称 聆科淘淘市
技术选型
SpringBoot+SpringCloud+alibaba+Mybatis-plus+Mysql+Redis+Elasticsearh
+OOS+RocketMq+ Security+Alipay+WeChat+Linux+Docker
项目简介 掏淘市是以 B2C 模式运营的在线商城,总览企业及公司产品于一体,主打自主研发
品牌以推广的互联网化新商城。系统采用的微服务架构模式,以功能模块划分,前
台系统主要功能包括用户注册和登录,商品浏览,商品收藏,评论展示,我的订单,
网站导航,我的购物车,订单支付,个人中心,会员系统等系统。后台主要功能包
括用户信息管理,商品管理,商品分类管理,消息管理,订单管理,商品评价管理,
日志系统管理,服务监控系统,报表系统,库存系统等。
技术要点 1. 采用微服务(SpringCloud+alibaba)技术框架搭建和开发。
2. 接口采用 RestFul 风格设计并且使用 SwaggerUI 做接口文档。
3. 采用 Mysql5.7 做为项目数据库,搭建 Mysql 主从集群,在项目中使用自定义注
解+AOP 完成读写分离的操作。
4. 搭建 Redis-cluster 作为项目的缓存中间件。
5. 使用 Nacos 集群搭建注册中心,完成服务的注册和发现,并且作为项目的配置文
件中心,使得服务和配置文件集中化管理和复用。
6. 采用 Gateway 结合注册中心完成请求动态路由,使用全局过滤器完成 token 的
校验 ip 黑名单,结合 Redis 做限流操作。
7. 在项目授权中使用 Security 整合 Redis 共享 session 的方案对前段授权,抽象
common 模块完成资源服务器的统一解析工作
8. 使用 spring-admin 作为服务监控组件,实时监控服务状态,当服务出现问题,
可以邮件发送给维护人员,及时解决问题
工作经历
公司名称 武汉讯图科技有限公司
工作时间 2019-03 ~ 2021-05
• 参与软件系统的需求分析、负责模块功能的编写及优化解决研发中问题及难点。
• 参与产品讨论,业务逻辑实现,根据项目任务计划按时完成软件编码和单元测试工作。
• 编写开发设计文档,与其他部门人员沟通,协调工作,确保项目进度。
项目经验
9. 使用递归加载菜单,并且将菜单数据存入 Redis,提高用户体验
10. 前后端分离方式,前端封装权限验证组件,后端接口采用权限注解的方式完成
按钮的显示和隐藏,以及确保用户在不通过按钮的情况下,直接访问后端接口
11. 服务间采用 OpenFeign+Sentinel 完成远程调用和熔断方案
12. 设置 Feign 的拦截器完成各种场景下 token 的传递机制,保证服务接口安全。
13. 完成商品分类,商品属性规格,商品标签,商品评论等业务功能。
14. 处理 sku 和 spu 的以及属性值等关系,完成商品的新增上架功能。
15. 采用 Elasticseach 做为项目搜索引擎,完成模糊查询,分页,排序,高亮等复
杂查询。
16. 前台商城采用微信小程序的方式,先通过 wx.login 获取 code 在通过服务器发
送请求获取 openId,并且整合 Security 完成微信小程序和后端的交互凭证功能。
17. 完成用户收藏和取消商品的业务,完成用户新增收货地址以及修改默认收货地
址等业务
18. 搭建 message-service 消息模块,完成项目中消息的处理,整合阿里大于完成
短信发送功能,结合微信公众平台完成微信消息的推送功能,并且持久化到数据库
19. 独立完成购物车模块,实现多租户多店铺添加购物车,以及购物车商品回显的
功能
20. 编写 order-service 订单模块业务,使用雪花算法生成全局唯一订单号,完成从
商品以及购物车的订单确认
21. 在用户下单时清空购物车,远程调用扣减数据商品库存,通过 mq 修改 es 中的
库存,写订单表,同时写延迟队列
22. 采用 seata 分布式事物框架,处理项目中的分布式问题
23. 采用延迟队列完成用户下单后超时未支付,商品库存回滚等功能
24. 集成微信支付,完成用户下单后拉起微信支付功能
项目总结
难点:分布式项目中,彼此数据不共享,授权和身份认证传递困难。
解决方案:使用 Security 作为安全框架,通过 Redis 实现共享 Session,完成身份
信息共享,在服务与服务间,在发起方使用拦截器实现 Token 传递,在接收端使用
Filter 完成 Token 校验。
难点:在订单模

信用行为

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

发布任务

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

微信接收人才推送

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

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