分布式技术
文章平均质量分 93
问道飞鱼
长期从事服务后端开发,擅长微服务高并发架构设计, 熟悉云原技术栈,可以提供完整后端解决方案。 如有志同道合的朋友可以一起学习,共同进步, 如果商务合作意向也可联系。
展开
-
【分布式技术】Redis命令行详细说明
Redis的命令非常丰富,涵盖了从简单的键值对操作到复杂的数据结构操作,再到服务器管理和监控等多个方面。Redis提供了发布/订阅(pub/sub)消息传递模式,允许发送者(发布者)发送消息到频道,接收者(订阅者)订阅频道并接收消息。Redis命令行提供了丰富的命令来管理和操作Redis数据库。Redis提供了一些命令来控制服务器的行为,例如保存数据、关闭服务器等。Redis允许在运行时通过命令行配置一些服务器参数。Redis提供了一些命令来监控和调试服务器的状态。Redis还提供了一些其他有用的命令。原创 2025-01-20 06:15:00 · 682 阅读 · 0 评论 -
【分布式知识】Spring Cloud Gateway实现跨集群应用访问
通过上述步骤,你可以使用SpringBoot和SpringCloudGateway实现跨集群的应用访问。关键在于正确配置服务注册中心、Gateway以及路由规则,并确保服务实例能够跨集群注册和发现。同时,合理的负载均衡和容错机制也是确保系统稳定性的关键。原创 2025-01-19 18:57:29 · 1118 阅读 · 0 评论 -
【Redis知识】Redis进阶-redis还有哪些高级特性?
MULTI:开始事务。EXEC:执行事务中的所有命令。DISCARD:取消事务。WATCH:监视一个或多个键,用于实现乐观锁。通过这些命令,Redis 提供了一种简单但功能强大的事务机制,可以在多个命令之间保持数据的一致性。基本概念频道(Channel):消息的通道或主题,发布者将消息发布到特定的频道,而订阅者可以选择订阅一个或多个频道来接收相关的消息。发布者(Publisher):负责发布消息到频道的客户端,使用PUBLISH命令将消息发送到一个或多个频道。订阅者(Subscriber)原创 2024-12-30 07:03:32 · 963 阅读 · 0 评论 -
【分布式技术】一文讲透链路追踪
链路追踪(Trace)是一种用于追踪分布式应用系统中请求处理过程的技术。链路追踪可以记录请求经过的所有服务节点和处理时间,帮助开发者快速定位和解决系统中的问题,如性能问题、错误和异常等。其核心思想是通过在系统中插入追踪代码,记录请求在各个组件之间的传递过程,从而形成一个完整的请求链路。MDC(Mapped Diagnostic Contexts)即映射诊断上下文,主要用于在日志链路跟踪时动态配置用户自定义的一些信息,如requestId、sessionId等。原创 2024-12-02 10:53:19 · 2081 阅读 · 0 评论 -
【分布式知识】Redis6.x新特性了解
综上所述,Redis 6.x通过引入多线程I/O处理、改进过期算法、增加SSL/TLS支持、引入ACL模块、支持RESP3协议、增加客户端缓存功能以及改进副本复制机制等新特性,显著提升了Redis的性能、安全性和功能性。Redis 6.x 相较于之前的版本,引入了多项重要的新特性和改进,这些改进显著提升了Redis的性能、安全性和功能性。综上所述,Redis在使用过程中会遇到多种问题,但通过合理的配置、优化和管理措施,可以有效解决这些问题,提高Redis的稳定性和性能。原创 2024-12-01 22:02:47 · 1408 阅读 · 0 评论 -
【系统设计】秒杀系统设计
秒杀系统是一种特殊的电子商务销售模式所对应的系统架构,旨在处理商家在特定时间点进行促销活动时产生的高并发请求。秒杀是指商家在特定时间点放出数量有限的促销商品,以非常低的价格或极高的折扣吸引大量用户抢购。秒杀系统则是实现这种销售模式的Web系统,它必须能够在一秒钟内处理数以万计的用户请求,确保用户能够顺利抢购到促销商品。创建一个表示库存的实体类@Entity@Id。原创 2024-11-26 09:40:25 · 1034 阅读 · 0 评论 -
【分布式技术】关于Redis,你想了解的
RDB适用于需要快速备份和恢复数据的场景,但可能会丢失部分数据。AOF适用于需要高数据完整性的场景,但对性能有一定影响。混合持久化结合了 RDB 和 AOF 的优点,适用于需要平衡数据完整性和性能的场景。根据实际需求选择合适的持久化模式,可以有效提升 Redis 的可靠性和性能。原创 2024-11-15 22:21:51 · 907 阅读 · 0 评论 -
【分布式技术】ES扩展知识-Elasticsearch分词器的知识与选择
Standard Analyzer还支持一些配置参数,如(单个词的最大长度)和stopwords(停用词列表)。通过调整这些参数,可以进一步定制分词器的行为。设置为5,则"jumped"会被切分成"jumpe"和"d"。添加"the"到停用词列表,则"the"在分词结果中会被过滤掉。原创 2024-11-14 06:00:00 · 2256 阅读 · 0 评论 -
【分布式技术】分布式缓存技术-旁路缓存模式(Cache Aside Pattern)
概述1. 读取操作(Read)2. 写入操作(Write)3. 一致性问题4. 解决方案适用于哪些场景?如何保证数据一致性?1. 延时双删策略具体是怎么工作的?写操作(更新或删除数据)读操作优点缺点实施注意事项2. 借助消息队列3. 读写穿透模式读写穿透模式具体是如何工作的?4. 异步回写模式(Write Behind Caching)Cache Aside Pattern(旁路缓存模式)是一种常见的缓存更新策略,其核心思想是将缓存的读取和更新操作与数据库的操作分开处理。原创 2024-11-13 20:08:05 · 1896 阅读 · 0 评论 -
【分布式技术】分布式序列算法Snowflake深入解读
Snowflake算法,又称雪花算法,是一种由Twitter开发的分布式ID生成方案。它能够生成一个64位的长整型ID,这个ID由符号位、时间戳、机器ID和序列号组成。原创 2024-11-01 06:15:00 · 1083 阅读 · 0 评论 -
【分布式技术】分布式共识算法Paxos
共识算法(Consensus Algorithm)是分布式系统中用于确保多个参与者能够就单一数据值达成一致的一类算法。在分布式系统中,多个节点需要协同工作以完成任务,而这些节点之间可能存在网络延迟、节点故障等问题。共识算法的目标就是在这样的环境中,确保所有诚实的节点能够就某项决策达成一致,即使某些节点可能表现出故障或恶意行为。共识算法是分布式系统中至关重要的组成部分,它们确保了在不可靠的网络环境中,多个节点能够就某一决策达成一致。原创 2024-09-22 15:57:53 · 1159 阅读 · 0 评论 -
【分布式技术】分布式事务深入理解
分布式事务是指在分布式系统中,跨越多个网络资源(如数据库、消息队列等)的事务处理。在分布式系统中,事务需要确保多个服务或资源之间的操作要么全部成功,要么全部失败,以保持数据的一致性和完整性。原创 2024-10-30 11:00:00 · 2452 阅读 · 0 评论 -
【分布式知识】分布式对象存储组件-Minio
MinIO是一个开源的对象存储服务器,它旨在提供高性能、高可扩展性的存储解决方案。对象是二进制数据,有时也称为二进制大对象 (BLOB)。Blob 可以是图像、音频文件、电子表格,甚至是二进制可执行代码。MinIO 等对象存储平台提供专用工具和功能来存储、检索和搜索 Blob。MinIO 对象存储使用存储桶来组织对象。存储桶类似于文件系统中的文件夹或目录,每个存储桶可以容纳任意数量的对象。MinIO 存储桶提供与 AWS S3 存储桶相同的功能。例如,假设有一个托管网络博客的应用程序。原创 2024-10-26 10:57:48 · 2282 阅读 · 1 评论 -
【分布式技术】中间件-zookeeper安装配置
通过这些基本操作,你可以在Linux环境中管理和使用ZooKeeper。对于更高级的使用场景,如分布式锁或领导者选举,你可能需要编写更复杂的客户端程序来实现。在Linux上安装ZooKeeper,你可以从Apache ZooKeeper的官方网站下载二进制包或使用包管理器安装。监控ZooKeeper的性能和查看日志对于维护ZooKeeper集群非常重要。中配置多个服务器,并在每台服务器上设置唯一的。然后,在所有服务器上启动ZooKeeper。如果需要部署ZooKeeper集群,需要在。原创 2024-10-19 14:42:17 · 1054 阅读 · 0 评论 -
【分布式知识】MapReduce详细介绍
MapReduce是一个分布式计算框架,它允许用户编写可以在大规模集群上并行处理大数据集的应用程序。MapReduce模型由两个主要的函数组成:Map和Reduce,它们分别对应数据处理的两个阶段。原创 2024-10-15 06:00:00 · 1580 阅读 · 0 评论 -
【分布式技术】简单聊聊什么是区块链
定义:区块链本质上是一个去中心化的数据库,是分布式数据存储、点对点传输、共识机制、加密算法等计算机技术的新型应用模式。它由多个节点(计算机)组成,每个节点都保存着相同的数据记录。构成:区块链由“区块”(Block)和“链”(Chain)两部分组成。区块是存储交易信息的基本单位,每个区块都包含了一批交易信息,并通过密码学技术连接成一个不断增长的链条。区块链中的合约,通常指的是智能合约(Smart Contract),它是一种在区块链上自动执行、控制或文档化法律事件和行动的计算机程序。原创 2024-10-11 07:33:44 · 535 阅读 · 0 评论 -
【分布式组件】全网最简单的ElasticSearch入门指引
Elasticsearch 是一个分布式的、RESTful 风格的搜索和分析引擎,基于Lucene构建。它能够存储、搜索和分析海量数据,并且提供了强大的全文搜索能力。Elasticsearch 广泛应用于日志分析、实时监控、全文搜索等领域。Elasticsearch 是一个功能强大且高度可扩展的搜索和分析引擎,它提供了实时搜索、分布式存储和丰富的查询语言等功能。通过 Elasticsearch,可以轻松地构建高性能的应用程序和服务,特别是在需要处理大量数据和实时查询的场景下。原创 2024-10-08 17:45:00 · 1593 阅读 · 0 评论 -
Lucene详解介绍以及底层原理说明
Lucene是一个高性能的全文搜索引擎库,它基于倒排索引技术实现快速、准确的搜索功能。下面我们将详细探讨Lucene的底层原理。原创 2024-09-18 21:00:53 · 1462 阅读 · 0 评论 -
【分布式技术】分布式共识算法ZAB
ZAB协议是为分布式协调服务Zookeeper专门设计的一种支持崩溃恢复和原子广播的协议。基于该协议,Zookeeper实现了一种主备模式的系统架构来保持集群中各个副本之间数据一致性。Zookeeper集群中,只有Leader服务器接受写请求,即使是Follower服务器接受到客户端的请求,也会转发给Leader服务器进行处理。原创 2024-10-02 06:15:00 · 900 阅读 · 0 评论 -
【知识科普】远程过程调用RPC知识科普
RPC(Remote Procedure Call,远程过程调用)是一种计算机通信协议,它允许一个计算机程序通过网络调用另一个计算机程序中的子程序(即远程过程),并获取返回值。RPC是分布式计算的重要基础,它极大地简化了分布式系统之间的通信和交互过程,使得开发者可以像调用本地方法一样调用远程方法,而无需关心底层的网络通信细节。原创 2024-09-28 19:03:39 · 1613 阅读 · 0 评论 -
Redis缓存淘汰算法详解
LRU(Least Recently Used,最近最少使用)缓存淘汰算法是一种常用的页面置换算法,用于管理缓存中的数据,确保最近最少使用的数据被优先淘汰。当缓存达到容量上限时,会删除链表尾部的节点,即最近最少使用的节点。为了获得更好的性能,特别是在需要频繁更新频率和根据频率进行排序时,可以考虑使用更复杂的数据结构,如平衡树或自定义的双向链表与哈希表的组合。综上所述,Redis的缓存淘汰算法为Redis的内存管理提供了灵活且强大的支持,通过合理的配置和调整,可以显著提高缓存的效率和性能。原创 2024-09-26 07:03:36 · 1616 阅读 · 0 评论 -
Google BigTable架构详解
Bigtable的元数据也是按Tablet方式分片、分级存储的。在Chubby中只记录顶级元数据的Tablet位置或文件名,然后通过级联二级元数据的Tablet,最终可以定位到用户数据的Tablet。Bigtable的数据模型是一个稀疏的、分布式的、持久化的多维有序映射表。通过分布式架构、面向列的数据模型、稀疏性设计以及元数据管理等机制,Bigtable能够高效地处理大规模数据集,满足各种复杂的应用需求。Bigtable是Google开发的一个高性能、可扩展的分布式存储系统,用于管理大规模的结构化数据。原创 2024-09-25 16:28:01 · 1445 阅读 · 0 评论 -
【分布式技术】分布式共识算法Raft
Raft 是一种分布式一致性算法,旨在简化之前存在的其他算法(如 Paxos)的复杂性,同时保持系统的一致性和可用性。Raft 被设计为易于理解和实现,并且已经在多个项目中得到了应用,包括 CoreOS 的 etcd 和 HashiCorp 的 Consul。角色状态Leader:负责接受客户端请求并广播给其他节点来达成一致。Follower:接收投票请求,并根据情况投票或拒绝。Candidate:竞选成为 Leader 的节点,在选举过程中会向其他节点发送投票请求。选举过程。原创 2024-09-24 07:19:46 · 958 阅读 · 0 评论 -
分布式消息中间件kafka
是一个开源的流处理平台,由 LinkedIn 开发并在 2011 年开源,后来成为了 Apache 软件基金会的顶级项目。Kafka 被设计用来处理实时数据流,并且在大规模数据传输方面表现优异。它不仅仅是一个消息队列(message queue),还提供了一个统一的、高吞吐量的解决方案,用于处理实时数据馈送(feeds)。原创 2024-09-20 22:23:08 · 1275 阅读 · 0 评论 -
【分布式技术】中间件-分布式协调服务zookeeper
ZooKeeper 是一个分布式协调服务,它为分布式应用程序提供了一套完整的协调服务功能,包括命名服务、状态同步、集群管理、配置维护以及分布式锁等功能。ZooKeeper 的设计目标是简化分布式应用程序的开发工作,使得开发者不需要从头开始实现这些复杂的协调机制。ZooKeeper 是一个非常有用的工具,特别是在构建复杂的分布式系统时。它通过提供一系列协调服务来简化开发者的任务,使得开发者可以专注于业务逻辑而不是底层的协调机制。不过,使用ZooKeeper也需要考虑它的性能和可靠性,尤其是在大规模集群环境中。原创 2024-09-20 06:29:35 · 1497 阅读 · 0 评论 -
每日一个数据结构-跳表
跳表(Skip List)是一种随机化的数据结构,它通过在有序链表上增加多级索引来实现快速查找、插入和删除操作。平均情况下,这些操作的时间复杂度均为 O(log n)。跳表的原理结合了链表和二分查找的思想,通过多层链表和指针跳跃来高效定位数据。原创 2024-09-17 08:15:13 · 389 阅读 · 0 评论 -
分布式中间件-分布式代理框架Codis和Twemproxy
选择哪个取决于具体的应用需求和技术背景。然而,随着社区的发展,许多云服务商也提供了托管的Redis解决方案,以及像Redis Cluster这样的原生解决方案,因此Codis项目的活跃度已经不如从前。不过,在选择Twemproxy之前,应该考虑到它是否符合你的特定需求,以及是否有其他更适合的技术方案,比如Redis Cluster或者其他的分布式缓存解决方案。所有Twemproxy的行为都是通过一个简单的配置文件来定义的,该配置文件包含了后端节点的信息(如地址和端口)、哈希环的设置以及其他相关参数。原创 2024-09-16 20:02:15 · 1726 阅读 · 0 评论 -
redisson实现分布式锁
Redisson是一个高性能的基于 Redis 的 Java 客户端库,它不仅提供了一个简单的 Redis 连接封装,而且还实现了多种高级功能,使得开发人员可以更容易地在应用程序中集成 Redis 的能力。Redisson 是一个非常强大的工具,可以帮助开发人员更容易地在 Java 应用程序中集成 Redis 的功能,尤其是在构建需要高性能、高可用性的分布式系统时非常有用。通过 Redisson,开发者可以专注于业务逻辑的实现,而不必担心底层的分布式协调和同步问题。原创 2024-09-16 07:06:54 · 1723 阅读 · 0 评论 -
redis消息队列-redis stream详细说明
Redis Stream 是一种灵活且强大的数据结构,特别适合用于构建需要异步通信、日志聚合和实时监控的应用程序。通过结合 Stream 和 Consumer Group,可以构建出具有高可用性和容错性的消息系统。原创 2024-09-15 07:55:26 · 1214 阅读 · 0 评论 -
一文教你弄懂网络协议栈以及报文格式
TCP/IP 模型是当今互联网通信的基础,它通过分层的方式定义了数据在网络中的传输过程。每一层都有其特定的功能和协议,确保数据能够准确、高效地从源地址传输到目的地址。理解 TCP/IP 模型对于网络工程师和技术人员来说至关重要,有助于解决网络问题和优化网络性能。IPv6 报文格式相比 IPv4 更加简洁,并且引入了新的字段以支持更多的功能。IPv6 报文可以包含多个扩展首部,这些首部提供了额外的功能,如逐跳选项、目的地选项、路由选项和分段选项等。理解这些报文格式有助于更好地掌握 IPv6 的工作机制。原创 2024-09-12 21:48:55 · 1491 阅读 · 0 评论 -
一篇文章教你弄懂redis多模式部署
Redis提供了几种不同的部署模式,每种模式都有其独特的优点和适用场景。原创 2024-09-12 06:28:50 · 839 阅读 · 0 评论 -
分布式中间件-redis相关概念介绍
是一个开源的、基于内存的、使用ANSI C语言编写的Key-Value数据库。它支持多种数据结构,并提供丰富的API,使其成为高性能的缓存、消息队列、实时分析等场景的理想选择。原创 2024-09-11 20:32:42 · 1274 阅读 · 0 评论 -
分布式中间件-几个常用的消息中间件
分布式, 消息中间件原创 2024-09-08 19:46:28 · 1216 阅读 · 0 评论 -
分布式技术概览
分布式技术,CAP定理,BASE理论,共识算法原创 2024-09-10 22:35:44 · 2123 阅读 · 2 评论
分享