一、特性 幂等值: 一个任务执行一次和执行n此的效果一样,不因重复执行带来意外 模块化:调用特定的模块,完成特定任务 有Paramiko,PyYAML,Jinja2 (模板语言) 三个关键模块 支持自定义模块 部署简单,基于SSH 支持playbook编排任务 无需代理 Ansible 主要组成部分 ...
分类:
其他好文 时间:
2020-07-25 23:59:27
阅读次数:
127
什么样的HTTP方法是安全的? 如果一个方法不会改变资源的表述,那么这个方法就被认为是安全的。 例如 HTTP GET 和 HTTP HEAD 就被认为是安全的,但需要注意的是,这并不意味着执行GET请求就不会引起其它的资源操作,在表面之下,你的服务层有可能会对其它相关的一些表的数据做出修改,但是本 ...
1.同步锁(单线程,集群可能会失效) 2.分布式锁如redis(实现复杂) 2.业务字段加唯一约束(简单) 3.令牌表+唯一约束(简单推荐) 4.mysql的insert ignore或者on duplicate key update(简单) 5.共享锁+普通索引(简单) 6.利用MQ或者Redis ...
分类:
其他好文 时间:
2020-07-23 22:59:17
阅读次数:
97
目录 阐述背景 Leaf snowflake 模式介绍 Leaf segment 模式介绍 Leaf 改造支持RPC 阐述背景 不吹嘘,不夸张,项目中用到ID生成的场景确实挺多。比如业务要做幂等的时候,如果没有合适的业务字段去做唯一标识,那就需要单独生成一个唯一的标识,这个场景相信大家不陌生。 很多 ...
分类:
其他好文 时间:
2020-07-22 15:43:39
阅读次数:
79
目录 阐述背景 Leaf snowflake 模式介绍 Leaf segment 模式介绍 Leaf 改造支持 RPC 阐述背景 不吹嘘,不夸张,项目中用到 ID 生成的场景确实挺多。比如业务要做幂等的时候,如果没有合适的业务字段去做唯一标识,那就需要单独生成一个唯一的标识,这个场景相信大家不陌生。 ...
分类:
其他好文 时间:
2020-07-22 15:37:02
阅读次数:
69
1.AOP + Redis 解决重复提交 重复提交是我们日常中比较频繁发生的事情,用户可以点击一个按钮多次,如未加相应的处理,就会请求后台多次,每次请求对后台服务来说都是一次性能的消耗,有些非幂等接口更是会有很多的业务问题,为此解决重复提交是一件非常重要的事情。当然解决重复提交也有很多种方法,如接口 ...
分类:
编程语言 时间:
2020-07-21 23:21:18
阅读次数:
109
接口设计需要考虑哪些方面 接口的命名。 请求参数。 支持的协议。 TPS、并发数、响应时长。 数据存储。DB选型、缓存选型。 是否需要依赖于第三方。 接口是否拆分。 接口是否需要幂等。 防刷。 接口限流、降级。 负载均衡器支持。 如何部署。 是否需要服务治理。 是否存在单点。 接口是否资源包、预加载 ...
分类:
其他好文 时间:
2020-07-11 09:42:42
阅读次数:
95
【本文完善中...】 无论是http接口,还是rpc接口,防重复提交(接口防重)都是绕不过的话题。 重复提交与幂等,既有区别,又有联系。幂等的意思是,对资源的一次请求与多次请求,作用是相同的。HTTP的POST方法是非幂等的。如果程序处理不好,重复提交会导致非幂等,引起系统数据故障。防重复提交,要通 ...
分类:
其他好文 时间:
2020-07-06 19:55:13
阅读次数:
86
MQ主要流程 解耦,异步,消峰 其中目的地主要为队列或者主题 队列点对点 消息的生产者 或者 这时消息的生产者名字已经出来 并且入队的数量变成了3 上述完成的也就是这部分 消息的消费者 前四步大同小异 这里需要和消息发送者的类型一致,所以需要强转一下 其中等待接收可以设置为一直等或者设置时长 最后再 ...
分类:
其他好文 时间:
2020-07-06 12:33:08
阅读次数:
64
面试官心理分析 面试官问了你一堆 dubbo 是怎么玩儿的,你会玩儿 dubbo 就可以把单块系统弄成分布式系统,然后分布式之后接踵而来的就是一堆问题,最大的问题就是分布式事务、接口幂等性、分布式锁,还有最后一个就是分布式 session。 当然了,分布式系统中的问题何止这么一点,非常之多,复杂度很 ...
分类:
其他好文 时间:
2020-07-05 13:18:21
阅读次数:
69