自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(74)
  • 收藏
  • 关注

原创 分布式搜索-elaticsearch基础 安装es

在ik文件config目录里边的xml文件。

2024-05-14 16:50:32 885

原创 分布式搜索-elaticsearch基础 概念

基本概念总结:

2024-05-14 10:27:45 216

原创 SpringAMQP-消息转换器

这边发送消息接收消息默认是jdk的序列化方式,发送到服务器是以字节码的形式,我们看不懂也很占内存,所以我们要手动设置一下 我这边设置成json的序列化方式,注意发送方和接收方的序列化方式要保持一致 不然回报错。测试失败是这样:如果接收者和发送者的序列化不一样会报这样的错。向object.queue队列发送map的消息。在配置类里配置一下:接收方和发送方都要有。引入依赖,建议直接在父工程引入。

2024-05-13 16:05:45 251

原创 SpringAMQP 发布订阅-TopicExchange

用@RabbitListener注解实现交换机和队列的绑定以及BingingKey的设置,TopicExchange的特点就是可以用正则表达式匹配,可以看到队列1的RoutingKey China.# 的意思接收消息的前提是china.开头。#.news 的意思是该队列接收消息的前提是以 .news结尾。这里看我发送消息的RoutingKey是china.news 这两个队列都满足了请求 所有都接收到了。这里的末尾是news 只有第二个队列匹配到了 所以第二个队列接收。

2024-05-13 15:28:58 218

原创 SpringAMQP 发布订阅-DirectExchange

路由模式模型。

2024-05-13 11:19:21 581

原创 SpringAMQP发布、订阅——Fanout Exchange交换机代码模拟

MQ提供了很多交换机模型 其中常用的有下边三个:Fanout:广播Direct:路由Topic:话题转换器只负责消息路由,不是存储,路由失败则消息丢失利用SpringAMQP演示FanoutExchange的使用:实现代码:在consumer编写工具类,实现交换机和队列的绑定:在consumer实体类里编写接收两个队列请求的方法:在publisher里编写测试方法 模拟给交换机发送消息:然后发送请求和启动consumer类,在控制台查看:这里看到我们只发送了一条消息,但是两个consume

2024-05-11 17:15:21 427

原创 SpringAMQP Work Queue 工作队列

相较于之前的基础队列,该队列新增了消费者 不再是一个,所以我们通过代码模拟出两个consumer消费者。在原来的消费者类里写两个方法 其中消费者1效率高 消费者2效率低。发送后让观察控制台消费者处理情况 会发现两者处理的效率不一样但是处理的消息是平均分配的,一人25条,这是因为Rabbit有个。不管执行消费者效率,消费者都会提前在队列里预取一个消息,最后效果就是平均分配。在publisher提供者编写测试方法 一次发送50条消息。这个预取机制可以在yml配置里修改。

2024-05-11 16:04:56 381

原创 RobbitMQ基本消息队列的消息接收

4.启动项目的启动类 确保该队列存在且有消息 不然会报错。1.先给工程引入依赖 父工程有了子工程就不用导了。--AMQP依赖,包含RabbitMQ-->2.配置yml文件 里边的东西记得改成自己的。

2024-05-10 17:47:27 361

原创 RobbitMQ基本消息队列的消息发送过程

RabbitMQ官网代码示例:对着代码看应该能看明白publisher:消息发送者的代码示例消息接收者代码示例.

2024-05-10 16:37:29 395 1

原创 FinalShell连接虚拟机Linux系统连接超时

报错信息。

2024-05-09 19:27:54 381

原创 服务异步通讯MQ

第一种:在线拉取 docker pull rabbitmq:3-management。docker load -i mq.tar 加载进去。第二种:将已有的安装包放入再用load加载。基本消息队列(BasicQyeue),广播:Fanout Exchange,路由:Direct Exchange,工作消息队列(workQueue).主题:Topic Exchange.我这里放到tmp包里边。然后:cd /tmp。

2024-05-09 17:00:56 243

原创 Docker镜像仓库-在私有镜像仓库推送或拉取镜像

推送成功后在主机访问镜像仓库可以看到 这里已经有个镜像了。而且可以查看镜像的详细信息。这里也是打包成功了:docker images 可以查看到。docker rmi 名字:版本。

2024-05-04 15:22:04 283

原创 Docker私有镜像仓库搭建 带图形化界面的

打开要修改的文件:我这里直接在Finashell的图形化界面里打开修改了。这里的地址要改成自己的虚拟机地址。然后我再tmp里创建了一个包 registy-ui 在包里创了个yml后缀的文件。搭建镜像仓库可以基于Docker官方提供的DockerRegistry来实现。让这段配置信息粘上去:在Finalshell的图形化界面里边搞。

2024-05-04 14:48:20 514

原创 Dockerfile自定义镜像

