自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(63)
  • 收藏
  • 关注

原创 Go 中自定义类型与基础类型间的显式类型转换详解

2026-05-16 00:22:09 124

原创 mysql存储引擎性能基准测试_InnoDB与MyISAM对比指南

应优先选InnoDB:因MyISAM不支持事务、行锁、外键及崩溃恢复,sysbench oltp_read_write会失败,仅oltp_point_select可运行但无参考价值;怎么选InnoDB还是MyISAM做基准测试?很多人直接套用同一套 sysbench --test=oltp_read_write 命令对比两个引擎,但忽略关键配置差异:InnoDB 严重依赖 innodb_buffer_pool_size,而 MyISAM 几乎不走 buffer pool,只靠 OS page cache;

2026-05-16 00:21:01 180

原创 SQL触发器中调用外部接口如何操作_配置外部存储过程引用

触发器只负责写一条记录到中间表或发消息,其他交给更合适的环境处理。在触发器里插入一条记录到 dbo.OutboundWebhookQueue 表,含 event_type、payload_json、status 字段用 SQL Server Agent 作业每 5 秒轮询该表,查出待发送的记录,再用 xp_cmdshell 调用 PowerShell 脚本(需启用且仅限可信环境)更健壮的做法:用 Service Broker 发送消息,由 .NET/Python 服务监听并执行 HTTP 调用;

2026-05-16 00:19:52 156

原创 golang如何操作InfluxDB时序数据库_golang操作InfluxDB时序数据库方法

2026-05-16 00:18:44 217

原创 换CPU对HTML开发帮助大吗_多核与单核性能对比说明【说明】

2026-05-16 00:17:34 165

原创 Vue.js深度分析Diff算法在长列表渲染中的性能优化建议

2026-05-15 22:52:51 147

原创 MySQL如何解决锁等待超时异常_捕获MySQL Error 1205错误

2026-05-15 22:51:40 163

原创 如何在 JavaScript 循环中动态构建 HTML 字符串

2026-05-15 22:50:29 185

原创 mysql如何快速定位导致锁表的SQL语句_监控与排查技巧

RUNNING 但 TRX_STARTED 时间很早,大概率是长事务没提交TRX_QUERY 字段不一定有值——如果事务只执行了 BEGIN 没跑 SQL,或者 SQL 已执行完但事务仍开着,这里就是 NULL别只盯着 TRX_QUERY,要结合 TRX_STARTED 和 TRX_WAITING_TRX_ID 判断因果关系用 SHOW PROCESSLIST 匹配线程与 SQL查到可疑的 TRX_MYSQL_THREAD_ID 后,立刻执行 SHOW PROCESSLIST,找对应 ID 的那一行。

2026-05-15 22:49:18 180

原创 uni-app怎么获取短信验证码 uni-app接入短信平台流程【实战】

实操建议:把倒计时逻辑封装成可复用的 Composition 函数(Vue 3)或 mixin(Vue 2),用 onUnload 或 onHide 钩子主动 clearInterval使用 ref 存储剩余秒数,配合 watch 或计算属性更新按钮文案,避免手动操作 DOM按钮禁用状态必须同时控制:UI 禁用 + disabled 属性 + 点击事件内提前 return,三者缺一不可示例关键片段:let timer = null;真机调试收不到短信?

2026-05-15 22:48:06 264

原创 Layui表格怎么在单元格里显示进度条

2026-05-13 20:05:49 198

原创 JavaScript中骨架屏Skeleton在异步数据加载中应用

骨架屏的核心作用是提升用户感知性能——用模拟真实内容布局的视觉占位符替代空白等待,降低加载焦虑;它比loading图标更能建立界面认知,需通过请求前插入、请求后替换实现,并注重结构准确、动画克制与切换干净。骨架屏(Skeleton)在 JavaScript 异步数据加载中,核心作用是提升用户感知性能——用视觉占位符替代空白等待,让界面“看起来正在工作”,降低用户对加载延迟的焦虑。骨架屏则模拟真实内容的布局、层级和大致尺寸(比如头像圆角、标题行宽、段落长度),让用户提前建立界面认知。

