- 博客(727)
- 资源 (34)
- 收藏
- 关注
原创 Jenkins自动化部署(docker)
本文介绍了使用Docker+Jenkins实现SmartAdmin开源项目(Java+Vue技术栈)的自动化CI/CD流程。主要内容包括:1) 在Linux服务器上通过Docker部署GitLab、Jenkins、Redis和MySQL等基础服务;2) Jenkins流水线配置,包含代码拉取、前后端项目打包、镜像构建和服务启动五个阶段;3) 前后端Dockerfile编写及项目结构调整;4) 环境变量配置及测试环境参数修改。最终实现代码提交到GitLab后自动触发Jenkins构建,完成项目部署更新。整个过
2025-12-31 11:09:16
501
原创 Jenkins构建的触发方式
摘要:Jenkins实现自动构建主要有两种方式:1)代码仓库触发(如GitLab配置Webhook,在提交/合并时触发Jenkins构建);2)Jenkins定时轮询(通过H表达式设置轮询频率,自动检测SVN等仓库的代码更新)。轮询时会检查Job配置中"源码管理"或pipeline里指定的代码仓库地址,发现更新即触发构建。两种方案分别适用于不同场景,前者依赖仓库Webhook功能,后者适用于不支持灵活Webhook的仓库。
2025-12-30 22:59:34
203
原创 idea使用AI插件(CodeGeeX)
CodeGeeX是一款基于智谱GLM模型的智能插件,支持问答和代码编写功能。它能自动生成代码注解,通过点击图标即可为提交的代码创建注解信息。插件还提供Java方法前的操作菜单,支持多种快捷操作。安装方式简单,只需在IDEA插件市场搜索"CodeGeeX"并安装即可。该工具能有效提升开发效率,简化代码文档工作。
2025-12-22 15:37:40
279
原创 谷歌浏览器翻译插件的使用
本文介绍如何在谷歌浏览器安装"沉浸式翻译"插件:通过谷歌应用商店搜索并安装该插件后,只需点击页面右侧的翻译图标,即可实现网页英文内容下方显示对应中文翻译,再次点击可隐藏翻译,操作简便快捷。
2025-12-21 23:06:15
258
原创 word文档中插入文件的操作
摘要:介绍将conf配置文件嵌入docx文档的方法。在WPS中,通过"插入-附件-对象"功能,勾选"显示为图标"选项即可完成嵌入。嵌入后双击图标即可打开查看原文件。该操作简单快捷,适用于需要将配置文件与文档一起保存的场景。(98字)
2025-12-20 14:06:59
227
原创 MySQL读写分离实战
摘要:本文介绍了在"读多写少"场景下使用ShardingJDBC实现MySQL读写分离的方案。通过配置主库(ds0)负责写入、从库(ds1)负责查询,实现了数据操作的职责分离。测试表明,写入操作仅作用于主库并通过主从同步机制复制到从库,而查询请求则以轮询方式在多个数据库间实现负载均衡。该方案只需添加服务器即可扩容,有效提升了查询性能。文中提供了Java代码示例和主从同步配置参考,演示了从数据插入到查询的完整流程。
2025-12-19 15:24:36
558
原创 Centos7操作系统参数调优
本文介绍了CentOS7系统中通过修改/etc/sysctl.conf文件优化性能的关键参数配置。主要内容包括:TCP连接数设置(net.core.somaxconn)、网络数据包队列(net.core.netdev_max_backlog)、半连接处理(net.ipv4.tcp_max_syn_backlog)、TCP连接状态管理(tcp_fin_timeout)、套接字重用(tcp_tw_reuse/recycle)、网络缓存(wmem/rmem)、长连接心跳机制(tcp_keepalive)以及内存管
2025-12-18 20:16:31
854
原创 谷歌浏览器护眼插件使用
本文介绍了如何在谷歌浏览器安装护眼模式插件,将网页颜色调整为护眼色。安装方法包括访问谷歌应用商店搜索插件并安装,安装后所有网页都会自动切换为护眼模式。文章还讲解了如何针对特定网站(如微信读书)单独设置护眼模式,以及其他网站保持正常显示的方法。最后提供了关闭或移除插件的操作指南,用户可以通过点击插件图标来开启或关闭该功能。
2025-12-18 19:31:17
345
原创 MySQL参数配置一次说清楚
本文介绍了MySQL数据库参数的配置方法和常见参数说明。主要包含三种参数设置方式:会话级别(session)、全局级别(global)和配置文件修改,优先级为session>global>配置文件。重点讲解了数据库连接相关参数,包括最大连接数(max_connections)、线程缓存(thread_cache_size)、连接堆栈(back_log)和连接超时设置(wait_timeout/interactive_timeout)。文章还说明了如何通过show命令查看当前参数值和连接状态,以及
2025-12-17 20:17:58
1331
原创 MySQL主从数据同步实战
想想这样一个场景:今天10点开放考试成绩查询的入口,那么在10点钟会有一大波流量高峰,一台服务器肯定扛不住了。而且这种情况几乎没有数据更新操作,都是数据查询。类似这样的查询请求非常高的情况下,适合用数据库的主从复制,多台服务器分散数据库的压力。简单说就是有多台服务器,都安装了MySQL数据库,其中一台服务器上的MySQL数据库被人为定义为主数据库,负责数据的增删改操作。剩下的所有服务器,都被定义为从数据库。主数据库所有执行过的脚本,会自动保存为binlog日志文件。
2025-12-16 22:45:46
656
原创 ShardingSphere分库分表实战
摘要:本文介绍了使用ShardingSphere实现分库分表的实战案例。首先在两台服务器上分别创建MySQL数据库(mall_0和mall_1),各包含两张结构相同的表。通过配置applicationContext.xml定义数据源、分库分表策略(按user_id奇偶分库、order_id奇偶分表)和雪花算法主键生成。测试代码批量插入10条数据后,数据按策略自动分布到不同库表,查询时可正确聚合所有数据。案例展示了ShardingSphere如何简化分库分表操作,其支持所有主流数据库类型,详细用法可参考官方文
2025-12-15 20:18:59
670
原创 MySQL数据库分库分表介绍
摘要:分库分表是解决海量数据存储和查询性能瓶颈的有效方案。分库将不同业务数据库分散到多台服务器,分表则将单表数据水平拆分到多个节点存储。通过中间件如ShardingSphere实现,该工具支持多种数据库,提供分布式SQL事务和查询功能,是目前活跃的开源解决方案。分库分表能有效分摊服务器压力,提升系统整体性能。
2025-12-14 22:14:18
293
原创 MySQL分区表使用保姆级教程
分区表是将大表数据按条件拆分存储在不同磁盘位置的数据库优化技术。它通过将数据分散到多个独立分区中,显著减少查询扫描范围,提升查询性能。文中以年份为例演示了范围分区表的创建过程:先创建普通表展示全表扫描问题,再通过PARTITION BY RANGE按年份划分区间重建分区表。分区表能实现并发I/O、独立备份维护等优势,特别适合处理大数据量表。通过查看执行计划和分区统计信息,可验证查询时仅扫描相关分区而非全表,有效优化查询效率。
2025-12-13 17:56:38
429
原创 保姆级的MySQL执行计划(Explain)解读
摘要:执行计划是MySQL解释器处理SQL语句的过程展示,通过在查询前添加EXPLAIN关键字获取。执行计划包含多个关键字段:id表示select序列号,select_type说明查询类型(如simple、primary等),table显示访问的表名,type反映查询效率(从最优system到最差ALL)。分析执行计划有助于SQL优化,例如通过索引提升性能。常见type类型包括const(主键匹配)、eq_ref(主外键关联)、range(范围扫描)等,优化时应优先使用高效类型。
2025-12-13 16:51:08
1172
原创 Percona Toolkit工具优化MySQL索引
PerconaToolkit工具可用于检测MySQL中的冗余索引,但仅支持Linux系统。安装步骤包括:1)从官网或CSDN下载对应版本的工具包;2)上传至Linux服务器;3)使用apt命令安装;4)验证安装。使用时执行pt-duplicate-key-checker命令,指定数据库连接信息和表名,工具会分析并指出冗余索引(如完全匹配最左前缀的索引),建议删除以提高性能。注意该工具不支持Windows平台。
2025-12-09 22:30:18
215
原创 MySQL索引的使用技巧
本文介绍了SQL索引的使用场景及注意事项。索引能提升查询效率,但需正确使用:精准匹配、范围查询、前缀模糊查询(like 'abc%')会启用索引;而后缀模糊查询(like '%abc')、不等号、NOT IN等操作会导致索引失效。对于复合索引,必须包含左侧列字段才能生效。文章还演示了如何通过explain查看索引使用情况,以及创建/删除索引的语法。特别强调类型匹配的重要性,避免因类型转换降低查询性能。合理使用索引能显著优化SQL查询速度。
2025-12-08 20:15:46
609
原创 MySQL中innerDB引擎的锁机制
摘要:InnoDB默认使用行级锁,但未使用索引的写操作会退化为表级锁。实验表明:当对带有索引的主键字段执行更新时,两个事务可同时更新不同行(行锁);而去除索引后,即使更新不同行也会阻塞(表锁)。行级锁需满足:1)操作基于索引字段;2)执行更新/删除操作。该机制通过Navicat的两个事务窗口验证,展示了InnoDB锁机制的索引依赖性。
2025-12-06 18:24:22
355
原创 AI编程完成3D建模
本文介绍了3D建模入门教程,适合零基础用户。推荐安装Cursor(AI编程工具)和OpenSCAD(建模软件)两款免费软件。通过Cursor用自然语言描述建模需求,AI会自动生成脚本;将脚本导入OpenSCAD即可生成3D模型。若需修改,只需返回Cursor调整需求描述,重新生成脚本即可。该方法无需专业建模知识,操作简单高效。
2025-12-06 16:20:04
338
原创 分布式事物seata的AT模式实战
Seata是一款开源的分布式事务解决方案,提供AT、TCC、SAGA和XA四种事务模式。其核心架构包含三个角色:事务协调者(TC)负责全局事务状态管理,事务管理器(TM)定义事务范围,资源管理器(RM)处理分支事务。AT模式采用两阶段提交:准备阶段执行SQL并生成反向SQL日志,提交阶段确认执行或通过反向SQL回滚。实践部分演示了基于Docker部署MySQL和Nacos环境,并通过示例项目展示了订单创建和库存减少的分布式事务处理过程,包括正常执行和异常回滚场景。
2025-12-05 16:11:40
832
原创 WebService与WebAPI的调用到底有什么区别
本文对比了WebService和WebAPI两种接口的调用方式。通过Java代码示例展示了两种接口获取token的实现:WebAPI使用JSON格式和RestTemplate发送请求,而WebService采用XML格式的SOAP协议。主要区别包括:WebService强制使用XML和POST方法,动作写在SOAP节点中;WebAPI主流使用JSON,支持多种HTTP方法,通过HTTP方法和路径表达动作。两种接口在消息格式、HTTP方法和内容类型上存在明显差异。
2025-12-04 22:47:04
145
原创 LazyCraft平台本地化部署
LazyCraft是一个开源AI项目,提供本地docker部署方案。部署步骤包括:克隆GitHub源码,修改docker-compose配置(需启用HTTPS并指定30383端口),调整nginx配置。启动命令为进入docker目录执行docker-compose up -d,完成后通过https://IP:30383访问,默认账号administrator/LazyCraft@2025。该项目适合需要本地化部署AI服务的开发者使用。(99字)
2025-12-04 17:58:37
270
原创 微服务任务调度XXL-JOB实战(docker)
XXL-JOB是一款由国人开发的优秀分布式任务调度平台。本文详细介绍了其部署和使用流程:首先通过Docker部署MySQL数据库并初始化XXL-JOB所需表结构;然后使用Docker部署XXL-JOB管理端,配置数据库连接参数;最后通过示例项目演示任务调度功能,包括打包Java项目、构建Docker镜像、创建执行器和定时任务等关键步骤。文档提供了完整的命令行操作和配置说明,帮助用户快速搭建和使用XXL-JOB任务调度系统。
2025-12-02 20:14:19
1625
1
原创 MySQL隐式类型转换导致的事故
MySQL隐式类型转换导致查询异常:当字符串字段与数字比较时,MySQL会将字符串转为数字。"编号0001"转为0,导致sys_proj_num=0返回错误结果;"4005张"转为4005。解决方法:确保比较操作符两侧类型一致,要么都是数字,要么都是字符串,避免隐式转换带来的意外结果。
2025-12-02 08:51:56
329
原创 docker使用binlog恢复MySQL数据库
摘要:MySQL数据库被误删或遭受攻击时,可通过binlog日志进行恢复。首先确认MySQL是否开启binlog功能,查找binlog文件目录。通过mysqlbinlog工具指定恢复时间点(如"2025-11-28 09:19:59"),将日志文件输出到MySQL执行,即可将数据库恢复到指定时间点状态。该方法适用于整个数据库被删除的情况,前提是已启用binlog功能。
2025-11-28 16:55:25
401
原创 云服务器数据库遭到勒索
摘要:某用户因MySQL数据库使用简单密码且开放3306端口到公网,导致数据库遭勒索攻击,原库被删除并出现勒索信息。虽然此次数据损失不大,但提醒用户必须设置复杂密码,避免将3306端口暴露在互联网上,尤其对重要数据库更需提高警惕。(99字)
2025-11-28 14:33:43
219
原创 spring boot配置文件中配置项加解密
本文介绍了使用Jasypt加密Spring Boot配置文件的方法,以保护敏感信息安全。主要内容包括:1) 引入jasypt-spring-boot-starter依赖;2) 编写测试类生成加密字符串,提供加密解密方法;3) 在开发环境配置文件中设置加密密钥;4) 将加密内容用ENC()包裹后放入生产环境配置文件;5) 部署时通过JVM参数或环境变量传递解密密钥。这种方法有效防止配置文件泄露导致的安全风险,同时保持系统的正常运行。
2025-11-27 09:41:59
312
原创 一张图说明nacos、apisix、sentinel的关系
摘要:本文图解展示了请求在微服务架构中的完整流转路径,依次通过Nacos(服务注册发现)、APISIX(API网关流量管控)、Sentinel(熔断限流防护)三大核心组件。请求需"闯关式"通过服务注册校验、路由转发、流量控制等多层过滤机制,最终完成业务处理并返回结果,体现了现代分布式系统的高可用设计理念。(98字)
2025-11-22 22:58:29
253
原创 Java实现sm4加解密
摘要:本文实现了一个基于国密SM4算法的加密解密服务ApiEncryptService,包含加密(encrypt)和解密(decrypt)两个核心方法。实现类ApiEncryptServiceSmImpl采用SM4对称加密,密钥要求为16字节字符串,通过配置文件注入。加密流程先进行SM4处理再Base64编码,解密则反向操作。代码整合了BouncyCastle安全提供者,并提供了16进制转换工具方法。使用时只需注入服务并调用对应方法即可完成数据加密传输。
2025-11-17 15:46:02
358
原创 缓存高可用架构-写缓存
摘要:本文探讨了应对高并发预约活动的技术方案。针对短期高频写请求场景,提出了基于写缓存的架构设计:将用户请求暂存于高性能缓存层(如Redis),再异步批量写入数据库。方案重点解决了6个关键问题:异步处理机制选择、批量落库触发策略(数量/时间双触发)、缓存存储方案比较(内存/Redis/MQ)、并发控制、异常处理机制以及Redis高可用配置。该方案能在不进行大规模架构调整的前提下,以较小代价有效缓解数据库压力,保障活动期间系统稳定性,同时兼顾用户体验。
2025-11-17 10:07:03
1071
原创 缓存高可用架构-读缓存
摘要: 本文探讨了缓存中间件选型与优化策略。针对业务场景中查询请求的优化需求,通过对比Memcached、MongoDB和Redis的特性,重点分析了Redis在数据结构、持久化和集群方面的优势。详细阐述了缓存使用场景下的三种异常情况(击穿、雪崩、穿透)及解决方案,提出了缓存预热的概念。针对缓存更新问题,对比了五种方案并推荐最优解。最后介绍了缓存高可用设计的五个要点和监控指标。文章为构建高效缓存系统提供了完整的技术路线图。
2025-11-17 09:43:54
906
原创 数据库高可用架构-分表分库
分表分库是通过拆分大表和数据库来提升性能的技术方案。分表是将大表拆分为结构相同的小表,分库则是将数据库拆分为多个小库。实现时需要解决三个核心问题:动态SQL组合、数据库路由和结果合并。目前有Proxy和Client两种实现模式,前者对业务无侵入,后者集成在客户端。关键实施要点包括:合理选择分片主键(均匀分布、少跨库、值不变)、分片策略(范围、Hash或混合)、业务代码调整、历史数据迁移(全量+增量同步)和未来扩容方案(2n扩容简化迁移)。分表分库能有效解决单库性能瓶颈,但需综合考虑数据分布、查询效率和扩展性
2025-11-16 10:32:34
1072
原创 数据库高可用架构-查询分离
摘要: 查询分离是针对冷热分离方案不足(如冷数据不可修改、查询慢等)提出的优化方案,适用于数据量大、查询响应慢但写入效率尚可的场景。其核心思路是在数据写入时同步或异步备份到专用查询存储(如Elasticsearch),通过消息队列(MQ)实现异步解耦和流量控制。实现需考虑数据一致性(如更新延迟提示)、历史数据迁移(通过标识触发同步)及技术选型(如Elasticsearch的分布式查询优势)。该方案平衡了性能与实时性,适合复杂查询需求的高并发系统。
2025-11-15 11:24:11
667
原创 数据库高可用架构-冷热分离
摘要 冷热分离是数据库优化方案,将数据分为冷库(终态不常用数据)和热库(常用可修改数据)。适用场景包括:1)终态数据仅需读取;2)用户接受新旧数据分开查询。实施方案需考虑五个方面:1)通过时间/状态字段区分冷热数据;2)采用业务代码修改、binlog监听或定时扫描触发分离;3)通过加标识、幂等操作实现数据迁移;4)查询界面提供冷热数据选项;5)批量迁移历史数据。整个方案强调操作的可重试性和幂等性,确保数据一致性。
2025-11-15 10:57:52
835
原创 数据库高可用架构-数据库分区
数据库分区通过将表数据按条件(如年份)分散存储到不同介质中,实际仍保持为单一逻辑表。示例展示了基于出生年份的RANGE分区方式,将数据分配到8个不同分区。分区优势包括:突破单磁盘容量限制、简化数据清理(直接删除分区)、优化查询性能(仅扫描相关分区数据)。MySQL要求分区字段必须是唯一索引的组成部分。分区能显著提升大数据量下的管理和查询效率。
2025-11-15 10:33:31
228
原创 linux中使用docker安装MySQL
摘要:介绍使用Docker创建MySQL 8.0.22容器的命令。通过docker volume创建数据卷实现持久化存储,使用run命令运行容器并设置root密码、主机名、自动重启等参数。端口3306映射到主机,便于通过Navicat等工具连接操作数据库。该方案可轻松管理MySQL实例,保持数据安全可靠。(99字)
2025-11-10 22:16:42
278
原创 linux安装杀毒软件ClamAV
在AlmaLinux 9.6上安装配置ClamAV的步骤:1)通过EPEL源安装ClamAV组件;2)初始化病毒库并更新;3)配置clamd服务,设置本地套接字;4)启动并设置开机自启服务。同时设置定时扫描:编写扫描脚本,去除\r换行符,赋予执行权限,通过crontab设置每周六凌晨2点自动扫描。扫描日志存放在/var/log/clamav/目录下,可通过grep命令检查是否发现病毒。
2025-10-30 17:34:06
1021
原创 linux安装redis
本文提供了在AlmaLinux 9.6系统上安装和配置Redis的详细步骤指南。主要内容包括:1)更新系统包管理器;2)安装EPEL仓库;3)安装Redis;4)检查版本;5)启动并设置开机自启;6)验证服务状态;7)检查进程和端口监听;8)测试连接;9)设置密码并修改配置文件;10)重启Redis服务。完整流程涵盖了从安装到基础配置的关键操作。
2025-10-29 13:17:19
198
NewsPublish项目(数据库设计).txt
2020-09-12
Axure RP 9.zip
2022-07-16
NewsPublish.zip
2020-09-12
dnpicture.zip
2020-05-16
人人都能学会的AI指南:从机器学习到大模型全流程解析### 文章总结:《人人都能学会的AI指南:从机器学习到大模型全流程解析》
2025-07-08
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