摘要: 962.最大宽度 题目: 给定一个整数数组 A,坡是元组 (i, j),其中 i < j 且 A[i] <= A[j]。这样的坡的宽度为 j - i。 找出 A 中的坡的最大宽度,如果不存在,返回 0 。 1 class Solution { 2 public int maxWidthRamp(in 阅读全文
posted @ 2020-06-01 00:18 Moonshoterr 阅读(170) 评论(0) 推荐(0) 编辑
摘要: C 代表 Consistency,一致性,是指所有节点在同一时刻的数据 是相同的,即更新操作执行结束并响应用户完成后,所有节点存储的数据会保持相同。 A 代表 Availability,可用性,是指系统提供的服务一直处于可用状态, 对于用户的请求可即时响应。 P 代表 Partition Toler 阅读全文
posted @ 2020-05-26 01:57 Moonshoterr 阅读(265) 评论(0) 推荐(0) 编辑
摘要: 发布订阅就是发布 者产生数据到消息中心,订阅者订阅自己感兴趣的消息,消息中心根据订阅者的订阅情况, 将相关消息或数据发送给对应的订阅者。所以可概括为“送货上门”。 在实际使用场景中,还有一种常用的通信方式,就是将消息或数据放到一个队列里,谁需要 谁就去队列里面取。在分布式领域中,这种模式叫“消息队列 阅读全文
posted @ 2020-05-26 01:40 Moonshoterr 阅读(326) 评论(0) 推荐(0) 编辑
摘要: 远程调用的核心是在网络服 务层封装了通信协议、序列化、传输等操作,让用户调用远程服务如同进行本地调用一样。 其实,这种方式就是通过网络服务层的封装实现了不同机器上不同进程之间的直接通信,因 为是直接通信,所以通过线程阻塞的方式实现同步调用比较容易,因此通常被用于同步调 用。比如,机器 1 上的进程 阅读全文
posted @ 2020-05-26 01:27 Moonshoterr 阅读(502) 评论(0) 推荐(0) 编辑
摘要: 如果说分布式互斥算法讲了如何协调多个进程获取权限和根据权限有序访问共享资源,即获得访问权限的进程可以访问共享资源,其他进程必须 等待拥有该权限的进程释放权限。这个权限的设置或者产生的原理就是分布式锁。 在单机多线程环境中,遇到多个线程访问同一个共享资源(在单机情况下,这种一般称作“临界资源”,分布式 阅读全文
posted @ 2020-05-24 22:38 Moonshoterr 阅读(165) 评论(0) 推荐(0) 编辑
摘要: 分布式事务,就是在分布式系统中运行的事务,由多个本地事务组合而成。在分布式场景下,对事务的处理操作可能来自不同的机器,甚至是来自不同的操作系统。 分布式事务是多个事务的组合,那么事务的特征 ACID,也是分布式事务的基本特征,其中 ACID 具体含义如下: 原子性(Atomicity),即事务最终的 阅读全文
posted @ 2020-05-24 22:20 Moonshoterr 阅读(166) 评论(0) 推荐(0) 编辑
摘要: 集群一般是由两个或两个以上的服务器组建而成,每个服务器都是一个节点。数据库集群、管理集群...数据库集群提供了读写功能,管理集群提供了管理、故障恢复等功能。 对于一个集群来说,多个节点的协同和管理是非常重要的。而主节点则实现了协同和管理,主节点的存在,就可以保证其他节点的有序运行,以及数据库集群中的 阅读全文
posted @ 2020-05-24 20:46 Moonshoterr 阅读(5634) 评论(0) 推荐(0) 编辑
摘要: 分布式系统里排他性的资源访问方式,叫作分布式互斥,而这种被互斥访问的共享资源就叫作临界资源。 一.集中式算法 引入一个协调者程序便得到一个分布式互斥算法。每个程序在需要访问临界资源时,先给协调者发送一个请求。如果当前没有程序使用这个资源,协调者直接授权请求程序访问;否则,按照先来后到的顺序为请求程序 阅读全文
posted @ 2020-05-24 18:49 Moonshoterr 阅读(1194) 评论(0) 推荐(0) 编辑
摘要: 一.基础知识 1.TCP和UDP的根本区别 ● TCP面向连接,如打电话要先拨号建立连接;UDP是无连接的,即发送数据之前不需要建立连接。● TCP提供可靠的服务。也就是说,通过TCP连接传送的数据,无差错,不丢失,不重复,且按序到达;UDP尽最大努力交付,即不保证可靠交付。● TCP通过校验和、重 阅读全文
posted @ 2020-05-23 02:31 Moonshoterr 阅读(343) 评论(0) 推荐(0) 编辑
摘要: ByteBuf是Netty整个结构里面最为底层的模块,主要负责把数据从底层I/O读到ByteBuf,然后传递给应用程序,应用程序处理完成之后再把数据封装成ByteBuf写回I/O。所以,ByteBuf是直接与底层打交道的一层抽象。相对于Netty其他模块来说,这部分内容是非常复杂的。 ByteBuf 阅读全文
posted @ 2020-05-23 02:06 Moonshoterr 阅读(581) 评论(0) 推荐(0) 编辑