2026-05-13 20:04:36 183

原创 CSS如何利用Less构建高度自定义组件_通过样式作用域防止冲突与溢出

更可控的做法是:把变量注入到组件作用域内,而非依赖外部定义:组件 .less 文件顶部用 @import (reference) 引入基础变量,它不会输出 CSS,只供计算使用关键尺寸、颜色等通过参数化 mixin 定义,比如 .btn-style(@bg: @primary-color, @radius: 4px),调用时显式传参避免在组件中重新赋值全局变量(如 @primary-color: red;),这会影响后续所有导入它的文件这样改一个组件的配色,不会导致导航栏按钮也跟着变。

2026-05-13 20:03:22 254

原创 C#怎么使用with表达式 C#record类型中with表达式怎么用如何创建对象的修改副本【语法】

2026-05-13 20:02:08 202

原创 如何添加超链接_a标签href属性详解【详解】

2026-05-13 20:00:52 200

原创 PHP 中 end() 函数如何改变数组内部指针并影响后续遍历操作

end() 并不修改数组元素本身,而是将 PHP 数组的内部指针移动到末尾位置,从而影响 key()、current()、next() 等依赖指针的函数行为;`end()` 并不修改数组元素本身,而是将 php 数组的**内部指针**移动到末尾位置,从而影响 `key()`、`current()`、`next()` 等依赖指针的函数行为;该指针是数组的隐式状态,独立于数组值本身,它决定了 current()、key()、next()、prev()、reset() 和 end() 等函数的返回结果。

2026-05-11 21:32:49 230

原创 将 HTML 标题(h2–h6)自动转换为带锚点的目录列表

2026-05-11 21:31:36 174

原创 HTML函数在多开浏览器标签时卡顿吗_内存管理优化建议【技巧】

多开标签时卡顿,往往不是函数本身慢,而是这些操作触发了强制同步布局(layout)、重绘(paint),尤其在后台标签页仍持续执行定时器或监听器时,CPU 和内存压力会叠加。这些都会偷偷吃掉资源;改用 requestIdleCallback 做低优先级更新,它会在浏览器空闲时才执行对动画类操作,优先用 CSS transform 和 opacity,它们走合成线程,不触发布局计算innerHTML vs createElement:性能差异取决于场景不是“哪个更快”,而是“在哪种结构下更可控”;

2026-05-11 21:30:24 167

原创 如何利用虚拟 DOM 实现无痕刷新?基于 VNode 对比的状态保持技巧

表单元素务必设置稳定且唯一的 key(例如 key="input-username"),避免用索引 不要在更新时动态改变 type(如从 text 切到 password),这会导致 input 元素被替换,丢失 focus 和 value 保持 name 属性不变,浏览器依赖它维持表单控件的关联状态(如 label for、表单序列化)手动接管易丢失的状态虚拟 DOM 不自动保存光标位置、滚动距离、选中文本等原生状态,需在 patch 前后主动读取与恢复。

2026-05-11 21:29:11 230

原创 SQL如何统计每个用户的首次行为时间_MIN聚合与分组

比自连接或子查询更直观、性能通常更好(尤其加了 (user_id, event_time) 复合索引后)。示例:SELECT user_id, event_time, event_typeFROM ( SELECT user_id, event_time, event_type, ROW_NUMBER() OVER (PARTITION BY user_id ORDER BY event_time) AS rn FROM events) tWHERE rn = 1;

2026-05-11 21:27:58 226

原创 新手如何理解父子组件生命周期执行顺序?解决通信时机错误的指南

