
后端
文章平均质量分 85
dreamer'~
没有梦想的小孩~
越努力,越幸运! 以现在大多数人的努力程度之低,根本轮不到可以拼天赋...
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
由简入繁的高并发系统演进过程
db压力:磁盘IO、网络IO、内存消耗、CPU负载1.添加负载均衡层,将请求均匀打到系统层(系统层采用集群化部署多台机器,扛住初步的并发压力) 添加负载均衡层 2.随着用户量不断增加,系统负载也会随之增加。系统层面,你可以继续通过集群化的方式来扩容,反正前面的负载均衡层会均匀分散流量过去的。但是,这时数据库层面接受的请求量会达到3000/s,这个就有点问题了。因为db的读写并发过高,首先一个问题就是高峰期系统性能可能...转载 2021-11-30 18:47:14 · 292 阅读 · 0 评论 -
IO 多路复用:select/poll/epoll 实现原理及区别
I/O 多路复用:select/poll/epoll 实现原理及区别原创 2023-02-07 22:44:34 · 1079 阅读 · 0 评论 -
一台linux服务器最多能支持多少个TCP连接?(要区分客户端还是服务端)
一台linux服务器最多能支持多少个TCP连接?(要区分客户端还是服务端)原创 2022-12-07 18:07:21 · 5187 阅读 · 2 评论 -
【面试题】海量数据处理:给定a、b两个文件,各存放50亿个url,每个url各占64字节,内存限制是4G,让你找出a、b文件共同的url?
海量数据处理面试题:给定a、b两个文件,各存放50亿个url,每个url各占64字节,内存限制是4G,让你找出a、b文件共同的url?原创 2022-10-17 21:57:19 · 2695 阅读 · 0 评论 -
mq-消息队列的 使用场景、常见问题及解决方法
前言最近mq越来越火,很多公司在用,很多人在用,其重要性不言而喻。但是如果我让你回答下面的这些问题: 我们为什么要用mq? 引入mq会多哪些问题? 如何解决这些问题? 你心中是否有答案了呢?本文将会一一为你解答,这些看似平常却很有意义的问题。1 传统模式有哪些痛点?1.1 痛点1有些复杂的业务系统,一次用户请求可能会同步调用N个系统的接口,需要等待所有的接口都返回了,才能真正的获取执行结果。这种同步接口调用的方式总耗时比较长,非常影响用户的体验,特别是在转载 2022-04-12 15:50:44 · 3082 阅读 · 2 评论 -
彻底搞懂 Cookie、Session、Token...
彻底搞懂 Cookie、Session、Token...转载 2021-12-28 17:10:45 · 563 阅读 · 0 评论 -
如何避免重复提交问题
如何避免重复提交问题(幂等性)如何避免重复提交:1.利用MySQL的唯一索引,若重复insert订单数据会报错。update订单时,使用乐观锁(version比较法)2.通过redis,用orderId作为唯一键,用户在支付一个订单之前,先插入一条支付流水,order_id已经插入成功。系统可以写一个标志到redis中(setorder_idpayed)。下一次重复请求来了,先尝试查key,若已存在说明支付过了。前端侧:1.前端js提交禁止按钮:可以用一些js组件2.重定向页面...转载 2021-12-27 23:23:16 · 622 阅读 · 0 评论 -
分布式场景下的CAP原理
参考大佬文章:分布式理论 —— CAP 定理什么是分区?在分布式系统中,不同的节点分布在不同的子网络中,由于一些特殊的原因,这些子节点之间出现了网络不通的状态,但它们的内部子网络是正常的,从而导致了整个系统的环境被切分成了若干个孤立的区域。这就是分区。(分区:就是分布式集群中的某些节点之间互相访问不通,分隔成了独立的几个节点)三、为什么只能 3 选 2?能不能同时满足这三个条件?假设有一个系统如下:整个系统由两个节点配合组成,之间通...转载 2021-12-07 22:30:03 · 258 阅读 · 0 评论 -
分布式锁及其三种实现方式
参考:什么是分布式锁?实现分布式锁的三种方式 - 刘清政 - 博客园一、使用背景:随着业务发展的需要,原单体单机部署的系统被演化成分布式集群系统后,由于分布式系统多线程、多进程并且分布在不同机器上,这将使原单机部署情况下的并发控制锁策略失效,单纯的应用并不能提供分布式锁的能力。为了解决这个问题就需要一种跨机器的互斥机制来控制共享资源的访问,这就是分布式锁要解决的问题!二、分布式锁应该具备哪些条件在分布式系统环境下,一个方法在同一时间只能被一个机器的一个线程执行; 高可用...转载 2021-12-01 22:41:27 · 282 阅读 · 0 评论 -
悲观锁 & 乐观锁 对比:
参考:知乎大佬文章、什么是乐观锁,什么是悲观锁一、悲观锁介绍:悲观锁(Pessimistic Lock), 顾名思义,就是很悲观,每次去读数据的时候都认为别人会修改,所以每次在持有数据时都会上锁,这样别人想获取资源就会block直到它拿到锁。传统的关系型数据库,如mysql中就用到了很多这种锁机制,比如行锁,表锁等,读锁,写锁等,都是在做操作前先上锁。分类:共享锁(又称为读锁,简称 S 锁。顾名思义,共享锁就是多个事务对于同一数据可以共享一把锁,都能访问到数据,但...转载 2021-11-29 22:41:22 · 251 阅读 · 0 评论 -
消息队列的消费幂等性如何保证
参考大佬文章:消息队列的消费幂等性如何保证这里先介绍下幂等性:幂等性:一个幂等操作的特点是其任意多次执行所产生的影响均与一次执行的影响相同比如:一条数据或者一个请求,重复发起多次,我们要确保对应的数据不会受影响。为什么要保证消费的幂等性?基于"业务场景"进行分析,比如某些正常情况下,我们是不允许同一个订单重复支付,这种场景就需要保证操作的幂等性。常用的幂等性保证方法:1.利用数据库的唯一约束实现幂等比如将订单表中的订单编号设置为唯一索引,创建订单时,根据订单编号就可以保证幂等2.转载 2021-08-16 17:13:28 · 2057 阅读 · 0 评论 -
服务容灾:
参考大佬文章:后台开发必备知识——容灾容灾:容灾就是对灾难(disater)的容忍能力,即当灾难袭来时,能保证信息系统正常运行而采取的措施,以实现业务连续性为目标。后台服务要保证业务连续性(服务不中断,或中断时间在允许范围内),系统需具备容灾能力。基于服务冗余实现的,大而全的容灾系统具有较大成本容灾层级划分:1.数据级容灾:数据备份2.应用级容灾:数据备份+服务多实例容灾评价指标:灾难检测->容灾切换->数据一致性容灾解决方案:1.双活:...转载 2021-07-27 13:40:53 · 1560 阅读 · 0 评论