![](https://img-blog.csdnimg.cn/20201014180756922.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
项目实战学习
文章平均质量分 85
武汉小喽啰
我就是我,颜色一样的焰火。。。。。。
展开
-
幂等性
1. 什么是幂等性 接口幂等性就是用户对于同一操作发起的一次请求或者多次请求的结果是一致的,不会因为多次点击而产生副作用。例如;支付场景,用户购买了商品支付扣款成功,但是返回结果的时候网络异常,此时钱已经扣了,用户再次点击按钮,此时会进行第二次扣款,返回结果成功,用户查询余额发现多扣钱了,流水记录也变成了两条,这就没有保证接口的幂等性2. 哪些情况需要防止用户多次点击按钮用户页面回退再次提交微服务相互调用,由于网络问题,导致请求失败,feign出发重试机制其他业务情况3. 什么情..原创 2021-04-08 23:32:39 · 177 阅读 · 0 评论 -
分布式事务——最终一致性的保证
分布式事务可以使用seata实现,但是,对于高并发的场景,使用seata会感觉稍慢,尤其是对一致性要求不那么高的业务完全可以不需要使用seata,这时候,我们可以考虑最终一致性的方案。通过消息队列机制来保证最终一致性,即可。思想:在MQ中新建两个队列,一个死信队列,一个普通队列,让同一个交换机绑定这两个队列,死信队列不处理任何消息,只是用于存放过期的消息,当指定的时间到了,自动路由到普通队列,在某个服务中单独监听这个队列的消息并处理该消息。实现步骤:1. 准备工作1)引入MQ<!原创 2021-04-01 21:50:03 · 1091 阅读 · 0 评论 -
高并发下的开发2——分布式锁Redisson
Redisson就是一个redis的java客户端。参看文档:https://github.com/redisson/redisson/wiki1. 整合步骤1.1 引入依赖<!-- https://mvnrepository.com/artifact/org.redisson/redisson --><dependency> <groupId>org.redisson</groupId> <artifactId>原创 2021-02-16 17:30:23 · 213 阅读 · 0 评论 -
性能压测
1. 性能指标1)响应时间(Response Time:RT):响应时间指用户从客户端发起一个请求开始到客户端接收到从服务器端返回的响应结束,整个过程所耗费的时间2)HPS(hits per second):每秒点击次数,单位是次/秒3)TPS(Transaction per second);系统每秒处理交易数,单位是笔/秒4)QPS(Query per second):系统每秒处理查询次数,单位是次/秒。 对于互联网业务中,如果某些业务有且仅有一个请求连接,那么TPS=Q...原创 2021-02-15 21:09:34 · 450 阅读 · 0 评论 -
高并发下的开发1
1. 高并发下缓存失效问题1.1 缓存穿透1)概念指查询一个一定不存在的数据,由于缓存是不命中,将去查询数据库,但是数据库也无此记录,我们没有将这次查询的null写入缓存,这将导致这个不存在的数据每次请求都要到存储层去查询,失去了缓存的意义2) 风险利用不存在的数据进行攻击,数据库瞬时压力增大,最终导致崩溃3)解决方案将null结果缓存,并加入短暂过期时间1.2 缓存雪崩1)概念缓存雪崩是指在我们设置缓存的key采用了相同的过期时间,导致缓存在某一时刻同时失效,请求全原创 2021-02-15 21:08:05 · 164 阅读 · 0 评论 -
ERP系统1——前言与环境准备
1. ERP简介 ERP系统是企业资源计划(Enterprise Resource Planning)的简称,是指建立在信息技术的基础上,以系统化的管理思想,为企业决策层以及员工提供决策运行手段的管理平台。 ERP系统集先进信息技术与管理思想于一身,成为现代企业的运行模式,反映时代对企业合理调配资源,最大化的创造社会财富的要求,成为企业在信息时代生存、发展的基石...原创 2019-12-12 22:12:04 · 798 阅读 · 3 评论 -
写在前头
公司的项目不能私下里记录,只能记录一下自己的学习记录了,是一种学习,也是一种积累了! 其实一直都想将自己的学习经历一点一点的都记录下来,总是因为这样或者那样的原因给耽搁了,今年公司任务忒多了些,也都是紧急的需求,需求总是千奇百怪的,接手的项目也是千姿百态,看前任的代码也都是千娇百媚,实在是备受煎熬,一是为了活下去,只能耐着性子做下去,二是,自己确实是很喜欢做开发,...原创 2019-12-04 22:55:33 · 93 阅读 · 0 评论 -
项目那些事儿
1. 复制web项目复制web项目之后,需要做一些修改才行操作步骤:1. 鼠标右键复制之后的项目,选择properties2. 找到Web Project settings3. 修改Context Root的值...原创 2019-10-14 22:59:58 · 94 阅读 · 0 评论 -
java开发中遇到过的一些错误
1.The type javax.servlet.ServletContext cannot be resolved. It is indirectly referenced from required .class files。原因:这是由于缺少了一个servlet-api.jar包所引起的。解决方法:在安装的tomcat下的lib目录里面找到servlet-api.jar包,导入项...原创 2019-11-04 21:38:16 · 354 阅读 · 0 评论