父子组件生命周期执行顺序是“父先于子挂载、子先于父销毁”,核心在于数据流与时机依赖;父子组件生命周期执行顺序,核心是“父先于子挂载、子先于父销毁”,但通信出错往往卡在“子组件还没准备好,父组件就发消息”或“父组件已更新,子组件还用旧数据”。关键不是死记顺序,而是抓住数据流和时机依赖关系。子组件开始初始化)子 beforeCreate → 子 created → 子 beforeMount → 子 mounted(子组件完成挂载)父 mounted(父组件 DOM 挂载完成,此时子组件已就绪)?

2026-05-08 21:41:53 205

原创 Redis怎样简便地操作不同数据结构

字段名别含空格或冒号,虽然 Redis 不拦,但后续用正则或日志切分时容易出岔如果字段值本身是 JSON 字符串(比如 tags: ["a","b"]),那就退化成 string 存,别硬塞进 hash——hash 适合原子字段,不适合嵌套结构HLEN 查字段数比 HGETALL 再算长度快得多,尤其大 hash用 LPUSH/RPOP 做队列,别碰 BLPOP 除非真要阻塞消息队列场景下,LPUSH job:queue {"id":123} 入队,RPOP job:queue 出队,简单可靠。

2026-05-08 21:40:40 229

原创 如何在 MySQL 中实现基于全字段唯一性的重复行计数更新

本文介绍如何利用 mysql 的 `on duplicate key update` 机制,针对由多个外键列(如 `column2_id`, `column3_id`, `column4_id`)共同构成逻辑唯一性的场景,实现“插入新行时若已存在完全相同的组合值,则不新增记录,而是将 `count` 字段自增1”的业务需求。VWO 一个A/B测试工具。

2026-05-08 21:39:26 204

原创 为什么安装宝塔面板后无法访问_检查安全组与防火墙放行8888端口

宝塔面板8888端口打不开,首要排查云厂商安全组是否放行该端口;最后排除HTTPS强制跳转干扰。安全组修改后**立即生效**,不用重启服务器或宝塔有些云平台默认只开放 22 和 80,8888 绝对不在白名单里如果你用的是轻量应用服务器(如腾讯云Lighthouse),得去「防火墙」页配,不是安全组本地能 telnet 通但浏览器打不开,大概率是系统防火墙没关或没放行Linux 自带的 firewalld 或 ufw 默认会拦截非标准端口,宝塔的 8888 就属于“非标准”,不显式放行就进不来。

2026-05-08 21:38:12 248

原创 如何在Bootstrap中制作一个精美的404错误页面

Bootstrap 5 可用栅格和工具类快速构建响应式404页:用.d-flex.flex-column.min-vh-100实现全高布局,display-1.fw-bold控制标题,text-muted设副文案,img-fluid.mx-auto.d-block+固定height防图片加载失败塌陷,避免废弃的jumbotron和冗余card。card 则自带 padding、border 和 box-shadow,在纯错误页里反而增加视觉噪音,还可能干扰垂直居中逻辑。

2026-05-08 21:36:57 182

原创 Go语言Redis怎么做分布式锁_Go语言Redis分布式锁教程【基础】

更稳妥的做法是改用 SETEX 或(推荐)SET 命令的原子选项:c.Do("SET", "mylock", "abc", "NX", "EX", "10") —— 注意顺序:NX 和 EX 是 flag,不是值,必须紧挨在 value 后面用官方 github.com/go-redis/redis/v9 的 SetNX 方法,自动处理类型和错误,返回 bool, error别自己拼 Do,除非你明确需要绕过 client 封装做特殊协议操作用 redigo 还是 go-redis/v9?

2026-05-07 22:06:11 171

原创 SQL多表JOIN产生性能瓶颈如何排查_EXPLAIN分析连接类型说明

是的话,当前查询根本没用上索引检查 JOIN 条件字段和 WHERE 条件字段的索引覆盖情况,优先建联合索引,比如 (user_id, status) 比单列 status 索引更可能被选中注意索引顺序:如果写的是 WHERE status =?,但索引是 (user_id, status),MySQL 仍可能不走索引(最左前缀原则)JOIN顺序不对导致驱动表选错MySQL 的 JOIN 优化器会选一个“驱动表”(outer table),然后用它的结果集去驱动被驱动表(inner table)查询。

