- 博客(112)
- 收藏
- 关注
原创 一键清空 Redis 单台、集群 脚本命令
本文提供了一套自动化清空Redis Cluster全部数据的Shell脚本方案。通过遍历集群所有节点执行FLUSHALL命令,实现快速数据清理。方案包含三个核心脚本:检查各节点key数量、一键清空全集群、单节点快速清空。操作步骤标准化,包含二次确认和清理前后数据校验,确保安全可靠。同时给出了安全加固建议和常见问题解答,适用于压测初始化、版本升级等需要清空Redis数据的场景。该方案相比手工操作更高效、可靠,支持灰度执行和审计跟踪。
2025-11-22 12:03:34
24
原创 微前端部署实战:Nginx 配置 HTTPS 与 CORS 跨域解决方案(示例版)
本文详细介绍了微前端架构中Nginx配置HTTPS与解决CORS跨域问题的完整方案。文章首先分析了一个典型错误案例:子应用错误地将CORS头设置为自身地址而非主应用地址,导致跨域请求被拒绝。随后提供了完整的配置步骤,包括SSL证书生成、Nginx HTTPS服务配置、关键参数解析以及验证方法。最后总结了常见错误及解决方案,为微前端部署提供了实用的参考指南。配置要点包括正确设置Access-Control-Allow-Origin为允许访问的主应用地址,处理预检请求(OPTIONS),以及优化TLS安全设置等
2025-11-06 10:57:10
928
原创 macOS 系统下 Chrome 浏览器安装 HTTPS 证书完整指南
在macOS系统上为Chrome浏览器安装HTTPS证书时,需要将证书(如.crt或.pem文件)手动添加到系统的受信任根证书中。通过Chrome设置的"管理证书"功能可快速导入证书,然后重启浏览器验证是否生效。注意仅安装可信来源的证书以确保安全性。该操作能解决内部系统开发测试时的"非私密连接"警告问题。
2025-11-06 10:54:50
756
原创 Redis 集群到底能不能只部署 2 个节点?——关于“3 主”门槛的 6 个必知细节
Redis集群不能只部署2个节点,必须至少3个主节点才能保证高可用性。原因包括:1) 2节点无法满足>50%投票机制,故障时无法选出新主节点;2) 节点数越少越容易因网络抖动导致集群瘫痪;3) 3主0从是最小理论配置,但无数据冗余,生产环境需3主3从作为最小高可用方案。3主3从可以容忍单机故障,建议跨AZ交叉部署,并考虑带宽消耗问题。实际部署中,3主3从是保证集群稳定运行的最低配置要求,符合分布式系统的投票理论约束。
2025-10-23 08:51:15
312
原创 一次“沉默”的上线——当东方通遇上消失的日志
摘要:某应用在东方通(TongWeb)热部署后出现日志丢失问题,排查发现是由于缺少logging.config=classpath:logback-spring.xml显式声明,导致Spring Boot在容器类加载环境下无法初始化日志框架。根本原因是外置容器与嵌入式容器的类加载机制差异。解决方案包括:1)显式声明日志配置路径;2)确保配置文件位置正确;3)在启动参数中补充配置。该案例警示:日志是系统的"第一语言",在复杂环境中必须通过显式配置确保其可靠性。(149字)
2025-10-22 14:04:52
307
原创 Redis 集群数据清理操作指南(生产环境)
本文介绍了Redis集群全量数据清理的操作指南。内容包括:1)操作前使用keys *检查数据;2)通过执行脚本clear_redis_cluster.sh清理集群,参数为任意节点地址和密码;3)脚本会区分主从节点,自动跳过只读从节点;4)清理后使用DBSIZE确认结果;5)非集群模式直接使用FLUSHALL命令。建议在业务低峰期执行,并提供了原始脚本下载地址。该方案可高效清理测试数据,确保生产环境干净。
2025-10-20 16:43:16
511
原创 一张图背下来:正向代理 VS 反向代理
正向代理反向代理客户端替身服务端替身用户配运维配帮“出去”帮“接客”藏用户 IP藏真实机器记住最后这句,永远不会混:正向代理≈“客户端的替身”,反向代理≈“服务端的替身”。
2025-10-16 08:30:14
431
原创 【内部复盘】WPS 预览 PKIX 证书信任失败事件快速解决手记 ——从“报红”到“秒开”的 30 分钟
OA系统WPS在线预览功能故障处理摘要:因WPS鉴权服务使用内部CA证书导致Java客户端认证失败,表现为主页持续转圈和PKIX报错。通过将DER格式证书转换为PEM格式并导入JDK信任库,最终恢复HTTPS链路正常通信。解决方案包含证书格式转换、导入信任库和重启服务三个关键步骤,经测试5万次调用成功率100%。后续将通过容器化部署、证书到期监控和操作手册固化等措施预防类似问题。核心经验是确保运行环境JDK包含有效证书并保持PEM格式。
2025-10-15 16:48:44
306
原创 【10 分钟!M4 Mac mini 离线部署「私有 ChatGPT」完整实录】
摘要: 本文介绍如何在M4 Mac mini上10分钟搭建离线AI助手,支持多轮对话、文件上传、图片解析和代码高亮。步骤包括:1)安装模型引擎Ollama;2)拉取7B量化模型;3)安装可视化工具Chatbox;4)验证功能。全程仅需4行命令和3次点击,数据完全本地运行,无需订阅费。还提供进阶玩法如开机自启、更换大模型和SSD外挂方案。最后附一键卸载指南,适合追求隐私和本地化AI的用户。(150字)
2025-10-13 17:35:44
613
原创 前端必知:CORS 跨域问题详解与解决方案
CORS(跨域资源共享)问题解析与解决方案 CORS是浏览器的一种安全机制,用于限制不同源(域名、协议或端口不一致)的资源请求。当出现CORS报错时,说明目标服务器未返回允许跨域的响应头。常见解决方案包括:后端设置CORS响应头(生产推荐)、JSONP(不推荐)、浏览器插件禁用(测试用)以及代理转发(开发最佳实践)。开发环境中,通过配置webpack devServer的proxy实现请求转发,可让浏览器"认为"是同源请求。案例表明,修改前端代码使用相对路径并配置代理可有效解决跨域问题。
2025-10-13 14:03:28
318
原创 macOS 本地开发 HTTPS 配置指南(Vue/Vite 通用)
摘要:本文介绍如何在Mac上使用mkcert快速配置本地HTTPS开发环境。通过Homebrew安装mkcert后,只需执行mkcert -install生成CA证书,再为localhost和局域网IP生成密钥文件(.pem)。在Vue或Vite项目中配置devServer的https字段引用这些文件,即可实现无警告的HTTPS访问,支持真机调试。该方法解决了API调用限制、Mixed Content等问题,换网时只需重新生成证书即可。
2025-10-12 11:59:51
382
原创 《Java 21 之后,别只盯着虚拟线程——被遗忘的“性能利器”结构化并发》
Java 21 的虚拟线程(Virtual Threads)让“每请求一线程”瞬间进化成“每请求一虚拟线程”,性能提升肉眼可见。可就在同一个版本,JDK 还悄悄交付了一组预览 APIJEP 453它既不属于 Project Loom,也不依赖虚拟线程,却能让吞吐再上一个台阶,而且代码更容易读、更容易 debug。今天咱们就把它聊透。把多个异步子任务当成一个“逻辑单元”来管理——要么全部成功,要么全部取消,绝不泄漏。传统。
2025-10-11 15:26:59
267
原创 把“Mixed Content”吃干抹净——一次 https→http 踩坑实录
摘要: HTTPS页面嵌入HTTP资源(Mixed Content)会被浏览器拦截,导致空白页面。本文通过WPS中台接入案例,分析Mixed Content安全策略,复现问题并给出三种解决方案:全站HTTPS(推荐)、升级不安全请求(应急)、降级父页(不推荐)。强调内网也应使用HTTPS,自签证书即可满足安全要求,避免协议混用导致的阻断问题。
2025-10-11 15:00:18
561
原创 《HTTPS 里嵌 HTTP 一定会被浏览器拦截?——Mixed Content 安全策略一次讲透》
HTTPS页面引用HTTP资源为何报错? 当HTTPS页面加载HTTP资源时,浏览器会触发**混合内容(Mixed Content)**拦截机制,分为两类: 被动混合内容(如图片、音视频)默认允许但地址栏降级提示; 主动混合内容(如iframe、脚本、XHR)会被直接阻止,以防止中间人攻击和保障安全一致性。 解决方案: 最优方案:全站升级为HTTPS; 临时方案:通过Content-Security-Policy自动升级HTTP请求; 不推荐降级为HTTP,会丧失加密保护。 误区澄清: 拦截是浏览器行为,非
2025-10-11 14:55:56
1026
原创 如何将多个.sql文件合并成一个:Windows和Linux/Mac详细指南
【SQL文件合并操作指南】 本文介绍了Windows和Linux/Mac系统下合并SQL文件的两种主要方法。Windows系统可使用copy命令:copy *.sql all.sql合并所有文件,或copy 1.sql+2.sql combined.sql合并指定文件。Linux/Mac系统则可用cat命令:cat *.sql >> all.sql合并所有文件,或cat 1.sql 2.sql > partial.sql合并特定文件。注意事项包括:合并文件会按字母顺序排列,建议保持编码一致
2025-07-10 15:28:05
767
原创 Git 分支管理规范
大公司和中小团队的分支管理规范对比:大公司采用Git Flow、GitHub Flow或GitLab Flow等复杂模型,注重环境隔离和版本控制;中小团队则简化流程,核心分支为master、test和feature/*,强调命名规范和Pull Request审核。操作流程包括分支创建、合并、发布和紧急修复,需注意分支保护、冲突解决和定期清理。建议结合CI/CD工具自动化部署,并通过代码审查确保质量。不同规模团队可根据需求选择适合的管理策略。
2025-06-13 10:25:44
684
原创 Git 前后端 Java & Vue 项目的 .gitignore 配置分享
本文详细介绍了Java后端和Vue前端项目的.gitignore配置模板,按类别列出需要忽略的文件和目录。后端Java部分包含开发环境文件、编译文件、敏感数据、日志和测试文件等6大类;前端Vue部分包含开发工具文件、依赖项、构建输出、敏感数据和测试文件等7大类。每项配置都配有详细注释说明其用途,并提供了具体使用方式:将对应配置粘贴到项目根目录的.gitignore文件中即可。这些配置能有效避免将不必要的开发环境文件、编译输出和敏感信息提交到版本控制系统。
2025-06-13 10:24:47
335
原创 Git 清理指南:如何从版本库中移除误提交的文件(保留本地文件)
本文介绍如何从Git历史中彻底删除误提交的文件(如node_modules/、.env等),同时保留本地文件。基础方法包括使用git rm --cached移除索引中的文件并更新.gitignore。对于敏感信息泄露等严重情况,推荐使用git filter-repo或BFG Repo-Cleaner工具完全清除历史记录。文章还提供了提交前检查、使用预提交钩子等最佳实践。注意强制推送会影响团队协作,操作前需谨慎。
2025-06-12 17:39:37
1119
原创 本地代码文件上传GitLab 并初始化
当需要在GitLab私有化部署环境(如企业内网)中新建项目,并将本地已有代码库推送到远程时,需完成一系列Git操作。通过以上流程,您已完成企业级GitLab项目的标准化初始化。下一步建议配置代码扫描(SonarQube)与自动化测试框架。如需针对具体场景(如子模块管理、分支策略设计)的深入探讨,欢迎留言讨论!:检查SSH密钥是否已添加到GitLab账户。项目为例,演示完整操作链。
2025-06-12 17:38:20
762
原创 AI会取代IT从业者吗?
2023年,ChatGPT仅用2个月突破1亿用户,GitHub Copilot帮助程序员自动补写30%的代码。麦肯锡报告预测:到2030年,全球将有。,但会催生更多「AI驯兽师」型人才。正如电力革命没有消灭工人,而是创造了电气工程师——未来的IT从业者,将是驾驭AI的。因AI改变职业方向,其中IT行业首当其冲。(AWS DevOps Guru自动分析云服务异常)(AI生成技术方案初稿,准确率超70%)
2025-06-09 17:22:45
413
原创 UML 2.0 图的细分类别及其应用
UML 2.0 提供了 14 种图,分为静态图(结构图)和动态图(行为图)两大类。分类UML 图主要用途优点缺点静态图用例图需求分析,功能需求建模简单直观,易于理解无法描述内部逻辑和实现细节静态图类图系统静态结构建模直观展示静态结构,支持面向对象设计对于动态行为描述能力有限静态图对象图系统运行时状态建模直观展示对象间的具体关系适用范围较窄,主要用于调试和测试静态图构件图系统架构设计,模块化设计强调模块化设计,适用于架构设计对于动态行为描述能力有限静态图部署图。
2025-06-09 17:07:53
1830
原创 达梦数据库EXISTS子查询实战指南
EXISTS子查询在SQL中的应用 EXISTS是SQL中用于检查子查询结果的逻辑运算符,主要用于条件更新、数据过滤和性能优化。基本语法通过WHERE EXISTS实现,其中子查询通常使用SELECT 1简化判断。在达梦数据库中需注意添加ROWNUM=1限制。 EXISTS适用于更新关联数据(避免空值覆盖)和清理无效记录等场景,相比IN和JOIN更符合业务语义且性能更优。达梦数据库对EXISTS优化较好,但子查询中必须包含ROWNUM=1限制。使用时应在关联字段上建立索引,同时注意EXISTS与IN的性能差
2025-06-09 15:51:15
592
原创 达梦数据库CASE WHEN条件
SQL中的CASE WHEN是一种条件表达式,类似于if-else语句,可用于SELECT、UPDATE等操作。基本语法是在CASE后跟随多个WHEN条件及对应的返回值,最后用ELSE设置默认值。示例演示了单条件更新和多字段条件更新的用法,包括结合JOIN语句的案例。常见问题解答指出达梦数据库支持嵌套CASE WHEN,但建议简化复杂逻辑;虽然WHERE子句中可以使用CASE WHEN,但更推荐用AND/OR组合条件。这种条件判断方式为数据处理提供了灵活性。
2025-06-09 15:50:28
938
原创 达梦数据库VARCHAR转TEXT/CLOB的两种方案
达梦数据库中VARCHAR字段转换为TEXT/CLOB类型有两种方法:新建表替换法(适用于数据量小或允许重建表的情况)和字段替换法(适用于大表且不能删除表的情况)。新建表法需创建新表、导入数据后删除旧表;字段替换法需添加新字段、迁移数据后删除原字段。操作时需注意索引/约束处理和大表分批迁移,避免锁表。两种方法均能有效解决类型转换问题。
2025-06-09 15:49:33
973
原创 Linux根目录下的子目录及其特定用途
Linux操作系统的根目录(/)是文件系统的起点,所有其他目录和文件都从根目录开始组织。每个子目录都有其特定的用途,理解这些目录的功能对于系统管理和维护至关重要。主要子目录包括:/bin(存放基本命令)、/boot(启动文件)、/dev(设备文件)、/etc(配置文件)、/home(用户主目录)、/lib和/lib64(库文件)、/media(可移动设备挂载点)、/mnt(临时挂载点)、/opt(第三方软件)、/proc(进程和内核信息)、/root(超级用户主目录)、/run(运行时文件)、/sbin(系
2025-05-23 10:15:06
503
原创 鸿蒙操作系统架构:构建全场景智慧生态的分布式操作系统
鸿蒙操作系统通过其分层架构、分布式技术和四大技术特性,为全场景智慧生态提供了强大的支持。无论是智能手机、智能家居还是车机设备,鸿蒙都能实现设备间的无缝协同,提升用户体验和开发效率。
2025-05-21 00:29:10
1491
原创 云原生主要架构模式
云原生是一种利用云计算优势构建和运行可扩展、弹性和高效应用程序的方法,强调架构和设计理念。本文探讨了云原生的主要架构模式:1) 服务化架构模式(SOA),将应用拆分为独立服务,提升开发效率和可扩展性;2) Mesh化架构模式,通过服务网格管理微服务通信,增强安全性和可观测性;3) Serverless模式,按需执行代码,降低运维复杂度;4) 存储计算分离模式,解耦存储与计算,提高资源利用率;5) 分布式架构模式,通过多节点分布提升性能和可靠性;6) 可观测架构,集中管理日志、指标和追踪数据,增强系统透明性;
2025-05-20 23:33:15
1423
原创 理解 RESTful 风格:现代 Web 服务的基石
RESTful 风格是一种基于 HTTP 协议的软件架构风格,由 Roy Fielding 提出,广泛应用于现代 Web 服务设计。其核心思想是将网络资源抽象为可通过 URI 标识的实体,客户端通过标准 HTTP 方法(如 GET、POST、PUT、DELETE)操作资源,服务器返回 JSON 或 XML 格式的响应。RESTful 风格的核心原则包括无状态性、统一接口、资源导向、可缓存性和分层系统,这些原则使得服务简单易用、可扩展性强、跨平台兼容且性能优化。设计 RESTful API 时,需合理设计 U
2025-05-20 23:32:11
825
原创 Lambda架构与Kappa架构对比详解
fill:#333;color:#333;color:#333;fill:none;数据源批处理层加速层Batch View服务层查询结果✅Kappa架构由Jay Kreps提出,是Lambda架构的简化版本,,通过**数据重放(Replay)**实现批处理功能。fill:#333;color:#333;color:#333;fill:none;数据源消息队列流处理引擎存储层查询结果✅。
2025-05-14 08:46:29
1282
原创 边缘计算:技术概念与应用详解
1. **边缘节点** 边缘节点是指部署在数据源附近的计算设备,如路由器、网关、智能终端等。它们负责数据的采集、处理和存储。 2. **边缘计算平台** 边缘计算平台是支持边缘计算的基础设施,提供计算资源、存储资源和网络资源的统一管理。 3. **边缘与云协同** 边缘计算并不是完全替代云计算,而是与云计算协同工作。边缘节点处理实时性要求高的任务,而云计算负责大规模数据分析和长期存储。
2025-05-09 21:58:50
1305
原创 布隆过滤器:高效的数据结构与应用详解
布隆过滤器(Bloom Filter)是一种高效的空间节省型概率数据结构,用于快速判断某个元素是否存在于集合中。它通过多个哈希函数将元素映射到位数组中,查询时只需检查相应位是否为1即可判断元素是否存在。布隆过滤器的优点包括空间效率高、查询速度快,适用于大规模数据处理,但存在误判率且不支持删除操作。广泛应用于缓存系统、网络爬虫、垃圾邮件过滤和分布式系统等领域。在实际应用中,可以通过Redis的RedisBloom模块或Java的Guava库实现布隆过滤器,并通过Jedis等工具与Redis集成。尽管存在误判率
2025-05-09 21:36:32
1100
原创 MQTT:轻量级物联网通信协议详解
MQTT(Message Queuing Telemetry Transport)是一种轻量级的发布/订阅消息传输协议,广泛应用于物联网(IoT)领域,因其低带宽、低延迟和易于实现的特性成为首选。MQTT的核心概念包括发布/订阅模式、主题、服务质量(QoS)和Broker(代理)。它通过Broker实现消息的转发,支持三种QoS等级,确保消息的可靠性。MQTT协议数据包由固定头、可变头和有效载荷组成,适用于智能家居、工业物联网、车联网和医疗健康等场景。本文还通过Java代码示例展示了如何使用Eclipse
2025-05-09 21:33:25
1150
原创 使用 v-print 实现 Vue 项目中的打印功能
库提供的一个自定义指令,用于在 Vue 项目中快速实现打印功能。它通过简单的配置,可以将指定的 DOM 元素内容打印出来,并支持自定义打印标题、样式等。在 Web 开发中,打印功能是一个常见的需求,尤其是在管理后台、报表系统等场景中。是一个简单易用的 Vue 指令,能够快速实现打印功能。通过灵活的配置,可以满足各种复杂的打印需求。的使用非常简单,只需在需要触发打印的按钮上绑定指令,并指定需要打印的元素的。配置项,可以自定义打印内容的样式,确保打印效果符合需求。回调函数,可以在打印前动态修改打印内容。
2025-04-29 16:52:43
2275
原创 缓存分片哈希 vs 一致性哈希:优缺点、区别对比及适用场景(图示版)
在实际工程中,应根据业务需求选择合适的算法。对于动态扩展和高可用性要求高的场景,一致性哈希是更优的选择;而对于简单固定的场景,缓存分片哈希则更为合适。在分布式缓存系统中,数据分布策略是设计的关键之一。缓存分片哈希和一致性哈希是两种常见的数据分布算法,它们各有优缺点和适用场景。一致性哈希中,可以为每个物理节点分配多个虚拟节点,进一步优化负载均衡。无论是哪种算法,哈希函数的选择都至关重要。每个键通过哈希函数映射到环上的某个位置,然后。)将数据映射到固定的缓存节点,其中。最近的节点作为目标节点。
2025-04-29 10:00:35
1184
原创 TCP vs UDP:核心区别、握手过程与应用场景(附对比图)
SYN=1, ACK=1, seq=y, ack=x+1 (我准备好了,你呢?ACK=1, seq=x+1, ack=y+1 (确认!:同步初始序列号(ISN),确保双方收发能力正常。ACK=1, ack=u+1 (收到请求)ACK=1, ack=v+1 (确认断开)因为TCP是全双工的,两端需分别确认关闭。FIN=1, seq=v (我也要断开)SYN=1, seq=x (我要连接)FIN=1, seq=u (我要断开)直接发送数据包(无握手)
2025-04-28 19:55:49
2069
原创 Git 撤回合并提交
是我们经常使用的功能。然而,有时合并后可能会发现问题,需要撤回合并。本文将基于一次实际场景,详细介绍如何撤回未推送到远程仓库的合并提交。:以上方法适用于尚未推送到远程仓库的合并。如果已经推送到远程仓库,撤回合并会修改历史记录,可能需要强制推送(如果不知道合并前的提交哈希值,可以使用。中可以看到,合并提交的上一个提交是。在日常开发中,Git 的合并操作(如果不想修改提交历史,可以使用。根据实际需求选择合适的方法即可。找到合并前的提交哈希值(例如。确保生成了一个新的撤销提交。确保合并提交已被移除。
2025-04-27 09:59:46
1229
2025Mac开源Chat2DB-ARM64图形化数据库管理神器
2025-10-23
2025Chrome插件FireShot最强网页截图工具
2025-10-23
2025Chrome免费AI沉浸式翻译插件双语对照神器 插件
2025-10-23
2025Mac最美观Redis客户端TinyRDM1.2.5-arm64一键安装包
2025-10-23
Kafka可视化 Kafka-King Mac版本
2024-11-28
ES可视化 ES-King Mac版本
2024-11-28
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