摘要: 用户态切换到内核态的方式? 1. 系统调用 2. 异常中断 3. 外设中断 并行与并发? 并行:两个或多个事件可以在同一时刻发生 并发:两个或多个事件可以在同一时间间隔发生 同步与异步? 同步与异步强调的是消息通信机制。 阻塞与非阻塞强调的是程序在等待调用结果时的状态。 进程五状态模型 进程调度 非 阅读全文
posted @ 2021-06-14 11:41 wenjiajun 阅读(104) 评论(0) 推荐(0)
摘要: 分布式锁的实现要点? 1. 互斥 2. 不能死锁 3. 容错 分布式锁的实现方式? redis实现 优点: 实现简单 缺点: 单点故障, 对于普通主从,那redis主从异步复制,如果主节点挂了,key还没同步到从节点,此时从节点切换为主节点,别人就会拿到锁 zookeeper方式一 优点:实现简单 阅读全文
posted @ 2021-06-14 01:10 wenjiajun 阅读(42) 评论(0) 推荐(0)
摘要: 环境 操作系统:centos 7.9 Docker: 17.03.1-ce ip: 192.168.163.101 menqi1-master 192.168.163.102 menqi2-slaver 192.168.163.103 menqi3-slaver 安装containerd/kubel 阅读全文
posted @ 2021-06-09 00:58 wenjiajun 阅读(266) 评论(0) 推荐(0)
摘要: 2PC 2PC(Two-phase commit protocol),中文叫二阶段提交。 二阶段提交是一种强一致性设计,2PC 引入一个事务协调者的角色来协调管理各参与者(也可称之为各本地资源)的提交和回滚,二阶段分别指的是准备(投票)和提交两个阶段。 这个举个例子,比如说咱们公司里经常tb(团建) 阅读全文
posted @ 2021-06-07 00:33 wenjiajun 阅读(70) 评论(0) 推荐(0)
摘要: 网关核心功能: 1. 动态路由 在网关里配置一下路径和新服务的映射关系,此时请求过来直接就可以走到新的服务里去。 2. 灰度发布 通过一个界面,开启这个服务的灰度发布,此时安装规则,把少量的流量打入到新版本的服务上去。 3. 授权认证 4. 性能监控 5. 系统日志 6. 数据缓存 7. 限流熔断 阅读全文
posted @ 2021-06-06 10:29 wenjiajun 阅读(219) 评论(0) 推荐(0)
摘要: 什么是服务注册与发现? 服务注册,就是将提供某个服务的信息注册到1个公共的组件上去(比如: zookeeper\consul)。 服务发现,就是新注册的这个服务模块能够及时的被其他调用者发现。 应用场景 完成自动化服务发现,在服务动态上下线过程中,无需人工介入配置。 服务注册 服务注册需要注册中心来 阅读全文
posted @ 2021-06-04 01:20 wenjiajun 阅读(135) 评论(0) 推荐(0)
摘要: 为啥需要分布式ID? 在复杂分布式系统中,往往需要对大量的数据和消息进行唯一标识。对数据分库分表后需要有一个唯一ID来标识一条数据或消息。 方案: 方案总结: 1. 号段模式 2. 雪花算法 开源组件: 1. 百度uid-generator 2. 滴滴Tinyid 3. 美团Leaf 参考文章 1. 阅读全文
posted @ 2021-05-30 12:44 wenjiajun 阅读(55) 评论(0) 推荐(0)
摘要: NIO详细解读。 阅读全文
posted @ 2021-05-27 01:40 wenjiajun 阅读(38) 评论(0) 推荐(0)
摘要: 该图来自于《大话设计模式》。 依赖关系:虚线箭头表示,指向被依赖对象。 继承关系:空心三角形+实线表示,子类指向父类。 组合关系:实心菱形+实线箭头表示。 关联关系:实线箭头表示。 聚合关系:空心菱形+实线箭头表示。 实现关系:空心三角形+虚线表示或者棒棒糖表示法。 阅读全文
posted @ 2021-05-27 00:28 wenjiajun 阅读(63) 评论(0) 推荐(0)
摘要: 深入浅出系列之设计模式。 阅读全文
posted @ 2021-05-26 22:58 wenjiajun 阅读(37) 评论(0) 推荐(0)