自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(10)
  • 收藏
  • 关注

原创 2017年前端面试题整理汇总100题

引用计数的策略是跟踪记录每个值被使用的次数,当声明了一个 变量并将一个引用类型赋值给该变量的时候这个值的引用次数就加1,如果该变量的值变成了另外一个,则这个值得引用次数减1,当这个值的引用次数变为0的时 候,说明没有变量在使用,这个值没法被访问了,因此可以将其占用的空间回收,这样垃圾回收器会在运行的时候清理掉引用次数为0的值占用的空间。是一个比较完善的前端MVW框架,包含模板,数据双向绑定,路由,模块化,服务,依赖注入等所有功能,模板功能强大丰富,并且是声明式的,自带了丰富的 Angular 指令。

2025-01-22 14:21:35 843

原创 分布式系统改造方案——数据篇

说下实操,假设我们现在修改了用户信息,同时要修改用户的缓存,在 DB 更新成功之后我们可以往 mq 发送一个事件(要保证发送 MQ 和更新 DB 在一个事务内),MQ 再接收到用户基础信息,异步去处理更新用户的缓存,如果这个过程消费失败了,mq 会帮我们实现重试机制,这里不用担心消息丢失的问题,大部分厂商的队列在没有消息发送成功时都已经落盘,可靠性还是能保证的(除非宕机,停电,异步刷盘这类)。但是随之而来带来很多新的问题,历史数据迁移问题、用户信息查询问题等等。先说说历史数据迁移吧。

2025-01-15 20:43:13 684

原创 分布式幂等设计方案_为更新的数据设置前置条件 幂等

幂等设计作为网络通信重要的一环,在消息队列的使用中、在接口调用的场景中,我们或多或少的都要对自己提供的接口进行幂等设计。当我们的接口涉及到金额相关的操作。我们一定要考虑幂等,不然就可能存在。退款多退、订单多下、佣金多发等重大生产事故。

2025-01-15 20:39:33 969

原创 分布式事物:第一章:分布式事物简介

数据库进行任何写入操作的时候都是要先写日志的,同样的道理,我们在执行事务的时候数据库首先会记录下这个事务的redo操作日志,然后才开始真正操作数据库,在操作之前首先会把日志文件写入磁盘,那么当突然断电的时候,即使操作没有完成,在重新启动数据库时候,数据库会根据当前数据的情况进行undo回滚或者是redo前滚,这样就保证了数据的强一致性。为什么要提到这个知识点呢?一次大的操作由不同的小操作组成,这些小的操作分布在不同的服务器上,且属于不同的应用,分布式事务需要保证这些小操作要么全部成功,要么全部失败。

2025-01-15 20:35:52 440

原创 【高并发】高并发分布式锁架构解密,不是所有的锁都是分布式锁(升级版)!!

在很多业务场景下,我们编写的应用程序中会存在很多的的问题。而我们在高并发程序中,引入锁,就是为了解决这些资源竞争的问题。电商超卖问题这里,我们可以列举一个简单的业务场景。比如,在电子商务(商城)的业务场景中,提交订单购买商品时,首先需要查询相应商品的库存是否足够,只有在商品库存数量足够的前提下,才能让用户成功的下单。下单时,我们需要在库存数量中减去用户下单的商品数量,并将库存操作的结果数据更新到数据库中。整个流程我们可以简化成下图所示。

2025-01-15 04:33:41 611

原创 【高并发】通过ThreadPoolExecutor类的源码深度解析线程池执行任务的核心流程

return;//如果线程池处于RUNNING状态,则将任务添加到阻塞队列中//再次获取线程池的状态和线程池中线程的数量,用于二次检查//如果线程池没有未处于RUNNING状态,从队列中删除任务if (!//执行拒绝策略//如果线程池为空,则向线程池中添加一个线程//任务队列已满,则新增worker线程,如果新增线程失败,则执行拒绝策略else if (!整个任务的执行流程,我们可以简化成下图所示。

2025-01-15 04:30:00 580

原创 【题目集1】找不重复的数字,模拟实现aoti,宏实现offsetof_aoti 题目

一个数组中只有两个数字只出现一次,其他的数字都是出现两次,编写一个函数找出这两个只出现一次的数字的函数。这道题的具体思路就是用异或的思想来解决。什么是异或:对于两个数字,相同为0,相异为1。

2025-01-15 04:26:18 297

原创 TCP三次握手之-awl工具-SYN洪水攻击

云盾数据TCP三次握手。

2025-01-14 02:35:40 594

原创 TCP 协议(包含三次握手,四次挥手)

②③情况:丢包的两种情况,对于发送方来说无法确定是哪种情况,因此,进行统一处理:当发送了一条数据之后,TCP 内部就会自动启动一个定时器,达到一定时间也没收到 ACK,定时器就会自动触发重传消息的动作 ——上述情况不严谨,真实的 TCP 还不一样,TCP 是面向字节流的,此处的编号并不是按照一条两条来编的,而是按照字节来编号的 (每个字节有一个编号)接收方收到数据后,是知道数据所带着的序号的,根据序号给出确认序号(告诉发送方下次给我发的序号),发送给发送方,发送方就知道接收方收到了哪些数据。

2025-01-14 02:32:00 1047

原创 TCP 协议(包含三次握手,四次挥手)(1)

谁主动断开连接,谁进入 TIME-WAIT 状态,此时该主机已经完成了四次挥手的过程,但仍不能立刻断开连接,而是要以 TIME-WAIT 状态来保持连接一段时间之后,再彻底释放连接 (处理最后一个 ACK 丢包之后重传的问题)②③情况:丢包的两种情况,对于发送方来说无法确定是哪种情况,因此,进行统一处理:当发送了一条数据之后,TCP 内部就会自动启动一个定时器,达到一定时间也没收到 ACK,定时器就会自动触发重传消息的动作 ——一种是 ACK 丢失,重传就意味着接收方收到了相同的数据。

2025-01-14 02:28:18 1085 1

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除