【代码】Dockerfile自定义镜像。

2024-05-04 12:15:19 706

原创 用Docker 创建并运行一个MySQL容器

v /tmp/mysql/conf/hmy.cnf:/etc/mysql/conf.d\hmy.cnf\挂载的宿机目录文件:容器目录。这里-p表示创建多级目录 创建好之后可以查看 然后把hmy.cnf这个配置文件拉进去 这个是课上提供的配置文件。-v /tmp/mysql/data:/var/lib/mysql\挂载的数据目录:容器目录(需要在官网里看)因为文件比较大可能时间比较长,我是跟着黑马的课走的 课程提供的有文件,我就用已有的资源了。musql:tag :输入的是自己mysql的版本。

2024-04-30 17:30:37 1548 1

原创 Docker基本操作 挂载数据卷

命令:docker run --name mn -p 80:80 -v html:/usr/share/nginx/html -d nginx。将容器挂载到一个数据卷之后 可以在查看数据卷的目录 在数据卷的目录可以找到容器的内容。这里的数据卷如果没有提前创好会自动创建。在主机可以通过映射访问到。

2024-04-30 10:16:55 446 1

原创 Docker基本操作 数据卷

docker volume create html :html是要创建的数据卷的名字。这里他原来创的那两个删了 我自己创的html没删 这里不太理解 我新创的应该没用啊。docker volume inspect html:查看数据卷的详细信息。docker volume prune:删除未使用的volume。rm:删除一个或多个指定的volume;这里的前三个是docker自动创的 html是我手动创的。prune:删除未使用的volume;ls:列出所有的volume;这里手动把自己创的html删了。

2024-04-29 16:31:47 335

原创 Gateway跨域问题处理

CORS 逻辑就是浏览器访问的时候问一下让不让跨域访问 让的话通知给浏览器。

2024-04-29 15:44:07 143

原创 Docker 操作redis

例:docke rexec -it mr redis-cli //进入mr这个容器并执行 redis-cli这个指令。docke rexec -it mr bash:进入容器 mr是容器的名字 就是上边起的redis容器mr。进入redis容器内部后:redis-cli 启动redis客户端 然后就可以执行redis的命令了。docker删除容器命令:docker rm 容器名称 (默认只能删除停止运行的容器)运行成功之后运行docker ps 可以查看运行中的所有容器以及状态。

2024-04-29 15:43:40 720

原创 Docker基本操作 容器相关命令

sed -i 's#Welcome to nginx#传智教育欢迎您#g' index.html sed -i 's#<head>#<head><meta charset="utf-8">#g' index.html。docker ps:查看所有运行的容器及其状态,默认只展示运行中的容器 可以加个参数-a展示所有容器;docker logs mn:查看日志 ,这个必须要跟参数 这里的mn参数指的是上边创建的容器的名字。持续日志输出:docker logs -f -mn:持续日志输出。

2024-04-26 16:32:17 679 2

原创 Docker基本操作 Linux里边操作

镜像打包:docker save -o nginx.tar nginx:lastest。docker rmi:删除镜像 后边可以跟镜像的名字或者id指定要删除的镜像;删除镜像指令:docker rmi [镜像名字] 或者[镜像id]加载镜像:docker load -i nginx.tar。docker save :打包镜像 后边有用法;docker images:查看所有镜像;docker pull:拉取镜像;docker load:加载镜像;拉取镜像:docker pull。

2024-04-26 14:45:32 264 2

原创 Docker容器

容器:可以理解为将应用程序运行起来的一个进程,是相互独立的,Linux将这些‘进程’隔离起来,类似于一个个沙盒,容器可以读取镜像里边的内容,但是不能修改。1.可以讲程序及其依赖,运行环境一起打包为一个镜像,可以迁移到任意Linux操作系统。docker build:创建镜像,docker守护进程接收到该请求后会创建镜像。docker run:运行镜像,docker守护进程接收到该请求后会创建容器。镜像:理解为一个文件,里边存储了应用程序所需要的一些文件,镜像只读。docker pull:拉取镜像,同理。

2024-04-25 11:28:34 209 2

原创 GlobalFilter全局过滤器

路由器过滤和defalutFilter过滤器的order由spring指定,默认是按照生命顺序从1递增,当他们order一样时候,会按照defaultFilter>路由过滤器>GlobalFilter的顺序执行。这个跟跟刚才那个GatewatFilert默认全局配置的效果是一样的,但是那个是配置,只能使用已有的进行配置,GlobalFilter全局过滤器是通过类实现的 可以自己用代码实现拦截后要处理的逻辑。第一个参数:请求上下文,可以获取到resquest和respones的信息,也可以添加信息;

2024-04-22 16:20:05 476

原创 路由过滤器GatewayFilter