2026-05-07 22:04:26 191

原创 Vue 3 中集成 Three.js 场景的完整实践指南

2026-05-07 22:02:44 232

原创 JavaScript中Tree-shaking失效的场景及其优化对策

一旦出现动态、副作用或非标准引用,摇树就无法安全剔除。没声明则默认视为有副作用,整包保留 自己写的工具模块,确保不带副作用:避免 window.xxx = ...、Array.prototype.xxx = ...、console.log()(尤其在顶层)、fetch() 等 如有必要保留副作用,显式标注:"sideEffects": ["*.css", "*.scss"],其余文件才可被安全摇掉CommonJS 混入或 Babel 转译污染 ESM 结构ESM 是 tree-shaking 的前提。

2026-05-07 22:00:57 189

原创 JavaScript 数组引用陷阱与“破纪录”问题的正确解法

本文详解如何修复因数组引用导致的逻辑错误,通过深拷贝避免副作用,正确统计最高分和最低分的破纪录次数。在解决经典的「Breaking Records」(破纪录)问题时,核心目标是:给定一个整数数组表示连续比赛得分,统计打破最高分纪录的次数(严格大于此前所有成绩)和打破最低分纪录的次数(严格小于此前所有成绩),首项不计入统计。但实际运行结果错误(如输入 [10,5,20,20,4,5,2,25,1] 输出非预期的 [?]),根本原因在于 JavaScript 中数组是引用类型。

2026-05-07 21:59:10 193

原创 MySQL无法创建新表空间_检查innodb_file_per_table配置

innodb_file_per_table关闭时新表不生成独立.ibd文件而存入ibdata1;innodb_file_per_table 关闭时无法创建独立表空间MySQL 5.6.6+ 默认开启 innodb_file_per_table,但如果你的实例是老版本升级而来、或被显式关闭过,新建 InnoDB 表就不会生成独立的 .ibd 文件,而是全部挤进共享表空间 ibdata1 —— 这意味着你根本“看不到”新表对应的新表空间,也谈不上后续的迁移、truncate 释放空间等操作。

2026-05-06 20:38:09 151

原创 如何解决OUI图形界面无法调用_xhost与DISPLAY变量设置

验证用xclock;本地运行 OUI(比如在装了桌面的 Linux 上):用 echo $DISPLAY 确认值,通常是 :0 或 unix:0;这时得改用 sudo -i -u oracle,并确保 /etc/sudoers 中有 Defaults env_keep += "DISPLAY"静默安装绕过图形界面,比死磕 DISPLAY 更可靠如果你只是想装 Oracle 数据库,不是非要用图形向导——OUI 支持纯命令行响应文件安装,既跳过所有 DISPLAY/_xhost 问题,又可复现、可审计。

2026-05-06 20:36:34 194

原创 如何进行SQL数值取整_对比FLOOR与CEIL函数应用场景

例如FLOOR(2.9)=2、FLOOR(-2.1)=-3,CEIL(2.1)=3、CEIL(-2.9)=-2,二者均非四舍五入,且在所有主流SQL方言中行为一致。比如 FLOOR(2.9) 是 2,FLOOR(-2.1) 是 -3;ROUND(2.5) 可能是 2 或 3(取决于实现),FLOOR(2.5) 永远是 2CAST(-2.7 AS INTEGER) 在 PostgreSQL 返回 -2,在 SQL Server 返回 -2,但语义不清晰;

2026-05-06 20:34:58 209

原创 CSS如何实现导航栏下划线随鼠标移动_利用-hover伪类与过渡动画控制

