一、简介 ZooKeeper由雅虎研究院开发,后来捐赠给了Apache。ZooKeeper是一个开源的分布式应用程序协调服务器,其为分布式系统提供一致性服务。其一致性是通过基于Paxos算法的ZAB协议完成的。其主要功能包括:配置维护、域名服务、分布式同步、集群管理等。 zookeeper的官网: ...
分类:
其他好文 时间:
2020-07-07 15:38:15
阅读次数:
77
事务的 四个特征(ACID) 事务具有四个特征:原子性( Atomicity )、一致性( Consistency )、隔离性( Isolation )和持续性( Durability )。这四个特性简称为 ACID 特性。 1 、原子性。事务是数据库的逻辑工作单位,事务中包含的各操作要么都做,要么 ...
分类:
数据库 时间:
2020-07-07 13:15:28
阅读次数:
70
资料来源: 青山老师的mysql课程 丁奇老师的《MySQL45讲》 一、文章结构和思路 1.整体文章结构 2、大概思路 介绍数据库的特性; 数据库标准所制定的隔离级别和解决对应的一致性问题; 数据库的锁:事务的实现依赖于数据库锁的; 在了解基本的锁结构之后,再了解他们之间的关系; 文章穿插了数据库 ...
分类:
数据库 时间:
2020-07-07 09:30:09
阅读次数:
64
1、锁的作用 Java中的锁主要用于保障多并发线程情况下数据的一致性。 在多线程编程中为了保障数据的一致性,通常需要在使用对象或者方法之前加锁,这时如果有其他线程也需要使用该对象或方法。则首先要获得锁,如果某个线程发现锁正在被其他线程使用,就会进入阻塞队列等待锁的释放,直到其他线程执行完成并释放锁, ...
分类:
编程语言 时间:
2020-07-07 00:15:49
阅读次数:
91
前言 上一节我们讲了哈希算法的四个应用,分别是安全加密、数据校验、唯一标识、散列函数。今天再来看看剩下的三个应用:负载均衡、数据分片、分布式存储。 可能大家已经发现了,这三个应用都是与分布式相关的。没错,今天我们来学习一下,哈希算法是如何解决这些分布式问题的。 应用五:负载均衡 负载均衡算法有很多, ...
分类:
编程语言 时间:
2020-07-06 20:00:29
阅读次数:
69
前言 上一篇【.Net Core微服务入门全纪录(六)——EventBus-事件总线】中使用CAP完成了一个简单的Eventbus,实现了服务之间的解耦和异步调用,并且做到数据的最终一致性。这一篇将使用IdentityServer4来搭建一个鉴权中心,来完成授权认证相关的功能。 IdentitySe ...
分类:
Web程序 时间:
2020-07-06 15:55:38
阅读次数:
65
哈希函数,想必大家都不陌生。通过哈希函数我们可以将数据映射成一个数字(哈希值),然后可用于将数据打乱。例如,在HashMap中则是通过哈希函数使得每个桶中的数据尽量均匀。那一致性哈希又是什么?它是用于解决什么问题?本文将从普通的哈希函数说起,看看普通哈希函数存在的问题,然后再看一致性哈希是如何解决, ...
分类:
其他好文 时间:
2020-07-06 01:38:34
阅读次数:
89
其实不管redis还好,Mysql也好 这种数据存储介质,在分布式场景中都存在共同问题:即集群场景下服务路由。比如redis集群场景下,原本我们分3主3从部署。但万一有一天出现访问量暴增或其中一台机器挂了的场景,那么服务路由(一般采用HASH取模定位的方式)重新计算后 会面临数据在新的节点找不到,... ...
分类:
编程语言 时间:
2020-07-05 15:47:15
阅读次数:
68
在并发编程中有两个重要的概念:线程和锁,多线程是一把双刃剑,它在提高程序性能的同时,也带来了编码的复杂性,对开发者的要求也提高了一个档次。而锁的出现就是为了保障多线程在同时操作一组资源时的数据一致性,当我们给资源加上锁之后,只有拥有此锁的线程才能操作此资源,而其他线程只能排队等待使用此锁。那么如何手 ...
分类:
其他好文 时间:
2020-07-05 01:04:51
阅读次数:
78
MySQL的体系结构概览 整个MySQL Server由以下组成: Connection Pool : 连接池组件 Management Services & Utilities : 管理服务和工具组件 SQL Interface : SQL接口组件 Parser : 查询分析器组件 Optimiz ...
分类:
数据库 时间:
2020-07-05 00:35:24
阅读次数:
91