<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[scugxl的专栏]]></title><description><![CDATA[java coder]]></description><link>https://blog.youkuaiyun.com/scugxl</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; scugxl]]></copyright><item><title><![CDATA[博客已迁移到github]]></title><link>https://blog.youkuaiyun.com/scugxl/article/details/160187075</link><guid>https://blog.youkuaiyun.com/scugxl/article/details/160187075</guid><author>scugxl</author><pubDate>Wed, 15 Apr 2026 16:48:58 +0800</pubDate><description><![CDATA[博客已迁移到github。]]></description><category></category></item><item><title><![CDATA[[cs221] p1 General Intro]]></title><link>https://blog.youkuaiyun.com/scugxl/article/details/157768523</link><guid>https://blog.youkuaiyun.com/scugxl/article/details/157768523</guid><author>scugxl</author><pubDate>Thu, 05 Feb 2026 14:43:03 +0800</pubDate><description><![CDATA[]]></description><category></category></item><item><title><![CDATA[【翻译】我用 PostgreSQL 替换了 Redis（而且更快）]]></title><link>https://blog.youkuaiyun.com/scugxl/article/details/157397573</link><guid>https://blog.youkuaiyun.com/scugxl/article/details/157397573</guid><author>scugxl</author><pubDate>Mon, 26 Jan 2026 16:53:49 +0800</pubDate><description><![CDATA[我用PostgreSQL替换Redis并实现更快性能 摘要： 作者分享了将Redis功能迁移到PostgreSQL的经验，成功简化技术栈并降低成本。PostgreSQL通过UNLOGGED表实现高效缓存（0.08ms插入），使用LISTEN/NOTIFY进行发布/订阅（2-5ms延迟），以及利用SKIP LOCKED特性构建任务队列。虽然单个操作略慢于Redis，但整体性能更优，且消除了数据一致性问题。这一改变每月节省约100美元运维成本，并减少了系统复杂度。特别展示了实时日志流的实现方案，通过触发器自动发]]></description><category></category></item><item><title><![CDATA[《高性能mysql》读书笔记]]></title><link>https://blog.youkuaiyun.com/scugxl/article/details/157177904</link><guid>https://blog.youkuaiyun.com/scugxl/article/details/157177904</guid><author>scugxl</author><pubDate>Tue, 20 Jan 2026 15:27:01 +0800</pubDate><description><![CDATA[摘要：本文介绍了MySQL存储过程的监控方法。通过示例展示了创建简单存储过程SimpleSelectOne，演示了如何查询performance_schema.events_statements_history表来监控存储过程中的SQL执行情况。重点说明了仅能看到执行的SQL而无法直接识别所属存储过程的问题，并提供了通过关联call_event_id和nesting_event_id字段来追踪存储过程调用的解决方案。文中包含SQL查询示例和截图说明，帮助理解存储过程监控的实际操作流程。]]></description><category></category></item><item><title><![CDATA[mysql federatedengine 使用]]></title><link>https://blog.youkuaiyun.com/scugxl/article/details/157138288</link><guid>https://blog.youkuaiyun.com/scugxl/article/details/157138288</guid><author>scugxl</author><pubDate>Mon, 19 Jan 2026 16:53:27 +0800</pubDate><description><![CDATA[MySQL联邦表(FEDERATED引擎)存在严重性能问题：当查询无法使用索引时，会从远程表获取所有数据在本地进行过滤，导致内存暴增和网络过载。测试显示，500万行数据在源端执行仅需0.6秒，而通过联邦表查询耗时10分钟且内存从150MB飙升至1.6GB。问题根源在于联邦表不会下推WHERE条件到远程服务器，而是将所有数据拉取到本地处理。这解释了生产环境中MySQL因OOM被kill的现象。建议避免对大表使用联邦表，或确保查询能利用远程表索引。]]></description><category></category></item><item><title><![CDATA[虎嗅24小时屏蔽机器人评论的油猴脚本]]></title><link>https://blog.youkuaiyun.com/scugxl/article/details/156980598</link><guid>https://blog.youkuaiyun.com/scugxl/article/details/156980598</guid><author>scugxl</author><pubDate>Thu, 15 Jan 2026 10:19:16 +0800</pubDate><description><![CDATA[本文介绍了一个名为&quot;虎嗅评论过滤&quot;的油猴脚本，用于自动检测并屏蔽虎嗅网站上评论数超过100页的用户评论。脚本通过定时检查新评论（间隔2秒），从评论元素中采用多种方式提取用户ID（包括会员链接、data属性、class/id等），然后向虎嗅API发送请求获取用户评论总页数。当检测到用户评论页数超过设定阈值时，脚本会自动屏蔽该用户的评论。脚本还实现了请求队列管理，避免重复检查同一用户，并包含详细的调试日志功能，便于排查问题。]]></description><category></category></item><item><title><![CDATA[Mydumper一致性数据dump]]></title><link>https://blog.youkuaiyun.com/scugxl/article/details/156764768</link><guid>https://blog.youkuaiyun.com/scugxl/article/details/156764768</guid><author>scugxl</author><pubDate>Fri, 09 Jan 2026 15:41:56 +0800</pubDate><description><![CDATA[本文探讨了将MySQL大数据库迁移到ClickHouse进行分析的三种方法：1)使用ClickHouse的MySQL引擎进行远程查询，但性能受限；2)利用MaterializedMySQL引擎(22版本)进行复制，但新版本已移除；3)采用mydumper工具导出数据后增量同步。重点分析了mydumper的工作原理，它通过获取全局读锁(FTWRL)确保数据一致性，记录binlog位置，并在多线程环境下创建一致性快照，最后释放锁以最小化对生产环境的影响。该方法相比mysqldump具有更高性能和更小的文件体积。]]></description><category></category></item><item><title><![CDATA[PostgreSQL 完全迁移指南：从 MySQL 到 PostgreSQL 的详细教程]]></title><link>https://blog.youkuaiyun.com/scugxl/article/details/151959836</link><guid>https://blog.youkuaiyun.com/scugxl/article/details/151959836</guid><author>scugxl</author><pubDate>Mon, 22 Sep 2025 12:15:03 +0800</pubDate><description><![CDATA[PostgreSQL迁移指南：从MySQL到PostgreSQL的关键差异与实践 本文为熟悉MySQL但缺乏PostgreSQL经验的高级后端程序员提供全面的迁移参考。重点对比了两大数据库系统的核心架构差异： MVCC机制：MySQL使用增量存储，PostgreSQL采用整行复制，导致不同的表膨胀特性和性能表现 存储架构：PostgreSQL的统一存储引擎与MySQL的多引擎架构对比 数据类型：PostgreSQL提供更丰富的类型系统，包括JSONB、数组、范围类型等高级特性 指南还涵盖了SQL语法差异、性]]></description><category></category></item><item><title><![CDATA[[metabase]高级使用技巧1 geojson导入和图表，动态sql执行， 动态过滤，动态分组，动态列]]></title><link>https://blog.youkuaiyun.com/scugxl/article/details/151955230</link><guid>https://blog.youkuaiyun.com/scugxl/article/details/151955230</guid><author>scugxl</author><pubDate>Mon, 22 Sep 2025 10:19:40 +0800</pubDate><description><![CDATA[本文是metbase的高级技巧分享，主要包括：geojson导入和图表，动态sql执行， 动态过滤，动态分组，动态列]]></description><category></category></item><item><title><![CDATA[centos7 docker离线安装]]></title><link>https://blog.youkuaiyun.com/scugxl/article/details/151218788</link><guid>https://blog.youkuaiyun.com/scugxl/article/details/151218788</guid><author>scugxl</author><pubDate>Fri, 05 Sep 2025 11:37:14 +0800</pubDate><description><![CDATA[本文介绍了在CentOS 7.6无网络环境下离线安装Docker 18.03的方法。通过Docker in Docker方式下载依赖：1)启动centos:7.6.1810容器并挂载输出目录；2)更新EOL的yum源；3)添加Docker官方repo；4)使用yumdownloader下载docker-ce和containerd.io的rpm包。最后将下载的rpm包复制到目标机器，通过yum localinstall安装，必要时可删除冲突依赖包（如selinux*等）。该方法适用于高安全企业环境。]]></description><category></category></item><item><title><![CDATA[[metabase]系列文章- 数据迁移h2到mysql]]></title><link>https://blog.youkuaiyun.com/scugxl/article/details/150768027</link><guid>https://blog.youkuaiyun.com/scugxl/article/details/150768027</guid><author>scugxl</author><pubDate>Mon, 25 Aug 2025 14:02:38 +0800</pubDate><description><![CDATA[在可能在使用后才能发现h2不是一个生产环境很好用的选择，所以本文选择mysql作为底层数据存储。并且描述如何从h2迁移到mysql。]]></description><category></category></item><item><title><![CDATA[metabase基础使用技巧 （dashboard, filter)]]></title><link>https://blog.youkuaiyun.com/scugxl/article/details/150336852</link><guid>https://blog.youkuaiyun.com/scugxl/article/details/150336852</guid><author>scugxl</author><pubDate>Wed, 13 Aug 2025 09:36:26 +0800</pubDate><description><![CDATA[本文介绍了Metabase的基础功能和使用方法。主要包含三个核心功能：1）Question功能，通过可视化界面创建格式化的查询，支持数据筛选、分组和图表展示；2）SQL Query功能，支持直接编写SQL查询并定义变量；3）Filter功能，包括文本、数字、日期和字段筛选器，支持动态关联表字段。文章还讲解了如何实现Dashboard上的筛选器联动，通过连接查询字段实现多个查询的同步筛选效果。]]></description><category></category></item><item><title><![CDATA[[metabase]系列文章-安装与介绍]]></title><link>https://blog.youkuaiyun.com/scugxl/article/details/150004029</link><guid>https://blog.youkuaiyun.com/scugxl/article/details/150004029</guid><author>scugxl</author><pubDate>Thu, 07 Aug 2025 11:04:26 +0800</pubDate><description><![CDATA[本文是metabase系列文章的第一部分，作者在调研BI系统时基于开源、免费、易用和可集成的标准，对比了Apache Superset、Grafana、Metabase等工具。最终选择Metabase主要因其用户友好性、简单安装和集成便利，尽管存在企业版功能限制。文章详细介绍了通过Docker快速部署Metabase的步骤，包括初始设置、数据库连接配置和域名设置，并展示了系统自带的丰富数据示例。后续将深入介绍Metabase的基础使用。]]></description><category></category></item><item><title><![CDATA[[metabase]系列文章]]></title><link>https://blog.youkuaiyun.com/scugxl/article/details/150003515</link><guid>https://blog.youkuaiyun.com/scugxl/article/details/150003515</guid><author>scugxl</author><pubDate>Thu, 07 Aug 2025 10:32:17 +0800</pubDate><description><![CDATA[本文拟撰写Metabase使用技巧系列文章，涵盖基础到高级功能。主要内容包括：Metabase安装指南、仪表盘和过滤等基础操作、H2数据库查看与迁移至MySQL技巧；高级应用涉及GeoJSON地图数据导入、动态SQL查询与分组、列过滤功能实现，以及Java/Python等SDK嵌入与参数配置方法。文章旨在帮助用户从入门到精通掌握Metabase数据分析工具。]]></description><category></category></item><item><title><![CDATA[记录某大型风控系统调研中踩坑]]></title><link>https://blog.youkuaiyun.com/scugxl/article/details/149571144</link><guid>https://blog.youkuaiyun.com/scugxl/article/details/149571144</guid><author>scugxl</author><pubDate>Thu, 24 Jul 2025 09:37:02 +0800</pubDate><description><![CDATA[本文记录了迁移大型风控系统时遇到的技术难点与解决方案。主要内容包括：1）后端编译阶段通过Nexus镜像和HTTP Maven仓库配置解决依赖问题；2）数据库层面处理了UUID生成异常、binlog函数信任、GROUP_CONCAT长度限制等问题；3）特殊场景下FEDERATED引擎和SQL模式配置的调整；4）运行时优化MyBatis日志输出性能，并实现自定义ID生成插件。这些实践经验为类似系统迁移提供了参考，特别是针对无原始技术支持情况下的技术适配工作。]]></description><category></category></item><item><title><![CDATA[调查APISIX上的java插件重启问题]]></title><link>https://blog.youkuaiyun.com/scugxl/article/details/148715040</link><guid>https://blog.youkuaiyun.com/scugxl/article/details/148715040</guid><author>scugxl</author><pubDate>Tue, 17 Jun 2025 14:39:32 +0800</pubDate><description><![CDATA[摘要：APISIX Java插件自动重启问题排查
问题：APISIX中Java插件会无故自动重启。
调查过程：

