分布式 集群 全局 情况
k8s-外置ETCD集群部署
如何把ETCD的数据库备份,以及还原的操作方法(待更新中) 地址: Etcd 是一个分布式键值存储系统,Kubernetes使用Etcd进行数据存储,所以先准备一个Etcd数据库,为解决Etcd单点故障,应采用集群方式部署,这里使用3台组建集群,可容忍1台机器故障。为了节省机器,这里把3个ETCD实 ......
2PC 3PC TCC等多种分布式事务解决方案分析对比
前言 本文分析多种分布式事务的解决方案2PC、3PC TCC、可靠消息服务、最大努力通知,事务消息等。讲述其执行流程、优缺点、适用场景以及引文具体实战例子。 名词解释 TM(transaction manager) 事务协调者 RM(resource manager) 资源管理者/事务参与者/业务服 ......
ZooKeeper数据和集群特点,ZAB协议和选主过程解析
前言 本文讲述 ZooKeeper 集群架构特点、数据结构、事务ID、选主和ZAB协议具体执行过程。 服务保证 ZooKeeper 非常快速且非常简单。由于它的目标是构建更复杂的服务(如同步)的基础,因此它提供了一组保证: 【顺序一致性】来自客户端的更新将按发送顺序执行,因为只有唯一的主节点负责写请 ......
Springboot整合Seata实现分布式事务
前言 Seata 是一款开源的分布式事务解决方案,致力于提供高性能和简单易用的分布式事务服务。Seata 将为用户提供了 AT、TCC、SAGA 和 XA 事务模式,为用户打造一站式的分布式解决方案。 Seata 配置非常灵活,支持多种注册中心、配置来源(配置中心)和持久化方式。本文选择 eurek ......
Springboot整合TX-LCN实现分布式事务
前言 TX-LCN 是一款国产分布式事务协调框架,框架其本身并不操作事务,而是基于对事务的协调从而达到事务一致性的效果。 本文讲解如何使用 Springboot 作为基础,来配置使用 TX-LCN。 需要 MySQL 和 Redis。 名词解释 TM (Tx-Manager / Transactio ......
GFS分布式文件系统
一、文件系统简介1.1文件系统的组成接口:文件系统接口功能模块(管理、存储的工具):对对象管理里的软件集合对象及属性:(使用此文件系统的消费者)1.2文件系统的作用从系统角度来看,文件系统时对文件存储设备的空间进行组织和分配,负责文件存储并对存入的文件进行保护和检索的系统主要负责为用户建立文件、存入 ......
Hadoop搭建(集群)
HADOOP配置文件 | | core-site.xml | | | | | hadoop.tmp.dir | /opt/hadoop/tmp | | fs.defaultFS | hdfs://master:9000 | | | hdfs-site.xml | | | | | hadoop.nam ......
Springboot+ElasticJob-Lite实现集群任务调度
前言 ElasticJob-Lite是集群环境下应用(比如SpringCloud微服务)任务调度的解决方案。 集群部署的时候,一个定时任务会有多个进程执行,如果不进行任何处理,会导致任务触发的时候每个进程重复执行一次。 解决办法有两种:一种是加锁,保证同时只有一个进程执行任务,比如用分布式锁,或者用 ......
K8s集群搭建问题
警告Cgroup Driver不一致 节点加入集群会警告 docker 和 kubelet 的 Cgroup Driver 不一致,但是暂未发现影响,如图: 解决办法:修改 docker 的 Cgroup Driver 为 systemd vim /etc/docker/daemon.json 加下 ......
在Linux内网搭建K8s集群
前言 本文讲述在Linux内网搭建K8s集群详细步骤,解决搭建过程中的问题。 脚本基本可以不修改直接使用。 准备工作 需要Linux CentOS 7.x 两台及以上,本文用的 7.6。 主机要求有2个核心及以上。 安装步骤多个节点可以并行操作,默认所有操作各节点都要执行,某些操作仅主/工作节点执行 ......
2021-12-30-k8s集群进行删除并添加node节点
layout: post cid: 7 title: k8s集群进行删除并添加node节点 slug: 7 date: 2021/12/30 16:58:32 updated: 2021/12/30 16:58:32 status: publish author: cby categories: 默 ......
GFS分布式文件系统
一、文件系统简介1.1文件系统的组成接口:文件系统接口功能模块(管理、存储的工具):对对象管理里的软件集合对象及属性:(使用此文件系统的消费者)1.2文件系统的作用从系统角度来看,文件系统时对文件存储设备的空间进行组织和分配,负责文件存储并对存入的文件进行保护和检索的系统主要负责为用户建立文件、存入 ......
在Linux搭建Zookeeper集群
前言 本文讲述在多台 Linux 服务器搭建 ZooKeeper 集群的具体步骤,共 4 个节点(1 主 2 从 1 观察者)。 ZooKeeper使用的端口:【2181】对 client 提供服务;【3888】选举 leader;【2888】集群内通讯。 准备工作 ZooKeeper需要1.7及以 ......
内存泄漏的情况
Java有垃圾收集器实现内存自动管理,虽然GC有效的处理了大部分内存,但并不能完全保证内存的不泄漏。 可能导致内存泄漏的情况: ①静态集合类,如HashMap、LinkedList等 ②未关闭的资源,如数据库连接、IO连接等 ③变量不合理的作用域 ④内部类持有外部类 ⑤改变哈希值 ⑥过期引用 ⑦缓存 ......
MAST20006 离散分布
MAST20006/MAST90057 – Module 2. Discrete DistributionsModule 2. Discrete DistributionsChapter 2 in the textbookSophie Hautphenne and Feng LiuThe Unive ......
全局异常拦截和返回值封装
全局异常拦截和返回值封装共分为五个类,分别是错误码枚举类、返回值封装类、自定义业务异常类、全局拦截类、全局返回值处理类。 #错误码枚举类 用来定义返回值的错误码。 package com.masy.global.exception; /** * @ClassName ErrorCode * @Des ......
在Linux搭建Kafka集群
前言 以kafka_2.13-2.8.0版本做示例,安装架构图如下所示,4台服务器,4个节点的Zookeeper集群(1主2从1观察)以及3个Kafka服务。 准备工作 准备多台服务器来搭建集群环境 Kafka需要Zookeeper做分布式协调,所以得先准备好Zookeeper集群。可以参考 在Li ......
在Linux部署Redis主从和哨兵集群实现高可用
前言 本文主要讲述在 Linux 系统中配置和部署 Redis 主从集群和哨兵,实现高可用和自动故障迁移。 准备工作 参考 Redis 单机部署 安装 3 个 Redis 服务作一主二从,本文准备了 6380(主)、6381(从) 和 6382(从)。 参考 Redis 单机部署 安装 3 个 Re ......
GFS分布式文件系统
一、GlusterFS 概述 1.1 GlusterFS简介 GlusterFS是一个开源的分布式文件系统。 由存储服务器、客户端以及NFS/Samba存储网关(可选,根据需要选择使用)组成。 没有元数据服务器组件,这有助于提升整个系统的性能、可靠性和稳定性。 传统的分布式文件系统大多通过元服务器来 ......
在Linux部署Redis Cluster集群
前言 本文讲述在 Linux 系统部署 Redis Cluster 实现数据分片的具体步骤。 请参考 Redis 单机部署 下载编译。 Redis Cluster是什么? Redis Cluster 是官方提供的一种用数据分片来实现横向扩容的解决方案,由一个或多个 Redis 服务组成一个无主集群。 ......
在Linux部署Etcd集群
前言 目前解决分布式系统下数据强一致性的主要算法理论是Paxos和Raft,偏向CAP定理一致性(Consistency)、可用性(Availability)、分区容错性(Partition tolerance)中的CP。 Raft在容错和性能方面和Paxos相当,不同之处在于它将问题分解成相对独立 ......
Redis——(主从复制、哨兵模式、集群)的部署及搭建
重点: 主从复制:主从复制是高可用redis的基础,主从复制主要实现了数据的多机备份,以及对于读操作的负载均衡和简单的故障恢复。 哨兵和集群都是在主从复制基础上实现高可用的。 缺点:故障恢复无法自动化,写操作无法负载均衡,存储能力受到单机的限制。 哨兵:在主从复制的基础上,哨兵实现了自动化的故障恢复 ......
ATM机 存款取款后的剩余金额 需要在函数中声明是全局变量
''' ATM 当前的剩余金额是个不断变化的过程 需要在存款 取款函数中声明为全局变量自己写的 ''' money_now=5000 name="fqs" def look_money_now(): print(f"{name}您的余额是{money_now}") def money_up(): m ......
global 在函数里也可以声明全局变量
''' 函数嵌套 更改全局变量使用 声称全局变量 global ''' number = 100 def b (): print(f"方法b中number:{number}") def a (): #注意 只有调用函数数 global 才能生效 global number number = 200 ......
Docker 下 RedisCluster 分片集群搭建
1. Cluster 分片集群 1.1 Cluster 集群的结构和作用 redis 哨兵模式虽然提供了 redis⾼可⽤、高并发读的解决方案,但是在海量数据应用场景下,仍然存在海量数据存储问题和高并发写的问题。当只有⼀个 Master 对外提供服务时,如果数据量特别⼤,内存占⽤问题严重,数据的高并 ......
MySQL AutoIncrement--PXC集群批量插入操作获取自增ID异常问题
问题描述 由于MySQL PXC集群的所有节点均可读写,因此当PXC集群中节点增加和减少时,PXC集群会自动调整集群各节点的自增ID步长,避免不同集群节点生成相同自增ID值产生冲突。 当PXC集群中读节点数量发生变化时,客户端执行BatchInsert方法可能返回错误的自增ID值。 问题原因 由于M ......
[安乐椅#15] 杨辉三角质数分布性质
性质内容 在杨辉三角中,质数仅存在于第2层。 性质证明 | $C_n^m$ | \frac{0}{1} | 1 | 2 | 3 | 4 | 5 | 6 | 7 | | : : | : : | : : | : : | : : | : : | : : | : : | : : | | 0| | | | | ......
分布式锁和事务
###1.分布式锁的实现方式? 1.基于数据库实现 -mysql行锁 2.基于zookeeper -CP模式 3.基于Redis setnx实现 -AP模式 4.Redis框架 Redission,RedisLock 要求:保证一致性 zk实现分布式锁 保证可用性 redis实现分布式锁 2.Zoo ......
oracle之安装data gaurd集群
#################### 开启归档日志: shutdown immediate; startup mount; alter database archivelog; alter database open; archive log list # 更改归档目录路径log_archive ......
jmeter分布式测试安装部署步骤
一、下载linux版本的jdk 注:下载的jdk和jmeter要与window的jdk和jmeter一致 下载地址:https://www.oracle.com/java/technologies/downloads/#java11 二、在虚拟机中使用su root 超级管理员的账号进行操作,在/u ......