把下划线 DOM 节点放在 nav 内部最末尾,和 a 同级用 addEventListener('mouseenter', ...) 绑定到每个 a,避免用 onmouseover(会冒泡触发多次)别忘了加 mouseleave 回退逻辑:比如移出导航时,下划线缓慢缩回中间或收起用 getBoundingClientRect() 比 offsetLeft 更可靠如果导航栏有 padding、flex 布局或 transform 缩放,offsetLeft 会算不准位置,导致下划线偏移。

2026-05-06 20:33:14 186

原创 c++如何读取BMP位图并提取像素点的RGB值_二进制偏移读取【附代码】

每行读取字节数 = (width * bit_count / 8 + 3) & ~3,其中 bit_count 是 biBitCount逐行读入临时缓冲区,再从中提取有效像素:对第 y 行(从底向上),有效像素起始位置是 y * row_stride,但内存中第 0 行对应图像最下面一行24 位 BMP 每像素 3 字节,顺序是 B、G、R(不是 RGB),要手动交换:rgb[0] = pixel[2];不,std::vector 的数据是连续的(C++11 起标准强制要求),且能自动管理生命周期。

2026-05-06 20:31:30 220

原创 MongoDB的大文本聚合查询导致mongos OOM怎么解决_内存限制与磁盘溢出临时文件

默认没有内存上限,遇到几百万行文本字段聚合,mongos 很快 OOM。实操建议:聚合开头就用 $project 显式排除大字段:{ content: 0, attachment_data: 0 }如果真要统计文本长度,用 { len: { $strLenCP: "$content" } },别把原文本带进后续 stage确认分片键是否包含时间字段(如 created_at),聚合时务必加时间范围过滤,减少扫描分片数allowDiskUse: true 为什么有时还是 OOM?

2026-05-01 20:42:06 183

原创 MySQL 存储过程中字符集与排序规则不匹配导致查询性能下降的解决方案

验证与诊断步骤首先确认 ref_id 列的真实字符集与排序规则:SELECT column_name, character_set_name, collation_nameFROM INFORMATION_SCHEMA.COLUMNSWHERE table_schema = 'your_database_name' AND table_name = 'notification' AND column_name = 'ref_id';

2026-05-01 20:40:21 203

原创 golang如何阅读sync包源码_golang sync包源码阅读思路

应从 mutex.go、waitgroup.go、once.go 三个文件开始读 sync 包源码,它们是 Go 并发原语的核心实现,代码精简且逻辑清晰;避免过早深入 runtime 或 atomic 包。从哪几个文件开始读 sync 包源码直接打开 $GOROOT/src/sync 目录,核心就三个文件: mutex.go、waitgroup.go、once.go —— 其它如 pool.go、map.go 是衍生实现,先别碰。不搞清这些位,等于没读。立即学习“go语言免费学习笔记(深入)”;

2026-04-29 23:32:46 186

原创 Go 中实现无侵入式方法级执行时间监控的完整实践指南

本文介绍如何在 go 应用中优雅、低开销地采集 http 请求级与业务逻辑级的执行时间指标(如 p50/p95 延迟),支持导出至 graphite/statsd 等监控系统,全程避免污染核心业务代码。本文介绍如何在 go 应用中优雅、低开销地采集 http 请求级与业务逻辑级的执行时间指标(如 p50/p95 延迟),支持导出至 graphite/statsd 等监控系统,全程避免污染核心业务代码。在生产环境中持续观测服务响应性能,关键在于可观测性设计的非侵入性与指标采集的低开销性。

2026-04-29 23:31:09 183

原创 如何通过Vagrant快速建库_自动化虚拟机Oracle部署方案

必须用 privileged: true 运行 shell provisioner,否则 sysctl -p 和 usermod 会静默失败禁用交互的关键是预设响应:在安装前运行 echo "y" | /etc/init.d/oracle-database configure(19c)或设置 ORACLE_INSTALL_AUTO=true 环境变量不要直接 yum install -y 后立刻调 runInstaller;

2026-04-28 22:19:02 227

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除