日志排查无异常，但发现respawn相关记录
通过dmesg发现是Linux OOM Killer杀死了Java进程
根本原因是k8s容器内存限制(2GB)被耗尽
Java进程配置(1GB堆内存)与容器内存限制冲突

解决方案：

增加APISIX容器内存限制
或降低Java堆内存参数(Xms/Xmx)

经验：

善用AI获取系统架构信息
掌握dmesg过滤OOM日志技巧

]]></description><category></category></item><item><title><![CDATA[【温故知新】直观看到synchronized的锁升级过程]]></title><link>https://blog.youkuaiyun.com/scugxl/article/details/148528728</link><guid>https://blog.youkuaiyun.com/scugxl/article/details/148528728</guid><author>scugxl</author><pubDate>Mon, 09 Jun 2025 10:14:53 +0800</pubDate><description><![CDATA[本文将直观展示synchronized的多个锁升级过程和使用场景。温故知新]]></description><category></category></item><item><title><![CDATA[监控房价和挂牌数量的工具-以成都房价为例]]></title><link>https://blog.youkuaiyun.com/scugxl/article/details/140371434</link><guid>https://blog.youkuaiyun.com/scugxl/article/details/140371434</guid><author>scugxl</author><pubDate>Fri, 12 Jul 2024 10:14:01 +0800</pubDate><description><![CDATA[本文将介绍如何通过择维士zervice提供的工具来监控成都房价（其他城市或者地区类似），包括价格和挂牌数量。可以对购房一族提供数据参考。]]></description><category></category></item><item><title><![CDATA[【闲聊】一个关注健康的小程序--科技镜头]]></title><link>https://blog.youkuaiyun.com/scugxl/article/details/130911329</link><guid>https://blog.youkuaiyun.com/scugxl/article/details/130911329</guid><author>scugxl</author><pubDate>Sun, 28 May 2023 15:54:16 +0800</pubDate><description><![CDATA[一个可以快速扫描食品配料表的镜头，您只需拍摄食品配料表的照片，即可获得对您所摄取的食品配料的智能分析和健康建议。无需复杂的搜索和研究，让您轻松了解每种食品中的成分和潜在的健康影响。]]></description><category></category></item><item><title><![CDATA[写给Java程序员的GRPC入门系列（3）]]></title><link>https://blog.youkuaiyun.com/scugxl/article/details/128473940</link><guid>https://blog.youkuaiyun.com/scugxl/article/details/128473940</guid><author>scugxl</author><pubDate>Wed, 28 Dec 2022 21:04:52 +0800</pubDate><description><![CDATA[网上有很多GRPC的例子，但是却没有能够写给普通Java开发人员手把手入门少走弯路的教程。本教程保证按照步骤一步步来你就可以完成GRPC从0到1的构建。]]></description><category></category></item></channel></rss>