中间件以及框架
文章平均质量分 91
Happy编程
这个作者很懒,什么都没留下…
展开
-
RocketMQ_高级功能
这就达到了消费端的高可用性。需要注意的是,集群模式下,queue都是只允许分配只一个实例,这是由于如果多个实例同时消费一个queue的消息,由于拉取哪些消息是consumer主动控制的,那样会导致同一个消息在不同的实例下被消费多次,所以算法上都是一个queue只分给一个consumer实例,一个consumer实例可以允许同时分到不同的queue。对于顺序消息,当消费者消费消息失败后,消息队列 RocketMQ 会自动不断进行消息重试(每次间隔时间为 1 秒),这时,应用会出现消息消费被阻塞的情况。原创 2023-06-17 14:35:06 · 2715 阅读 · 0 评论 -
RocketMQ_介绍以及基础入门
比如物流系统发生故障,需要几分钟才能来修复,在这段时间内,物流系统要处理的数据被缓存到消息队列中,用户的下单操作正常完成。以电商应用为例,用户创建订单后,如果耦合调用库存系统、物流系统、支付系统,任何一个子系统出了故障或者因为升级等原因暂时不可用,都会造成下单操作异常,影响用户使用体验。MQ的加入大大增加了系统的复杂度,以前系统间是同步的远程调用,现在是通过MQ进行异步调用。A系统处理完业务,通过MQ给B、C、D三个系统发消息数据,如果B系统、C系统处理成功,D系统处理失败。JDK1.8(64位)原创 2023-06-17 09:58:05 · 1636 阅读 · 0 评论 -
云原生_kubernetes(k8s)_入门
有了这些操作,就可以在kubernetes集群中实现一个服务的简单部署和访问了,但是如果想要更好的使用kubernetes,就需要深入学习这几种资源的细节和原理。 默认情况下,kubernetes集群中的所有的Pod都是可以相互访问的。kubernetes通过将集群内部的资源分配到不同的Namespace中,可以形成逻辑上的"组",以方便不同的组的资源进行隔离使用和管理。Pod控制器用于pod的管理,确保pod资源符合预期的状态,当pod的资源出现故障时,会尝试进行重启或重建pod。原创 2023-04-08 10:29:45 · 294 阅读 · 0 评论 -
云原生_kubernetes(k8s)介绍
kubernetes,是一个全新的基于容器技术的分布式架构领先方案,是谷歌严格保密十几年的秘密武器----Borg系统的一个开源版本,于2014年9月发布第一个版本,2015年7月发布第一个正式版本。 kubernetes的本质是一组服务器集群,它可以在集群的每个节点上运行特定的程序,来对节点中的容器进行管理。命令式对象配置的方式操作资源,可以简单的认为:命令 + yaml配置文件(里面是命令需要的各种参数)如果资源不存在,就创建,相当于 kubectl create。原创 2023-04-05 08:10:17 · 870 阅读 · 4 评论 -
ELK_Elasticsearch环境搭建
启动Elasticsearch:bin\elasticsearch.bat,es的特点就是开箱即,无需配置,启动即可。Red主分片不可用,集群不可用。1、kibana是es数据的前端展现,数据分析时,可以方便地看到数据。会默认随机指定一个名字,建议指定一个有意义的名称,方便管理一个或多个节点组成一个。集群,集群是一个逻辑的概念,节点是物理概念,后边章节会详细介绍。日志文件设置,ES使用log4j,注意日志级别的配置。bin:脚本目录,包括:启动、停止等可执行脚本。文件夹,可以设置多个存储路径,用逗号隔开。原创 2023-02-18 14:30:00 · 639 阅读 · 0 评论 -
ELK_Elasticsearch基础介绍
在分布式环境下,任何一台机器都会随时宕机,如果宕机,index的一个分片没有,导致此index不能搜索。所以,为了保证数据的安全,我们会将每个index的分片经行备份,存储在另外的机器上。开发时,引入lucen的jar包,通过api开发搜索相关业务。每个索引里都可以有一个或多个type,type是index中的一个逻辑数据分类,一个type下的document,都有相同的field。Elasticsearch作为传统数据库的一个补充,提供了数据库所不不能提供的很多功能,如全文检索,同义词处理,相关度排名。原创 2023-01-28 15:07:13 · 963 阅读 · 0 评论 -
Linux(CentOs)通过tar安装redis
目录一、安装包下载二、上传和解压三、编译和安装四、启动服务五、设置后台运行官网下载地址:https://redis.io/download/csdn下载地址(我下载后上传的安装包):redis-6.0.16.tar.gz选择自己喜欢的版本,本次演示安装使用的6.0的版本。将下载好的安装包redis-6.0.16.tar.gz文件上传到linux的相应路径,然后执行tar命令进行解压,解压完成后,进入到redis-6.0.16文件目录。然后进入第三步的编译和安装流程。tar -xzvf redis-6.0.1原创 2022-07-11 06:00:00 · 1094 阅读 · 0 评论 -
Zookeeper的Leader选举
一、前言 前面学习了Zookeeper服务端的相关细节,其中对于集群启动而言,很重要的一部分就是Leader选举,接着就开始深入学习Leader选举。二、Leader选举 2.1 Leader选举概述 Leader选举是保证分布式数据一致性的关键所在。当Zookeeper集群中的一台服务器出现以下两种情况之一时,需要进入Leader选举。 (1) 服务器初始化启动。 (2) 服务器运行期间无法和Leader保持连接。 下面就两种情况进行分析讲解。 1. 服务器启动时期的Leader选举 若进原创 2022-06-20 20:33:41 · 2252 阅读 · 0 评论 -
20道常见的kafka面试题以及答案
1、kafka的消费者是pull(拉)还是push(推)模式,这种模式有什么好处?2、kafka维护消息状态的跟踪方法3、zookeeper对于kafka的作用是什么?4、kafka判断一个节点还活着的有那两个条件?5、讲一讲 kafka 的 ack 的三种机制6、kafka 分布式(不是单机)的情况下,如何保证消息的顺序消费?7、kafka 如何不消费重复数据?比如扣款,我们不能重复的扣。8、讲一下kafka集群的组成?9.........原创 2022-06-18 13:21:51 · 108598 阅读 · 12 评论 -
zookeeper进阶(watcher机制、数据同步流程、分布式锁)
整个watcher事件机制,分为客户端注册、服务端处理、服务端触发通知、客户端回调四个过程。[该类型的内容暂不支持下载]其中客户端注册 watcher 有三种方式,调用客户端 API 可以分别通过 getData、exists、getChildren 实现,,以 exists 方法举例说明其原理Java public class WatcherDemo implements Watcher { static ZooKeeper zooKeeper; static {原创 2022-06-17 20:15:35 · 938 阅读 · 0 评论 -
zookeeper快速入门
ZooKeeper 是 Apache 软件基金会的一个软件项目,是一个树形目录服务。Zookeeper翻译过来就是动物管理员,他还是用来管Hadoop(大象)、Hive(蜜蜂)、Pig(小猪)的管理员。简称zk。Zookeeper是一个分布式的、开源的分布式应用程序的协调服务。Zookeeper是一个典型的分布式数据一致性的解决方案,分布式应用程序可以基于它实现诸如数据发布/订阅、负载均衡、命名服务、分布式协调/通知、集群管理、Master 选举、分布式锁和分布式队列等功能。zookeeper 提供的名称空原创 2022-06-16 23:22:13 · 957 阅读 · 0 评论 -
设计模式_spring框架中常用的8种设计模式
spring框架中常用到的8种设计模式清单如下:设计模式使用地方备注工厂模式BeanFactory ApplicationContext单例模式Spring中的Bean代理模式Spring AOPjava反射实现动态代理模板方法模式Spring中以Template结尾的类使用继承的方式实现观察者模式Spring事件驱动模型适配器模式Spring AOP中的AdvisorAdapter Spring MVC中的HandlerAdapter装饰器模式Spring中含有Wrapper和含有Decora原创 2022-06-11 11:24:38 · 12650 阅读 · 0 评论