- 博客(255)
- 资源 (3)
- 收藏
- 关注
原创 Minio分布式多节点多驱动器集群部署
在 Linux 环境下部署 MinIO 分布式存储集群的详细步骤。这些步骤涵盖了从前期准备到最后配置的各个环节,涉及到集群节点的设置、存储和网络配置、MinIO 服务的安装与启动、以及高可用性和负载均衡的配置等
2025-02-21 17:00:36
1409
原创 Minio集群模式报错解决:Unable to use the drive XXX: drive not found, will be retried
MinIO 在启动时需要能够访问其数据存储目录。虽然给磁盘目录赋予了 minio-user 用户权限,但如果没有递归地为该目录下的所有子目录和文件设置正确的权限,就会导致 MinIO 无法正确访问这些目录,从而导致启动失败。为数据目录递归赋予正确权限:最初的操作只是为数据目录本身赋权,而没有递归到该目录下的所有文件和子目录。MinIO 启动时会尝试读取和写入这些目录,若没有足够权限,就会出现“drive not found”错误。使用 -R 选项递归赋予权限可以解决问题
2025-02-21 16:45:22
976
原创 VMware新建centos7虚拟机并配置
点击网络和主机名配置,选择ipv4设置,输入ip地址、子网掩码、网关和DNS服务器。由于我在内网搭建的虚拟机,所以需要发给网管的mac地址和配置的ip进行。开启虚拟机,选择后回车。
2025-02-19 16:43:31
417
原创 消息队列基础知识和主流消息队列对比
消息队列(Message Queue,MQ)本质上是一个数据存储队列,用于临时保存和传输消息。消息中间件是一种基于高效、可靠的消息传递机制,实现跨平台数据通信的工具。它在分布式系统中发挥重要作用,主要用于异步处理、解耦应用、削峰限流、消息通讯,从而提升系统的性能、可用性、扩展性,并确保数据的最终一致性。目前,常见的消息队列技术包括等,每种方案在不同场景下具有独特优势。
2025-02-13 16:12:28
1026
原创 CentOS7 安装配置FTP服务
FTP(File Transfer Protocol,文件传输协议)是一种用于在计算机之间传输文件的网络协议,基于客户端-服务器模式,运行在TCP/IP网络上。它主要用于在本地计算机和远程服务器之间上传和下载文件。
2025-02-12 10:36:59
1517
原创 解决在linux执行删除时报错:Read-only file system
```bashsudo umount /mnt/sda1```然后运行 `fsck` 修复文件系统:```bashsudo fsck /dev/sda1```修复完成后,重新挂载文件系统:```bashsudo mount /mnt/sda1```
2025-01-07 17:46:57
1071
原创 Elasticsearch 分片恢复失败及解决方案
在使用 Elasticsearch 时出现分片未被分配的情况是比较常见的,尤其是在节点出现故障或重启的情况下。上面的错误日志表明,某个分片由于无法获得锁,导致恢复失败,并且分配失败,最终被丢弃。这种问题通常发生在 Elasticsearch 集群中的一个或多个节点无法成功分配或恢复特定的分片。
2025-01-06 10:06:10
597
原创 Elasticsearch 单节点安全配置与用户认证
安全扫描时发现了一个高危漏洞:Elasticsearch 未授权访问。在使用 Elasticsearch 构建搜索引擎或处理大规模数据时,需要启用基本的安全功能来防止未经授权的访问。本文将通过简单的配置步骤,为单节点 Elasticsearch 实现最基本的安全功能,包括启用 Elasticsearch 自带的安全功能和配置传输层 SSL,以确保数据传输的加密和访问权限的严格管理。(elaticsearch版本7.9.2)
2024-12-04 08:00:00
1485
原创 基于 JAXB 注解方式解析 XML 文件与批量导入实现
本文以实际的项目需求为例,分享如何基于实现 XML 文件的解析,并将解析后的数据导入数据库本文主要使用的javax.xml是 Java 自带的包,通常用来处理 XML 和 Java 对象之间的转换。具体来说,这些类属于,用于将 Java 对象序列化为 XML,或者将 XML 反序列化为 Java 对象。被迁移到了模块化系统,并且从 JDK 11 开始默认支持。如果你使用的 JDK 是 11 或以上版本,需要通过添加外部依赖来使用这些类
2024-11-29 11:52:16
1148
原创 Spring Boot + Vue 基于 RSA 的用户身份认证加密机制实现
RSA算法是一种非对称加密算法,与对称加密算法不同的是,RSA算法有两个不同的密钥,一个是公钥,一个是私钥RSA公开密钥密码体制是一种使用不同的加密密钥与解密密钥,“由已知加密密钥推导出解密密钥在计算上是不可行的”密码体制在公开密钥密码体制中,加密密钥(即公开密钥)PK是公开信息,而解密密钥(即秘密密钥)SK是需要保密的。加密算法E和解密算法D也都是公开的。虽然解密密钥SK是由公开密钥PK决定的,但却不能根据PK计算出SK。
2024-11-21 09:16:59
1148
原创 Linux安装与配置 Gitblit 1.9.3 服务
默认情况下,Gitblit 使用端口 8080 和 8443,可以根据需要更改端口设置。使用这种方式启动 Gitblit 后,如果关闭 SSH 连接,Gitblit 服务也会停止。点击下载链接,将 Gitblit 1.9.3 的安装包下载到本地。为了避免每次重启 SSH 会话时需要手动启动 Gitblit,可以创建一个。将下载的 Gitblit 安装包上传到服务器,建议上传到。来设置服务单元,确保 Gitblit 在后台持续运行。服务单元来自动启动 Gitblit。将下载的文件上传到服务器的。
2024-11-07 09:47:41
1568
原创 MySQL报错解决:The user specified as a definer (‘root‘@‘%‘) does not exist
这个问题通常是由于 MySQL 用户的访问权限设置不当,特别是root用户没有正确的全局权限。只需要为root用户授予全局访问权限并刷新权限,通常就可以解决该问题。如果视图仍然无法正常工作,可以检查并修改视图的Definer用户。
2024-11-07 09:32:54
1184
原创 使用 Elasticsearch Reindex API 迁移数据
创建新索引:根据需求创建一个新索引,新旧索引的字段名称和数据类型必须一致数据完整性:确保在迁移过程中,旧索引不再进行写入操作,以避免数据不一致迁移数据:使用 Reindex API 将旧索引中的数据重新索引到新索引中。
2024-09-21 09:21:57
1336
1
原创 Elasticsearch 检索优化:停用词的应用
在 Elasticsearch 中,可以通过修改索引的settings来定义自定义分析器,并为其添加停用词过滤器。可以通过stopwords参数指定停用词列表,支持内置语言值或自定义停用词文件。如果内置的停用词列表不满足需求,可以自定义停用词过滤器。},
2024-09-21 09:11:46
1553
原创 Flink1.18.1 Standalone模式集群搭建
本文将介绍如何在 Linux 服务器上搭建 Flink Standalone 集群,包含环境准备、配置修改和任务提交的步骤。在 Flink 集群中,各个节点之间需要免密登录。建议在每个节点上配置环境变量,方便使用 Flink 命令。从 Apache Flink 官方下载页面获取。,并在每台服务器上安装 JDK 8 以上版本。为了搭建高可用的 Flink 集群,需确保。,应能看到 Flink 的 Web UI。将安装好的 Flink 目录分发到。公钥生成后,默认存放在。
2024-09-19 08:58:52
1366
原创 PostgreSQL15.x安装教程
PostgreSQL 是一个功能强大的开源关系型数据库系统,基于 C 语言实现,采用 PostgreSQL 许可证,这是一种自由软件许可证,允许用户自由使用、修改和分发源代码,同时支持商业用途而不设强制限制。这使得 PostgreSQL 成为广受欢迎的开源数据库解决方案。PostgreSQL 支持跨版本升级,过程通常平稳。尽管国内市场 MySQL 仍占主导地位,但许多国产数据库(如华为的 GaussDB 和腾讯的 Tbase)及云服务提供商都广泛支持 PostgreSQL。此外,pgloader。
2024-09-13 09:17:28
1619
原创 Elasticsearch Suggesters 自动补全长度设置
理想情况下,自动补全功能的响应速度应该跟上用户的输入速度,从而即时提供与用户已输入内容相关的反馈。因此,Completion Suggester 进行了速度优化。该建议器使用的数据结构支持快速查找,但这些结构的构建成本较高,并且存储在内存中。这是一种导航特性,旨在引导用户找到相关结果,从而提高搜索精度。解决:“max_input_length”: 100,不仅可以实现返回数据长度100,同时也可以在用户输入100字以内的检索词进行联想。问题:在用户输入之后联想词返回长度默认为50,导致返回结果不完全。
2024-09-09 11:13:49
509
原创 Elasticsearch Suggesters API详解与联想词自动补全应用
在现代搜索引擎的应用场景中,自动补全和拼写检查已成为提升用户搜索体验的重要功能Elasticsearch 作为一款广泛使用的分布式搜索引擎,提供了丰富的 Suggesters API,可以帮助开发者实现精确的自动补全和拼写纠错功能本文将深入探讨 Elasticsearch 中的四种核心 Suggester——**Term Suggester**、**Phrase Suggester**、**Completion Suggester** 和 **Context Suggester**,并通过实际示例展示如何在
2024-08-29 14:11:08
1524
1
原创 Typora + PicGo + Gitee 实现图片自动上传
本文介绍了如何使用 Typora 配合 PicGo 和 Gitee 实现图片自动上传的详细步骤。首先,用户需要在 Gitee 上创建一个用于存储图片的仓库,并生成私人令牌以授权 PicGo 上传图片。接着,安装并配置 PicGo,特别是安装 Gitee 图床上传插件,并设置图床信息。最后,通过配置 Typora,使其在编辑过程中自动上传图片到 Gitee 仓库,便于管理和使用
2024-08-29 11:16:40
1095
原创 高级MySQL数据库备份脚本
指定数据库连接中的数据库进行备份可以将备份文件通过FTP或者SFTP传输到其他服务器进行异地备份指定备份文件保留天数邮件发送备份信息
2024-08-28 09:01:08
1596
原创 CentOS7 使用 YUM 安装时报错:cannot find a valid baseurl for repo:base/7/x86_64的解决方法
电脑可以上网,DNS 也配置正常,但依然无法解析 YUM 源地址。这种情况下,可以考虑更换 YUM 源。例如,使用阿里云的镜像源。如果执行yum仍然报错,在遇到某些 repo 报错时,可以禁用它们,避免错误干扰。以下命令可以禁用特定 repo,例如。如果无法 ping 通,说明网络连接有问题。解决网络问题后再继续排查。如果无法解析域名,则可能是 DNS 配置问题。可以尝试更换 DNS。检查网络连接是否正常。文件,然后通过 SSH 工具上传到服务器。使用 SSH 工具将文件上传到服务器的。
2024-08-26 15:18:34
9704
6
原创 Typora + PicGo + SMMS 实现markdown格式文档图片上传
Typora是一款好用极简免费的跨平台Markdown编辑器,软件使用这款软件能够帮助用户轻松将文本转换到HTML,软件从底层向上设计,软件支持markdown的标准语法,同时这款软件还支持动态预览功能等
2024-08-26 14:57:11
783
原创 解决 Elasticsearch 写操作磁盘空间问题——cluster_block_exception
在运行 Elasticsearch 集群遇到磁盘空间不足的情况时,Elasticsearch 会采取保护措施以防止数据丢失。错误,特别是当错误消息表明索引被设置为只读模式时。
2024-08-14 10:31:31
1153
原创 解决 Nginx 413 Request Entity Too Large 错误
当在使用 Nginx 服务器时,上传文件或提交大量数据时可能会遇到 “413 Request Entity Too Large” 错误。这个错误通常是因为请求体大小超出了服务器的限制。要解决这个问题,可以通过调整 Nginx 的配置文件来增加允许的请求体大小限制。
2024-07-29 09:26:27
3604
原创 ES的基本组成和es的优势以及搜索写入原理
本文依照倒叙的方式介绍什么是elasticsearch,包含es的基本组成和es的优势以及写入搜索的流程首先引入一个问题,如何从三段文本中快速找到包含关键词’caixukun’的记录?最直接的思路就是遍历所有的文本记录,然后判断是否包含关键词,最后返回文本的id如果记录的条数有上亿条呢?或者十亿?百亿?继续采用最初的思路全部遍历,先不说速度与乌龟相比如何,有没考虑过计算机的感受?cpu呢?内存呢?磁盘io?
2024-07-22 08:00:00
1302
原创 Linux安装nvm并使用安装node
NVM(Node Version Manager)是一个用于管理 Node.js 版本的工具,可以在同一台计算机上安装和切换不同版本的 Node.js。
2024-07-19 15:55:40
1026
原创 低危漏洞修复——点击劫持X-Frame-Options响应头缺失
X-Frame-Options响应头缺失,导致攻击者使用一个或多个透明的iframe覆盖在正常网页上,诱使用户在网页上进行操作,当用户在不知情的情况下点击透明的iframe页面时,用户的操作已被劫持到攻击者事先设计的恶意按钮或链接上。
2024-07-11 16:00:34
2009
原创 Elasticsearch中的match_phrase_prefix、prefix和wildcard查询详解
适用于需要匹配特定前缀的短语且对查询精度要求较高的场景。例如,搜索以“O”开头的完整短语。prefix:适用于简单的前缀匹配,数据量较大且对性能要求较高的场景。例如,快速筛选以“O”开头的条目。wildcard:适用于需要复杂匹配模式的场景,但应谨慎使用以避免性能问题。例如,需要匹配“O*”模式的多样化查询。
2024-06-27 10:50:16
1564
2
原创 ES报错:解决too_many_clauses: maxClauseCount is set to 1024 报错问题
以及其他的查询生成的子句数量超过了Elasticsearch的默认限制(尝试减少子句数量,优化子句的查询数量,使得能减少到1024的个数限制。如果确实需要大量的子句,可以增加Elasticsearch中的。如果前两种方法不可行,考虑使用性能更好的查询类型,比如。查询精确,但它性能更好,并且不会产生过多的子句。查询语句:查询clcNo分类号包含分类。可能扩展为大量词条的查询中超过了限制。我这里的错误是由于使用。这里是一个优化后的查询示例,将。从报错信息来看,查询出现了。错误,这是因为使用的。
2024-06-27 10:40:16
1711
原创 在 IntelliJ IDEA 中使用 Java 和 Selenium 模拟 Chrome 浏览器教程
Selenium 是一个流行的自动化测试工具,支持多种浏览器平台。它的灵活性和丰富的功能使其非常适合测试各种类型的网页应用。虽然关于 Selenium 和 Java 的资料较少且分散,但 Java 爬虫其实非常方便,只要多看源码就能掌握。环境准备:配置 Java 开发环境、下载并安装 ChromeDriver、设置 Chrome 浏览器和 ChromeDriver 版本一致、禁用 Chrome 自动更新
2024-06-23 12:04:59
2082
原创 使用MyBatis的动态SQL注解实现实体的CRUD操作
在使用MyBatis进行数据库操作时,动态SQL注解提供了一种优雅的方式来编写动态SQL语句。MyBatis 3.x 版本提供了以下四个CRUD的高级注解:@SelectProvider:用于构建动态查询SQL@InsertProvider:用于构建动态新增SQL@UpdateProvider:用于构建动态更新SQL。@DeleteProvider:用于构建动态删除SQL。此外,我们将与MyBatis Plus中的`@Select`注解进行对比,展示MyBatis动态SQL注解的优势和灵活性。
2024-06-21 17:23:18
2247
5
原创 ES全文检索支持繁简和IK分词检索
本教程旨在展示如何在ES中引入繁简转换和IK分词插件,使得在检索时无论输入简体还是繁体都能够被检索到。无论用户输入“語法”还是“语法”,检索结果中都能命中包含简体和繁体的相关文档。这种处理方式不仅提升了用户体验,还增强了检索的准确性和全面性。
2024-06-21 15:05:54
3283
4
原创 最新版本IntelliJ IDEA安装与“坤活”使用
选择适合操作系统的版本(Windows、macOS 或 Linux)在页面中找到需要的版本(Ultimate 或 Community)点击下载按钮,开始下载安装包,然后解压安装或者选择红框的免安装版本。
2024-06-19 17:27:37
1359
1
原创 Windows安装配置jdk和maven
tm的远程连接不上公司电脑,只能在家重新配置一遍,在此记录一下后端环境配置。本文主要介绍jdk安装配置,maven安装配置
2024-06-19 17:19:08
1504
原创 SpringBoot 大文件基于md5实现分片上传、断点续传、秒传
这篇文章介绍了在 SpringBoot 中实现大文件分片上传、断点续传和秒传的方法。分片上传通过将大文件分成多个小块,提高上传可靠性和效率;断点续传允许在上传失败后从断点处继续上传;秒传则通过文件哈希值判断文件是否已存在,避免重复上传。文章详细描述了前端使用 WebUploader 实现分片上传,后端保存分片文件并在全部上传完成后合并的步骤,同时提供了可运行的前后端源码。
2024-06-14 10:07:54
1617
3
原创 处理导入Excel文件过大导致Zip bomb detected的问题
此错误提示文件大小超过了压缩文件大小与解压后数据大小之比的最大限制,为了处理这一问题,可以在方法体的顶部添加一行代码来调整这一限制。调整垃圾回收器的设置,以提高内存管理的效率,例如,可以使用G1垃圾回收器。和增加堆内存大小外,还有一些优化策略可以帮助处理大文件。
2024-06-14 10:00:35
2227
原创 前端实现获取后端返回的文件流并下载
在前端开发中,有时需要从后端获取文件流,并将其下载到本地。本文介绍如何在前端实现此功能的不同的实现方法,并分析其优缺点。
2024-06-13 10:06:49
3582
3
原创 Springboot使用webupload大文件分片上传(包含前后端源码)
springboot、vue、webupload、mysql等在项目开发中需要上传一个非常大的文件时,单次上传整个文件往往会遇到网络不稳定、带宽限制、上传失败等问题。为了解决这些问题,文件分片上传(也称为断点续传)应运而生。分片上传的核心思想是将一个大文件分成若干份大小相等的多个小块数据块(我们称之为 Part),等所有小块文件上传成功后,再将文件进行合并成完整的原始文件。断点续传:在网络中断或其他错误导致上传失败时,只需重新上传失败的部分,而不必从头开始上传整个文件,从而提高上传的可靠性和效率。
2024-06-09 16:16:23
1649
原创 Vue如何引入ElementUI并使用
Element UI是一个基于Vue 2.0的桌面端组件库,旨在构建简洁、快速的用户界面。由饿了么前端团队开发,提供丰富的组件和工具,帮助开发者快速构建高质量的Vue应用,并且以开放源代码的形式提供。
2024-06-09 16:05:49
1150
Elasticsearch实现检索词自动补全(检索词补全,自动纠错,拼音补全,繁简转换) 包含demo
2023-10-15
Python 进阶(三):Python使用ORM框架SQLAlchemy操作Oracle数据库
2023-06-24
Springboot使用pdfbox提取PDF图片
2023-06-17
Springboot实现pdf的分片加载功能
2023-06-11
前端基于Vue实现pdf.js对pdf的分片加载和按需加载功能
2023-06-11
springboot集成canal-adapter实现项目中对于数据库数据监听和自定义消费
2023-06-11
canal1.1.5版本,包含服务端、客户端、源码
2023-06-11
kibana的快照需要在es配置文件添加什么
2023-04-25
TA创建的收藏夹 TA关注的收藏夹
TA关注的人