![](https://img-blog.csdnimg.cn/20201014180756922.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
中间件
文章平均质量分 93
静看º一季花开花落
这个作者很懒,什么都没留下…
展开
-
RocketMQ-NameServer详解
RocketMQ架构上主要分为四部分, Broker、Producer、Consumer、NameServer,其他三个都会与NameServer进行通信。 NameServer 是专为 RocketMQ 设计的轻量级名称服务,也是一个简单的Topic路由注册中心。具有简单、可集群横向扩展、无状态,节点之间互不通信等特点。NameServer 通常以集群的方式部署,各实例间相互不进行信息通讯,只是互为备份,达到高可用的效果。。原创 2023-11-23 12:29:58 · 337 阅读 · 0 评论 -
Sentinel概述
在现行高并发场景下,通常会采用微服务架构,可以更好的对服务接口进行水平扩展、接口限流等有效保障服务的可用性和稳定性。其中为了保障服务的高可用,同时也为了防止故障蔓延,通常会选择断路器,防止故障的服务还一直占用CPU资源,可能导致其他服务不能及时处理数据请求。 由于服务器所能承受的压力是有限的,为了保证可用性,一般会做服务限流,减少服务压力。原创 2023-11-15 18:16:09 · 449 阅读 · 0 评论 -
Netty的高性能基石ByteBuf
NIO中缓冲区是数据传输的基础,JDK通过ByteBuffer实现,Netty框架中并未采用JDK原生的ByteBuffer,而是构造了ByteBuf。Netty中的ByteBuf对ByteBuffer做了大量的优化,比如说内存池,零拷贝,引用计数(不依赖GC)。 Netty的内存池,适用于大文件传输设计、也适用于普通业务型的消息。大文件采用堆外内存,业务处理采用池化内存,方便管理,同时还能提升性能。原创 2023-10-21 16:55:26 · 233 阅读 · 0 评论 -
kafka简述
在大数据高并发场景下,当系统中出现“生产“和“消费“的速度或稳定性等因素不一致的时候,就需要消息队列,作为抽象层,弥合双方的差异。一般选型是Kafka、RocketMQ,这源于这些中间件的高吞吐、可扩展以及可靠性。另外企业中离线业务场景实时业务场景都需要使用到kafka,Kafka具备数据的计算能力和存储能力,但是两个能力相对(MR/SPARK,HDFS)较弱,Kafka角色的角色与hbase比较像,层级关系比较多。原创 2023-10-13 19:08:19 · 1075 阅读 · 0 评论 -
ES中个别字段属性说明
先获取正在合并的段列表,通过调用 getSortedBySegmentSize 方法,根据段的大小从大到小对 infos 中的段进行排序,得到排序后的列表 sortedInfos。**表示允许索引中的删除文档占总文档数的最大百分比。**在forcemerge和forcemergeDeletes情况下,同时合并的最大段数,默认无限。**在NATURAL情况下,最大允许生产的合并后段的大小,默认5G。 计算所有段的删除文档的比例,超出这比例的段或者索引一定会被合并。原创 2023-10-10 20:08:34 · 523 阅读 · 0 评论 -
Seata详解
Seata详解原创 2023-10-01 09:10:07 · 241 阅读 · 0 评论 -
SpringBatch简述
如今微服务架构应用增多,但在企业里还存在海量数据的批处理场景。诸如银行的金融机构中,每天有3-4万笔的批处理作业需要处理。而常见处理方案有:1、数据脚本跑批2、批处理框架3、多线程事务处理方案。**健壮性:**不会因为无效数据或错误数据导致程序崩溃;**可靠性:**通过跟踪、监控、日志及相关的处理策略(重试、跳过、重启)实现批作业的可靠执行;**扩展性:**通过并发或者并行技术实现应用的纵向和横向扩展,满足海量数据处理的性能需求;。原创 2023-08-31 16:20:43 · 389 阅读 · 0 评论 -
Spring Security概述
Spring Security是一个功能强大且高度且可定制的身份验证和访问控制框架,除了标准的身份认证和授权之外,它还支持点击劫持,CSRF,XSS,MITM(中间人)等常见攻击手段的保护,并提供密码编码,基于HTTP Basic的身份验证、基于HTTP Digest的身份验证、LDAP认证,Session管理,Remember Me认证,JWT,OAuth 2.0等功能特性。 Spring Security的核心思想是认证和授权,即验证用户身份并授予相应的权限。原创 2023-08-27 17:57:43 · 450 阅读 · 0 评论 -
Gateway简述
在微服务架构中,一个系统会被拆分为很多个微服务。那么作为客户端调用多个微服务接口的地址。另外微服务架构的请求中,90%的都携带认证信息/用户登录信息,都需要做相关的限制管理,API网关由此应允而生。客户端多次请求不同的微服务,增加客户端代码或配置编写的复杂性。认证复杂,每个服务都需要独立认证。存在跨域请求,在一定场景下处理相对复杂。。原创 2023-08-22 22:52:53 · 1567 阅读 · 0 评论 -
Nacos简述
Nacos主要在微服务生态中可以发现、配置和管理微服务,实现动态服务发现和注册、服务配置、DNS服务、服务元数据及流量管理。 目前Nacos支持多种生态,比如SpringCloud、Dubbo、云原生Cloud Native等。 Nacos除了服务的注册发现之外,还支持动态配置服务。并且支持负载均衡以及流量权重,另外提供sdk方式服务注册和发现和DNS服务。并且支持集群,也有心跳检测机制,服务健康检测机制,以及异常上报,有直观的UI方便管理。原创 2023-08-22 20:07:33 · 255 阅读 · 0 评论 -
Sharding-JDBC概述
Sharding-JDBC 是当当网开源的适用于微服务的分布式数据访问基础类库,完整的实现了分库分表,读写分离和分布式主键功能,并初步实现了柔性事务。 **ShardingSphere是一套开源的分布式数据库中间件解决方案组成的生态圈,它由Sharding-JDBC、Sharding-Proxy 和 Sharding-Sidecar这3款相互独立的产品组成。原创 2023-08-11 18:37:17 · 1231 阅读 · 0 评论 -
Docker基础
*而在创建容器的时候,会创建唯一的veth pair分别放到本地主机和新容器中。 主机 A 和主机 B 的网卡一都连着物理交换机的同一个 vlan 101,这样网桥一和网桥三就相当于在同一个物理网络中了,而容器一、容器三、容器四也在同一物理网络中了,他们之间可以相互通信,而且可以跟同一 vlan 中的其他物理机器互联。 如果在企业内部应用,或者做多个物理主机的集群,可能需要将多个物理主机的容器组到一个物理网络中来,那么就需要将这个网桥桥接到我们指定的网卡上。原创 2023-07-06 15:12:06 · 365 阅读 · 0 评论 -
Docker介绍
虚拟化技术什么是虚拟化 在计算机技术中,虚拟化(Virtualization)是一种资源管理技术。它是将计算机的各种实体资源,如:服务器、网络、内存及存储等,予以抽象、转换后呈现出来,打破实体结构间的不可切割的障碍,使用户可以用更好的方式来利用这些资源。 虚拟化的目的是为了在同一个主机上运行多个系统或应用,从而提高系统资源的利用率,并带来降低成本、方便管理和容错容灾等好处。虚拟化技术分类 从实现形式来分,虚拟化技术可分为基于硬件的虚拟化和基于软件的虚原创 2023-07-03 18:43:41 · 2149 阅读 · 0 评论 -
ES-工作原理
搜索引擎是对数据的检索,而数据总体分为两种:结构化数据和非结构化数据。而对于结构化数据,因为他们具有特定的结构,所以一般都是可以通过关系型数据库MySQL/oracle的二维表的方式存储和搜索,也可以建立索引。 对于非结构化数据,对他们进行搜索主要有两种方法:顺序扫描、全文检索。而全文检索就依靠Apache 的 Lucene全文检索引擎工具包。 数据采用乐观锁机制通过算法来判断存储在哪个分片上,先存入缓存,后刷盘到磁盘。原创 2023-06-24 16:40:37 · 2730 阅读 · 0 评论 -
ElasticSearch(ES)介绍
1、ElasticSearch具备非常强的大数据分析能力。虽然Hadoop也可以做大数据分析,但是ElasticSearch的分析能力非常高,具备Hadoop不具备的能力。比如有时候用Hadoop分析一个结果,可能等待的时间比较长。2、ElasticSearch可以很方便的进行使用,可以将其安装在个人的笔记本电脑,也可以在生产环境中,将其进行水平扩展。3、在当今大数据时代,掌握近实时的搜索和分析能力,才能掌握核心竞争力,洞见未来。 ElasticSearch是最受欢迎的企业级搜索引擎。。原创 2023-06-13 12:44:16 · 976 阅读 · 0 评论 -
RocketMQ详解
RocketMQ作为一款纯Java、分布式、队列模型的开源消息中间件,支持事务消息、顺序消息、批量消息、定时消息、消息回溯等。1、NameServer 名称服务器用于保存Broker消息服务器的相关元信息,Producer 和 Consumer 使用的话都需要查找Broker 消息信息。2、在启动时,Broker消息服务器会向NameServer 注册自己的信息,并与NameServer 服务器保持长连接,NameServer会每隔30S会进行检查Broker是否存活。原创 2023-06-07 20:58:27 · 2112 阅读 · 0 评论 -
RabbitMQ详解
消息中间件是在消息的传输过程中保存消息的容器,消息中间件再将消息从它的源中继到它的目标时充当中间人的作用。队列的主要目的是提供路由并保证消息的传递,如果发送消息时接收者不可用,消息队列会保留消息,直到可以成功的传递它为止,当然,消息队列保存消息也是有限期的。RabbitMQ是实现AMQP消息队列和路由功能的进程,内部结构为多个Virtual Host虚拟机,虚拟机中有Exchange和Queue两个组件。原创 2023-06-06 14:00:13 · 743 阅读 · 0 评论