过滤器工厂:spring提供了31种不同的路由过滤器工厂。spring的官方地址 可以在里边看相关文档。

2024-04-22 15:27:46 390

原创 Gateway断言工厂

这个用的时候可以在官网上查。

2024-04-22 14:46:34 536

原创 Gateway网关

创建新的module,引入SpringCloudGateway的依赖和nacaos的服务发现依赖。springCloud中有两种gateway 和zuul两种。把网关理解成小区保安。

2024-04-22 14:35:25 298 1

原创 Feign性能优化

推荐用第二个 用那个就指定那个。缺点:会增加代码耦合。

2024-04-22 13:53:52 147

原创 http客户端Feign

配置Feign的两种方式;方式一:通过配置文件方式方式二:通过代码配置。

2024-04-16 17:01:47 266

原创 nacos配置本地集群,反向代理之后报错,并且输入端口找不到本地Nacos服务

我看黑马的课,配置Nacos集群和反向代理之后输入端口无法访问nacos 搜了很多才发现因为nginx反向代理配置的有问题。

2024-04-16 15:42:27 307 2

原创 Nacos多服务共享配置 和集群搭建

5.配置好后将nacos文件(bin前边哪一级)复制成三份,再分别配置端口为8845,8846,8847。1.根据黑马的课:我们下载nacos,有安装包 解压到没中文的目录。6.分别启动(在bin目录下打开黑窗口输入startup.cmd)2.进入conf目录,修改配置名字为cluster.conf。3.然后进入cluster.conf,添加内容。4.修改application配置文件的内容,4.在文件里找到这几行 把前边的#删了.在nginx的配置文件里加入这几行。

2024-04-16 15:34:46 317

原创 Nacos配置热更新

创建一个配置类,专门管理配置信息。

2024-04-16 11:22:52 250

原创 Nacos配置管理

配置id是唯一的,一般按格式来,Group分组一般不用管 ,配置内容不需要把全部的配置放进去,只需要把又可能要更换的配置写上去就行。

2024-04-16 10:35:35 219

原创 Nacos注册中心

非临时示例(亲儿子示例):注册中心每搁一段时间主动询问是否健康,检测到不健康标记为不健康。临时示例:每隔几十秒发送给注册中心让他知道自己还活着,如果注册检测到不健康就干掉。Nacos与eureka的差别。2.将服务放入命名空间。

2024-04-15 16:09:04 172

原创 Ribbon负载均衡

饥饿加载:Ribbon默认采用懒加载,第一次访问时才会去创建LoadBalanceClient,请求时间会很长,饥饿加载则会在项目启动时创建,降低第一次访问的耗时,通过下面配置开启饥饿加载。clients是个集合 可以放多个。

2024-04-15 09:34:38 594

原创 微服务学习 Eureka注册中心

服务调用时候出现问题,当服务者很多时候,比如不同的端口。消费者如何找到服务者的地址?又如何判断服务者是否健康。2.编写启动类,添加@EnableEurekaServer注解。注册user-service //注册服务到Eureka中。这里在启动类上加 表示一个开启Eureka服务的开关。总结:如果有多个服务提供者,消费者该如何选择?在Eureka注册中心拉取服务。3.添加yml文件,编写配置。

2024-04-12 19:17:30 404

原创 SpringCloud 微服务远程调用关系

提供者和消费者概念:

2024-04-12 16:53:57 119 1

原创 SpringCloud框架 服务拆分和远程调用

数据库隔离避免耦合度过高,不同模块将自己的业务暴露为接口,供其他微服务调用。1.在启动类/配置类里注册RestTemplate启动对象。微服务远程调用技术Rest 在后端实现发送http请求。2.注入Bean对象使用。

2024-04-12 16:47:23 453

原创 SpringCloud学习笔记 (认识微服务)

虽然很多 但是不着急 慢慢来。如果版本不兼容会出现问题哦。

2024-04-12 15:25:40 218

原创 蓝桥杯学习笔记(贪心)

每次谈判,小蓝只能邀请两个部落参加,花费的金币数量为两个部落的人数之和,谈判的效果是两个部落联合成一个部落(人数为原来两个部落的人数之和)。有一年发生了灾荒,年轻的政治家小蓝想要说服所有部落一同应对灾荒,他能通过谈判来说服部落进行联台。输入的第一行包含一个整数 1,表示部落的数量第二行包含 几个正整数,依次表示每个部落的人数。在很久很久以前,有几个部落居住在平原上,依次编号为1到n。循环排序 数组或集合计算前两个值之和 放入新数组 再让和累加。解题主要思想是贪心,只要搞明白之后就能理解了。

2024-03-25 10:54:24 312

原创 java复习笔记 string和stringbuilder

这个思路 倒着循环 挨个判断 'a'^=32;可以让大写转成小写 小写转成大写。

2024-03-23 12:34:49 235

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除