- 博客(76)
- 收藏
- 关注

原创 minio整合springboot解决视频文件上传下载问题
1.本地安装minio提供官网地址下载minio官网下载服务端在服务端所在文件下打开cmd启动命令minio.exe server /data打开地址输入默认的用户名和密码服务地址:http://127.0.0.1:9000默认账号:minioadmin默认密码:minioadmin2.Springboot整合miniomaven仓库将需要的minio依赖复制下载,注意与springboot是否适配https://mvnrepository.com/仓库地址将依赖复制到
2022-03-27 11:20:12
3920
原创 Java面试复习思路
面试不仅是对你技术知识的测试,也是对你解决问题能力、学习能力和团队合作精神的评估。保持积极的态度,诚实回答问题,即使遇到不会的问题也不要紧张,可以尝试着说出你的思考过程。面试失利乃常事,首次尝试未必成。切莫因此而气馁,冷静分析败因踪。回顾过程细思量,自身不足逐一清。汲取经验再前行,开启下次新征程。收拾心情展自信,机会在前定能赢。
2024-06-24 16:57:52
480
原创 解决微信支付定时更新证书间隔问题
throw new IllegalArgumentException(“serialNumber或message或signature为空”);throw new IllegalArgumentException(“credentials或apiv3Key为空”);在原有CertificatesVerifier基础上,增加定时更新证书功能(默认1小时)
2024-06-11 11:01:23
579
1
原创 kafka简介
partition中的数据是有序的,partition间的数据丢失了数据的顺序。副本不会被消费者消费,副本只用于防止数据丢失,即消费者不从为follower的partition中消费数据,而是从为leader的partition中读取数据。Kafka在保证了较高的处理速度的同时,又能保证数据处理的低延迟和数据的零丢失。Apache Kafka是一个分布式的发布-订阅消息系统,能够支撑海量数据的数据传递。每条消息都有一个当前Partition下唯一的64字节的offset,它指明了这条消息的起始位置。
2023-08-02 09:20:18
1155
原创 mqtt理解【持续更新】
mqtt是一种基于发布订阅的轻量级通信协议,协议简历在tcp/ip上,作为一种低开销、低带宽占用的即时通讯协议广泛应用在物联网、小型设备、移动应用。qos是Quality of Service levels,消息可靠性投递的机制。qos=0会发生丢失和消息重复。qos=1会至少发送一次消息给订阅者,会出现消息重复。qos=2保证消息仅发送到目的地一次,带有唯一id的消息会存储2次,一次来自消费者,一次来自生产者。这种模式下网络消耗最高,因为发送方和接收方之间需要2个流。
2023-05-15 16:51:58
875
原创 springboot整合websocket
handleTextMessage()方法通过英文方法名可知,用于处理文本信息。WebSocketSession的方法sendMessage可以向前台发送消息,CloseStatus的getReason方法获得关闭的原因。通过WebSocketSession的sendMessage方法,将创建的TextMessage对象给前台。afterConnectionEstablished方法通过英文方法名可知,用于连接确立之后。setAllowedOrigins()方法设置允许源,传递星号,否则跨域。
2023-04-10 15:52:36
1325
原创 Elasticsearch的安装
①高扩展的分布式全文检索引擎②实时的存储、检索数据③处理大数据PB级别数据④通过Restful API隐藏Lucene复杂性。
2023-04-06 12:59:31
353
原创 rabbitmq的灵魂拷问问题及解答
mq是一个消息队列,mq有三个优点:解耦、异步、削峰。解耦:消费者和生产者,只专注自己的逻辑,生产者只管理发送消息,消费者只管理消费消息。异步:传统方式是等到上一条消息消费完成后再发送下一条消息。生产者在发送消息后不需要关心消费方是否能消费完成,还可以继续发送其他消息。削峰:传统的消息通讯,消费者一下子发送大量消息到消费者,消费者的处理压力很大。如果使用mq达到缓冲,一旦流量超出消费者处理范围,只需要逐条慢慢消费。可。
2023-03-29 17:15:12
248
原创 springboot整合rabbitmq优先队列
优先队列,是消息阻塞中形成的,所以要先生产消息,后开启消费者。否则生产一条消息消费一条消息,不存在阻塞,无法排序。
2023-03-27 15:55:06
290
原创 springboot整合rabbitmq回退消息
果发现该消息不可路由,那么消息会被直接丢弃,此时生产者是不知道消息被丢弃这个事件的。那么如何让无法被路由的消息帮我想办法处理一下?最起码通知我一声,我好自己处理啊。通过设置 mandatory 参数可以在当消息传递过程中不可达目的地时将消息返回给生产者。在仅开启了生产者确认机制的情况下,交换机接收到消息后,会直接给消息生产者发送确认消息,如。简单说RoutingKey错误,交换机正常,会直接丢西消息。
2023-03-27 14:44:44
398
原创 springboot整合rabbitmq发布确认
出现情况:在生产环境中rabbitmq服务器由于一些不明原因,导致rabbitmq重启,在重启期间生产者消息投递失败,导致消息丢失,需要手动处理和恢复。在rabbitmq集群不可用,无法投递消息的时候。
2023-03-27 14:24:49
419
原创 springboot的异步编程
第一步:线程池配置类上使用@EnableAsync,@Bean注解定义线程池名称。配置线程池的大小、最大线程数、队列容量、活跃时间、线程名称前缀、拒绝策略。第二步:使用@Async(“线程池名称”)实现异步编程。异步编程的含义:当前任务不受其他任务影响。springboot的异步编程。
2023-03-16 16:20:09
172
原创 rabbitmq的七种工作模式之五种
Exchange交换机只负责转发消息,不具备存储消息的能力,因此如何没有任何队列与Exchange绑定,或者没有符合路由规则的队列,那么消息会丢失!注意:channel通道在发布消息时的routingKey是队列名称匹配正则,也就是说routingKey决定向哪个队列发送消息。类比:比工作队列增加了交换机、队列。结构:1个生产者+1个交换机+多个队列+多个消费者。结构:1个生产者+1个交换机+多个队列+多个消费者。结构:1个生产者+1个交换机+多个队列+多个消费者。结构:1个生产者+1个队列+1个消费者。
2023-03-14 09:39:45
332
原创 rabbitmq在linux系统下安装步骤
重要信息:rabbitmq是用erlang语言开发的,所以erlang的版本要和rabbitmq版本对应。查找loopback_users,去掉的注释,记住这是用户,i是修改。将rabbitmq软件包放在英文文件夹下,路径中不要有中文,防止因为一些乱码的问题。第四步:上传后,进入目录,分别安装erlang环境,socat,rabbitmq。重要信息:RabbitMQ Tutorials手册,描述了工作模式。第五步,启动服务,停止服务,重启服务。第七步,访问管理控制台地址。
2023-02-27 10:32:09
873
原创 Error running ‘XXXApplication‘: Command line is too long. Shorten command line forXXX
Error running 'XXXApplication': Command line is too long. Shorten command line forXXX
2023-02-08 13:23:20
258
原创 flowable知识点理解
这些表存储运行时信息,例如流程实例(process instance)、用户任务(user task)、变量(variable)、作业(job)等。将存档所有流程实例及活动实例,并保持变量值与提交的表单参数的同步,以保证所有通过表单进行的用户操作都可追踪、可审计。这个级别存储所有audit级别存储的信息,加上所有其他细节(主要是流程变量的更新)。可以使用DDL文件(默认的包含mysql的文件)。将已有的BPMN20.XML存储入数据库,流程定义转换为内部的、可执行的对象模型。②流程转为可执行的对象模型。
2022-11-25 10:32:57
1352
原创 报错error: remote origin already exists.gitee-将已经写好的工程放入gitee仓库
本文解决将自己写好的工程放入gitee仓库里。先到需要上传项目的文件夹下。
2022-11-23 17:26:57
142
原创 docker安装部署minio并整合springboot封装
所谓的挂载其实就是将容器目录和宿主机目录进行绑定了,操作宿主机目录,容器目录也会变化,操作容器目录,宿主机目录也会变化。4.创建Minio挂载的配置文件( /home/minio/config)和存储上传目录( /home/minio/data)假如没有使用-v挂载目录,那他在宿主机的存储位置的文件会直接删除的。还有容器当中的目录也是必须是绝对路径(根路径就是带/的)。5.安装容器相关的。注意在执行命令的时候,他是会自动在宿主机当中创建目录的。minio所上传的文件默认都是存储在容器的data目录下的!
2022-10-24 17:10:33
4175
原创 docker安装postgis
5.安装容器相关的。docker-ce(社区版)docker-ee(企业版)8.新建一个表创建geometry类型看看是否可以。3.检查容器,列出正在运行的postgis容器。4.安装容器之前,更新yum软件包索引。4.启用组件(如果已存在不用修改)7.验证是否安装成功docker。1.拉取postgis的镜像。9.创建geometry类型。2.安装需要的yum安装包。2.创建postgis容器。6.进入postgis容器。2.查询postgis版本。3.加载postgis组件。7.让用户有创建数据权限。
2022-10-14 14:38:16
2691
2
原创 linux系统安装redis步骤
8.创建文件夹myconfig,在opt目录下redis.conf文件复制到myconfig中。1.使用xftp7将redis解压包放入opt文件夹中。10.用配置文件启动redis-server服务端。7.进入默认安装路径/usr/local/bin。/daemonize 搜索daemonize字符。5.在redis解压后的文件夹里使用编译命令。9.将redis.conf文件里修改成yes。3.进入redis解压后的文件夹里,11.用redis-cli启动客户端。6.redis解压后的文件安装命令。
2022-09-28 11:00:40
544
1
原创 postGIS函数
ST_ExteriorRing(geometry) —— 以线串的形式返回多边形最外面的环。ST_NumGeometries(geometry) —— 返回集合中的组成部分的数量。ST_GeometryN(geometry, n) —— 返回集合中指定的组成部分。ST_Area(geometry) —— 返回集合中所有多边形组成部分的总面积。ST_GeometryType(geometry) —— 返回几何图形的类型。ST_Perimeter(geometry) —— 返回所有环的长度。
2022-09-26 16:05:38
867
原创 运维技术linux、nginx
③配置nginx ./configure --prefix=/usr/local/nginx。⑤make install 安装nginx(把生成的2进制到prefix指定的安装路径里)java -jar psm.jar --server.port=端口号。在/usr/etc/profile最后一行配置。④make 编译nginx(生成2进制)⑧./nginx 执行nginx启动。①解压 tar -zxvf 文件包。①解压tar -zxvf 文件包。②进入nginx目录 sbin下。1.查找nginx位置。.
2022-08-30 17:12:51
683
原创 spring.profiles.active切换环境
标签下配置属性,切换环境时,使用activation。application.yml中配置。
2022-08-25 10:20:26
457
原创 Java设计模式-行为型设计模式
命令设计模式是行为设计模式,它的对象用来封装执行操作、业务操作或触发时间所需的信息。命令对象包含方法名称,接收对象的引用和方法参数。策略模式是从宿主类中删除算法,再放入到单独的类中,以便于再运行时选择相同的变成上下文中选择不同的算法(即策略)。策略模式可以在一群相关但不相同的代码中选择,提供一种简单的方法来根据客户端上下文,在运行时选择算法。由开/关原理驱动这种模式基于开放/封闭原则。我们不需要修改上下文[关闭修改],而是可以选择和添加任何实现[开放扩展]。比如在——我们不需要改变排序方法。...
2022-07-25 16:15:47
146
原创 Java设计模式-结构设计模式
代理通常分为四种类型-远程代理——需要做额外的工作,为了与远程对象交谈。理对象代表原始对象进行这种通信,而客户端则专注于真正的谈话要做。虚拟代理——延迟昂贵对象的创建和初始化,直到需要时才按需创建对象。Hibernate创建的代理实体是虚拟代理的示例。保护代理——帮助实现对原始对象的安全性。他们可以在方法调用之前检查访问权限,并根据结论允许或拒绝访问。智能代理–当客户端访问对象时执行额外的内务处理工作。一个例子可以是在访问之前检查真实对象是否被锁定,以确保没有其他对象可以更改它。...
2022-07-15 14:58:28
134
原创 Java设计模式-创造型设计模式
使用场景:构建器设计模式是构建复杂对象的另一种方法,仅当我们想要使用相同的对象构建过程构建不同类型的不可变对象时才应使用。Builder模式:将复杂对象的构建与其表示分离,以便相同的构建过程可以创建多个不同的对象。Builder代码User.javajava类似优势:减少构造器的参数,高度可读的链式方法调用中,创建实例无需传递null。实例始终以完整状态实例化,使用链式方法调用逐步添加属性。可以构建不可变对象,无需复杂创建。缺点:代码冗长使用场景原型设计模式用于应用程序需要创建一个类的大量实例
2022-07-08 14:16:29
707
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人