分布式

MinIO分布式部署

目录先决条件网络和防火墙网络防火墙负载均衡顺序的主机名驱动器要求XFS格式性能最优最小IO顺序的驱动器名任意迁移时间同步考虑相同的硬软件环境存储容量规划推荐的操作系统预先存在的数据部署分布式MinIO在每一个节点上安装MinIO创建服务文件minio.service创建环境文件添加TLS/SSL证书 ... »

分布式系统的主键生成方案对比

UUID(通用唯一识别码)是由32个十六进制数组成的无序字符串,通过一定的算法计算出来。为了保证其唯一性,UUID规范定义了包括网卡MAC地址、时间戳、名字空间(Namespace)、随机或伪随机数、时序等元素,以及从这些元素生成UUID的算法。一般来说,算法可以保证任何地方产生的任意一个UUID都... ... »

jingdongkeji

分布式事务模型与常见解决方案

1. 背景 首先抛出一个问题,如果在一台机器上,数据库是如何解决事务问题的?很容易想到,数据库的ACID四个特性来保证的,原子性、一致性、隔离性和持久性。 原子性(Atomicity):一个事务内的所有操作看成一个原子操作,要么全部执行,要么都不执行。 一致性(Consistency): 指在事务开 ... »

一篇文章让你弄懂分布式一致性协议Paxos

一、Paxos协议简介 Paxos算法由Leslie Lamport在1990年提出,它是少数在工程实践中被证实的强一致性、高可用、去中心的分布式协议。Paxos协议用于在多个副本之间在有限时间内对某个决议达成共识。Paxos协议运行在允许消息重复、丢失、延迟或乱序,但没有拜占庭式错误的网络环境中, ... »

xl-xueling

分布式锁的3种实现!附代码

分布式锁是一种用于保证分布式系统中多个进程或线程同步访问共享资源的技术。同时它又是面试中的常见问题,所以我们本文就重点来看分布式锁的具体实现(含实现代码)。 在分布式系统中,由于各个节点之间的网络通信延迟、故障等原因,可能会导致数据不一致的问题。分布式锁通过协调多个节点的行为,保证在任何时刻只有一个 ... »

vipstone

记一次由于操作失误致使数据库瘫痪的故障分析与解决方案

在这篇文章中,我将分享一次由于操作不当导致数据库瘫痪的经验。通过回顾故障发生的时间、系统简介、时间线、问题分析和经验总结等方面的内容。讨论操作时间不当、操作流程不当、缺乏执行计划和限流机制等问题,并提出一些建议,如确认数据库更新时间、优化更新操作、使用限流工具、设置超时时间和重试机制、调整数据库参数... ... »

深入分布式一致性:Raft 和 etcdRaft

分布式一致性是构建可靠的分布式系统的关键要素之一。为了确保数据的一致性和可用性,一致性算法的设计变得至关重要。在这篇博文中,我们将深入探讨两个与分布式一致性密切相关的主题:Raft 算法和 etcdRaft 存储系统。 ## Raft 算法:分布式一致性的基石 Raft 算法是一种分布式一致性算法, ... »

lianshuiwuyi

大企业才用的分布式唯一Id,它比GUID好

支持.Net Core(2.0及以上)与.Net Framework(4.5及以上) 可以部署在Docker, Windows, Linux, Mac。 分布式唯一Id,顾名思义,是指在全世界任何一台计算机上都不会重复的唯一Id。 在单机/单服务器/单数据库的小型应用中,不需要用到这类东西。但在高并 ... »

digital-college

浅谈幂等设计

如今随着互联网技术快速发展,业务越来越复杂,系统的高并发和关键数据的场景越来越多。在分布式系统中,机器宕机和消息丢失也是需要重点关注的问题,其中的一个典型就是幂等性问题。 ... »

jingdongkeji

应用程序通过 Envoy 代理和 Jaeger 进行分布式追踪 —— Ingress Controller + Http服务 + Grpc服务(三)

1、概述 在《应用程序通过 Envoy 代理和 Jaeger 进行分布式追踪(一)》这篇博文中,我们详细介绍了单个应用程序通过 Envoy 和 Jaeger 实现链路追踪的过程。通过这个示例我们知道,Istio 支持通过 Envoy 代理进行分布式追踪,代理会自动为其应用程序生成追踪 span,只需 ... »

TIDB - 分布式数据库

# TIDB(一) ## 重点 ### TIDB核心 - [x] 数据存储-RocksDB - [ ] Raft 协议 选举 数据同步 - [x] MVCC - [x] 表数据与kv映射关系 - [x] 索引数据与kv 映射关系 - [x] 元数据和sql 层计算 - [ ] PD调度 - [ ] ... »

redis分布式锁,setnx+lua脚本的java实现

本文是基于redis缓存实现分布式锁,其中使用了setnx命令加锁,expire命令设置过期时间并lua脚本保证事务一致性。Java实现部分基于JIMDB提供的接口。 ... »

jingdongkeji

c# .NET 高级编程 高并发必备技巧(二) - 分布式锁

上一篇文章简单的介绍了单机的情况下如何进行加锁,防止高并发带来的问题。 然而现实中,一般会高并发的应用,很少会单机部署。当用户量达到一定的程度,分布式、集群部署是必然的选择。在分布式部署的情况下,之前的单机锁还会有效吗?代码还是之前的代码: > private static object lck = ... »

pzscit .NET

Nginx Ingress Contoller 通过 Envoy 代理和 Jaeger 进行分布式追踪(二)

1、概述 在《应用程序通过 Envoy 代理和 Jaeger 进行分布式追踪(一)》一文中,我们详细介绍了单个应用程序如何通过 Envoy 和 Jaeger 实现链路追踪的过程。然而,单独追踪单个应用程序的链路在实际场景中往往显得不够有意义。因此,在本文中,我们将进一步扩展链路追踪范围,演示如何将 ... »

深入了解Elasticsearch搜索引擎篇:倒排索引、架构设计与优化策略

首先,我们介绍了Elasticsearch(ES)的倒排索引,这是一种用于快速检索的数据结构。其次,我们了解了ES集群的架构,包括主节点、数据节点和协调节点的功能和作用。然后,我们探讨了中文分词器的选择,其中包括IK、HanLP和Jieba等常用的分词工具。接着,我们解释了写入数据和查询数据的工作原... ... »

微服务集成seata完成分布式事务,解决数据不一致问题

细心的盆友可能已经发现了,我们的跨行转账并没有保证数据一致性,比如小明扣除了100,但是因为各种问题小红在添加100金额的时候遇到了异常,这个时候数据就出现不一致性 我们可以选择seata来进行分布式事务杜绝这种现象的发生 seata官网:https://seata.io/zh-cn/docs/ov ... »

leafstar