美文网首页
开放型-面试题20200521

开放型-面试题20200521

作者: RainySpring | 来源:发表于2020-05-20 23:59 被阅读0次

保持思考,保持清醒

1、Git的分支你们是怎么管理的?
2、接口保证幂等性是基本的要求,那么幂等性你们是怎么做的?
3、你们有用@Transactional来控制事务是吧,那么能不能说出一些事务不生效的场景?

  1. Git的分支你们是怎么管理的?
  • 首先要阐述Git是什么,为什么我们开发需要引入git
    -- 项目版本管理工具,版本的控制体现在一个个分支上的开发
  • 阐述你们开发分支的管理流程
    -- 不同环境方面(固定几种环境主分支ret、uat、sit、dev)
    -- 根据cq单或者人员名称去拉取基于某种环境主分支的代码,创建一个新的分支,在这个分支上开发
    -- 开发人员没有merge主分支的权限,commit备注规范等
  1. 接口保证幂等性是基本的要求,那么幂等性你们是怎么做的?
    -- 首先阐述什么是幂等性,对其理解
    幂等就是一个操作,不论执行多少次,产生的效果和返回的结果都是一样的。eg. getUserName()
    所以说并不是每个接口都要考虑它的幂等性问题,因为查询和删除就具备天然的幂等性,查询多次和查询一次结果是一样(除非有数据表更新);删除一次和删除多次效果是一样的(只是返回条数不一样而已),只有insert、update或者一些复合操作要考虑幂等性问题。
    -- 结合你们业务场景来聊
    1、短信推送,第三方重复推送问题(创建唯一索引)
    考虑推送记录表的唯一性数据,添加唯一索引或者组合索引来限制数据的唯一性,一次推送和重复推送都不会产生脏数据
    2、前端控制重复提交源头(token机制:防止页面重复提交)
    提交时创建一个随机数token,存放到session中,提交给服务器,
    服务器端第一次验证相同过后,会将session中的Token值更新下,若用户重复提交,第二次的验证判断将失败,因为用户提交的表单中的Token没变,但服务器端session中Token已经改变了。
    3、select + insert
    并发不高的后台系统,或者一些任务JOB,为了支持幂等,支持重复执行,简单的处理方法是,先查询下一些关键数据,判断是否已经执行过,在进行业务处理,就可以了。注意:核心高并发流程不要用这种方法;
    4、分布式锁
    token 机制处理 接口幂等性问题,这种方式一个问题对代码的入侵比较多,相对书写代码来讲就比较麻烦,可以使用 redis 分布式锁机制解决接口幂等性问题:
    https://www.jianshu.com/p/fbedd907a48a#!/xh

5、状态机幂等
这种方法适合在有状态机流转的情况下,比如就会订单的创建和付款,订单的付款肯定是在之前,这时我们可以通过在设计状态字段时,使用int类型,并且通过值类型的大小来做幂等,比如订单的创建为0,付款成功为100,付款失败为99

https://blog.csdn.net/uxiad7442kmy1x86dtm3/article/details/88968532

6、外提供接口的api如何保证幂等
对外提供接口为了支持幂等调用,接口有两个字段必须传,一个是来源source,一个是来源方序列号seq,这个两个字段在提供方系统里面做联合唯一索引,这样当第三方调用时,先在本方系统里面查询一下,是否已经处理过,返回相应处理结果;没有处理过,进行相应处理,返回结果。

  1. 你们有用@Transactional来控制事务是吧,那么能不能说出一些事务不生效的场景?
    https://www.cnblogs.com/codingmengmeng/p/12111392.html

相关文章

  • 开放型-面试题20200521

    保持思考,保持清醒 1、Git的分支你们是怎么管理的?2、接口保证幂等性是基本的要求,那么幂等性你们是怎么做的?3...

  • 20200521

    《阿米巴经营》——培养领导人 培养人,持续培养领导人,这是任何一家企业要持续发展的前提,这也是很多年轻的企业家和管...

  • 20200521

    跟敏视频,好久没有联络了,再聊也开心 小云来家里约,妙妙和小太阳第一次见面,想象过几个月我们小太阳会走路会讲话的样...

  • 20200521

    我的目标 快步行走半小时 每日练习画画,写字半张 今日完成 ✅录制本周课程 ✅听新老师的课,新老师的课虽然没有达到...

  • 20200521

    冯进平 公司:上海晋名实业有限公司 【日精进打卡第793天】 六项精进221期努力一组学员 六项精进410期乐观三...

  • 20200521

    一.学习与实践 1.付出不亚于任何人的努力 2.要谦虚,不要骄傲 3.要每天反省 4.活着,就要感谢 5.积善行,...

  • 20200521

    今天跟从武汉的客人聊了下天。跟这位客人也算渊源深厚。在上个月开始,他就一直在微信上询问,如果是武汉人来广州这边出差...

  • 20200521

  • 20200521

    最近发生了一些小事: 周六,高中战友来家吃饭,她考上了北大的研究生; 周日,毕业答辩; 周二,高中室友兼好友约散步...

  • 20200521

    走着走着 雾散了 风缓了 雨停了 阳光透过厚厚的云层出来了 我们还在路上 一切都刚刚好

网友评论

      本文标题:开放型-面试题20200521

      本文链接:https://www.haomeiwen.com/subject/txkaohtx.html