程序员茄子
全部
编程
代码
资讯
案例
综合
联系我们
案例(第2页)
php
mysql
shell
go
vue
css
api接口对接
支付接口对接
MySQL 排序规则迁移:utf8mb4_0900_ai_ci、89 种 collation 与 5.7 回导报错
案例
MySQL 排序规则迁移:utf8mb4_0900_ai_ci、89 种 collation 与 5.7 回导报错
2026-10-15 01:43:47
MySQL 8.0 把 utf8mb4 默认排序规则从 utf8mb4_general_ci 换成 utf8mb4_0900_ai_ci:拆解 collation 命名后缀、UCA 版本号、89 种 utf8mb4 排序规则从哪来,以及 8.0 建表回导 5.7/5.6 报错、NO PAD 与 PAD SPACE 的差异,给出选型与迁移注意点。
排序规则
collation
MySQL
数据库
字符集
utf8mb4
运维
微信支付合单支付文档更新:sub_orders 字段名没变,语义从「子单」改成了「商品单」
案例
微信支付合单支付文档更新:sub_orders 字段名没变,语义从「子单」改成了「商品单」
2026-10-14 21:02:54
微信支付合单支付把 sub_orders、out_trade_no 的语义描述从「子单」改为「商品单」,字段名没变但业务映射可能理解错。另整理进件地址字段长度放宽、退款 user_received_account 不再展示卡尾号等近期变更。
微信支付
支付接口
API
字段变更
对账
PayZephyr:一个 Payment facade 统一 8 家支付网关的 Laravel 包
案例
PayZephyr:一个 Payment facade 统一 8 家支付网关的 Laravel 包
2026-10-10 21:04:32
PayZephyr 是 Laravel 支付包,用一个 Payment facade 统一 Paystack、Stripe、PayPal、Flutterwave、Square、Monnify、OPay、Mollie 八家网关,支持自动 failover、防重复扣款、签名 webhook、订阅与退款。本文给出支付、回调 verify、订阅与部分退款的代码,并提示退款可能异步结算需查 isPending。
支付
Laravel
PHP
防重放
支付网关
订阅
CAD
用 flamegraph 排查 Workers 生产 CPU/内存:从 cf CLI 抓 profile 到 R2 递归调用优化
案例
用 flamegraph 排查 Workers 生产 CPU/内存:从 cf CLI 抓 profile 到 R2 递归调用优化
2026-10-10 20:04:28
Cloudflare Workers 与 Durable Objects 上线按需 CPU/内存 profiling:cf CLI 或 Dashboard 发起采样、看交互式 flamegraph。文中给出 R2 binding 的真实案例——JSON.stringify 递归 replacer 导致嵌套值重复处理、优化后快 2.7 倍;以及内存案例利用 pprof 定位到部分禁用的 Prometheus 代码占 66.7% 分配,修复后 P999 从 133MB 降到 118MB。
Cloudflare
Workers
性能优化
flamegraph
pprof
Serverless
文件
RSI
函数
OBS
内存
渲染
GEOFlow 3.0.0 部署笔记:开发与生产两套 Docker Compose 流程
案例
GEOFlow 3.0.0 部署笔记:开发与生产两套 Docker Compose 流程
2026-10-01 21:03:08
GEOFlow 3.0.0 是 Laravel 内容工程与多站点分发平台,含 AI 质检队列、托管站点、签名更新。这里记开发与生产两套 Docker Compose 流程、组件与运行要求(PHP 8.3+/PostgreSQL+pgvector/Redis)以及升级注意事项。
Laravel
PHP
Docker
自托管
内容平台
助手
OpenFlare:自托管 OpenResty 控制面,Server 发版本、Agent 拉配置并 reload
案例
OpenFlare:自托管 OpenResty 控制面,Server 发版本、Agent 拉配置并 reload
2026-10-01 21:02:26
OpenFlare 是轻量自托管的 OpenResty 控制面:配置版本化、Agent 自动 openresty -t 校验与 reload 失败回滚、TLS 与域名管理。含 Docker Compose 部署与 Agent 接入脚本、发版流程。
OpenResty
Go
自托管
反向代理
Docker
release-hub:用一份 manifest.json 自托管桌面应用更新,不依赖 GitHub Releases
案例
release-hub:用一份 manifest.json 自托管桌面应用更新,不依赖 GitHub Releases
2026-10-01 21:02:26
release-hub 用单二进制加 SQLite 自托管桌面应用的版本检查与下载分发,提供 manifest.json 契约、Stable/Beta 双 channel、流式 SHA-256。含 Docker + Nginx Proxy Manager 部署与 CI 上传命令。
Go
自托管
Docker
桌面应用更新
SQLite
图标
把图床从 PHP/Laravel 换到 Go:ywty 的 Gin、Nuxt 3 与三种部署方式
案例
把图床从 PHP/Laravel 换到 Go:ywty 的 Gin、Nuxt 3 与三种部署方式
2026-10-01 21:02:26
ywty 把 Lsky Pro+ 从 PHP/Laravel 重写成 Go + Gin + GORM、前端升级 Nuxt 3 SSR。含 30+ 表模型、SQLite/MySQL 双支持、Docker Compose、本地开发与生产三种部署方式与命令。
Go
Nuxt
图床
自托管
Gin
Casbin
CAS
海狸IM 2.1 私有化部署:中间件、Go 微服务与 Nginx 的启动顺序
案例
海狸IM 2.1 私有化部署:中间件、Go 微服务与 Nginx 的启动顺序
2026-10-01 20:01:32
海狸IM 后端是 Go + go-zero 的 17 模块微服务,私有化部署的坑集中在启动顺序和 Nginx 收口:先中间件、再初始化库、改 config.txt、按 RPC→API→Admin 起服务,Nginx 漏掉三个 WebSocket 头就会“能登录、收不到消息”。含 LiveKit UDP 端口段、RocketMQ topic 与踩坑清单。
Go
go-zero
微服务
私有化部署
Nginx
Docker
PayPal IPN 退役迁移 REST Webhooks:四种丢单都返回 HTTP 200
案例
PayPal IPN 退役迁移 REST Webhooks:四种丢单都返回 HTTP 200
2026-09-30 21:01:43
PayPal 将于 2027-01 停用 IPN/Website Payments Standard,迁移到 REST Webhooks 时四层同时变化,每层都有对 PayPal 返回 200 的静默丢单模式:form→JSON、mc_gross→resource.amount.value、Completed→COMPLETED 且退款独立事件、_notify-validate 回环→离线 RSA-SHA256,附对照表与自检命令。
支付
PayPal
Webhook
ConvertX:用 Bun + Elysia 写的自托管文件转换器,1000+ 格式跑在自己机器上
案例
ConvertX:用 Bun + Elysia 写的自托管文件转换器,1000+ 格式跑在自己机器上
2026-09-29 21:05:23
ConvertX 是一个自托管的在线文件转换工具,用 TypeScript + Bun + Elysia 写,宣称支持 1000+ 种格式,内置多种转换引擎,Docker 部署即用。它的意义在于文档、图片、音视频的格式互转都在自己的机器上完成,不经第三方在线转换站点。本文给出技术栈、部署方式与落地前要确认的依赖问题(ffmpeg、ImageMagick 等)。
开源工具
自托管
文件转换
Docker
TypeScript
Bun
Certimate:16MB 内存的自托管 SSL 证书自动化,从 ACME 申请到推送部署
案例
Certimate:16MB 内存的自托管 SSL 证书自动化,从 ACME 申请到推送部署
2026-09-29 21:04:17
Certimate 是一个 Go 写的自托管 SSL 证书管理工具,把申请、部署、续期、监控串成可视化工作流:支持 DNS-01/HTTP-01 两种 ACME 验证、单域名/通配符/IP 证书、PEM/PFX/JKS 输出,集成 70+ 域名注册商 DNS API 与 Let's Encrypt/ZeroSSL。运行时内存约 16MB、无外部依赖,Docker 或二进制都能跑。适合不想把证书私钥托管给第三方的团队。
运维
SSL证书
自托管
ACME
开源工具
Go
Redis 8.4 Atomic Slot Migration:把 Slot 迁移从「逐 Key 搬迁」改成整槽复制 + 原子交接
案例
Redis 8.4 Atomic Slot Migration:把 Slot 迁移从「逐 Key 搬迁」改成整槽复制 + 原子交接
2026-09-29 21:03:00
Redis 8.4 的 Atomic Slot Migration 把 Slot 迁移从「逐 Key 搬迁、边迁边切」换成「先复制整槽、再一次性原子交接」,配套 CLUSTER MIGRATION 命令族。旧方式会长期暴露「部分 Key 已迁」的中间态,带来 ASK/TRYAGAIN 重定向、多 Key 操作不稳定、大 Key 尾延迟等问题。本文给出七步流程、大 Key 分段传输与旧数据清理回退条件,并对照 Valkey 9.0 的同类实现。
Redis
运维
RedisCluster
槽迁移
数据库
Valkey
制造
Docker 里把 Redis 6.2 升到 8.8:dbsize 变 0、数据像丢了、启动直接 FATAL
案例
Docker 里把 Redis 6.2 升到 8.8:dbsize 变 0、数据像丢了、启动直接 FATAL
2026-09-29 21:03:00
Docker 下把 Redis 从 6.2-alpine 升到 8.8-alpine,实际会撞上三类问题:匿名 volume 让旧数据不跟随、6.2 的旧配置项让 8.x 启动直接 FATAL CONFIG FILE ERROR、以及最坑的一条——加了 --appendonly yes 后 Redis 只读 AOF 不读 dump.rdb,dbsize 直接返回 0。本文记录两种部署场景的完整步骤、BGSAVE/docker cp/CONFIG SET appendonly yes 的正确顺序,以及 RDB 单向兼容的回滚注意点。
Redis
Docker
运维
持久化
升级
AOF
微信支付 APIv3 平台证书切公钥:回调灰度微信说了算,应答灰度得自己盯满 7 天
案例
微信支付 APIv3 平台证书切公钥:回调灰度微信说了算,应答灰度得自己盯满 7 天
2026-09-29 21:02:08
微信支付 APIv3 平台证书每 5 年要换一次,可改成无有效期的微信支付公钥。但切换有两个灰度维度:回调比例由微信按 0.1% 到 100% 自动放量,应答比例要商户靠 Wechatpay-Serial 头自己推,且全量后还要等 7 天才显示 100%。本文给出切换步骤、公钥 ID 前缀、wechatpay-java 自动下载平台证书导致比例卡住的坑,以及完成切换的前置条件。
微信支付
APIv3
签名验签
支付对接
平台证书
微信支付公钥
vite build 丢 CSS、dev 正常:rolldown #8804 的 side-effect 去重打破了两层 manifest 假设
案例
vite build 丢 CSS、dev 正常:rolldown #8804 的 side-effect 去重打破了两层 manifest 假设
2026-09-28 21:03:49
一个真实构建故障排查:vite 8.0.2+/rolldown rc11+ 后 vite build 产物丢失 CSS(dev 正常),根因是 side-effect import 在 tree-shaking 链里被去重到更深层级,打破了依赖 .vite/manifest.json 的 vite_ruby“副作用在前两层”的假设。附逐版本 override 定位法与两条修复路径。
Vite
Rolldown
前端构建
排障
tree-shaking
微信支付 APIv3 2026 文档更新:合单支付字段语义与退款卡尾号消失的对接影响
案例
微信支付 APIv3 2026 文档更新:合单支付字段语义与退款卡尾号消失的对接影响
2026-09-28 21:02:47
微信支付 2026 年 APIv3 文档更新对服务端的影响:合单支付 sub_orders 语义由“子单”改“商品单”、description 长度 128→127;退款 user_received_account 不再返回卡尾号,按尾号对账与正则解析会失效,附各接口清单与回调解析注意。
微信支付
支付接口
对接
回调
对账
R1
报表
H5
客服
中文
支付宝服务端 SDK 迁移对照:从 certificateExecute / rsaCertCheckV1 到 Easy SDK
案例
支付宝服务端 SDK 迁移对照:从 certificateExecute / rsaCertCheckV1 到 Easy SDK
2026-09-27 21:02:49
支付宝服务端 SDK 文档给出通用版→Easy SDK 的方法替换对照:certificateExecute/execute→Factory.Util.Generic.execute,异步通知验签 rsaCertCheckV1/rsaCheckV1→Factory.Payment.Common.verifyNotify,以及 V3 OpenAPI 的接入建议。本文整理对照表与近期接口层变更。
支付宝
支付
Easy
SDK
OpenAPI
V3
接口对接
Ubuntu unattended-upgrades 把 nginx 升到 1.24.0-2ubuntu7.10,worker 全线 SIGSEGV,一条 apt upgrade 修好
案例
Ubuntu unattended-upgrades 把 nginx 升到 1.24.0-2ubuntu7.10,worker 全线 SIGSEGV,一条 apt upgrade 修好
2026-09-26 21:07:06
一次例行重启后两个站点间歇不可达、Ghost 后台白屏,根因是 Ubuntu unattended-upgrades 自动装的 nginx 1.24.0-2ubuntu7.10 回归,worker 每个请求 SIGSEGV。本文复盘 systemd 显示 active 但 worker 循环崩溃的排查,以及一条 apt upgrade 修好的过程。
运维
nginx
Ubuntu
故障复盘
包管理
画布
rootless Docker 的 slirp4netns 被 OOM 杀掉,6 小时后 json-file 日志缓冲把 daemon 冻死
案例
rootless Docker 的 slirp4netns 被 OOM 杀掉,6 小时后 json-file 日志缓冲把 daemon 冻死
2026-09-26 21:06:20
rootless Docker 下 slirp4netns 泄漏到 3.54GB 被 OOM 杀掉,所有容器失去出站网络;随后 json-file 日志驱动的 blocking 缓冲涨到 6.25GB,logging 进程被杀导致 Docker daemon 死锁。本文复盘三幕过程,并给出日志 non-blocking 配置与 pasta 迁移方案。
运维
Docker
容器
故障复盘
日志
冗余
Kubernetes ingress 六小时 502:default_server 挂在一个被健康检查清空的 upstream 上
案例
Kubernetes ingress 六小时 502:default_server 挂在一个被健康检查清空的 upstream 上
2026-09-26 21:06:20
一次 Kubernetes ingress 六小时 502:后端 Deployment 全挂,nginx 健康检查把 upstream 池清空,而该池是 80/443 的 default_server,所有未匹配域名一起 502。本文复盘错误日志、fall=5 清池过程,以及超时、max_fails、DNS upstream、keepalive 的一组修复。
运维
nginx
Kubernetes
故障复盘
高可用
MySQL 慢查询日志排错:订单查询 Query_time 从 15.2s 到 0.02s
案例
MySQL 慢查询日志排错:订单查询 Query_time 从 15.2s 到 0.02s
2026-09-25 21:07:25
一次电商订单查询接口超时的排错记录:用慢查询日志定位到 Rows_examined 50 万、Rows_sent 仅 100 的全表扫描 SQL,建联合索引 (category_id,status,sales) 并去掉 SELECT * 后 Query_time 从 15.2s 降到 0.02s。文中给出慢查询日志相关参数的动态开启语句与 pt-query-digest 用法。
MySQL
慢查询
索引
性能优化
运维
案例
MySQL 8.4/9.7 备份恢复:物理备份别指望跨大版本,工具版本要逐版本对齐
案例
MySQL 8.4/9.7 备份恢复:物理备份别指望跨大版本,工具版本要逐版本对齐
2026-09-25 21:05:23
MySQL 8.4/9.7 备份恢复的兼容性坑:物理备份不能跨大版本恢复,mysqlbackup 与 XtraBackup 版本必须与实例大版本逐版本对齐,备份账号要用 caching_sha2_password 且需 BACKUP_ADMIN,apply-log 准备阶段不能跳。文末给出可复制的落地检查项与每月恢复演练步骤。
MySQL
备份恢复
XtraBackup
运维
PITR
nginx 因 1 秒 DNS 空窗拒绝启动:整机站点宕机 3 小时复盘
案例
nginx 因 1 秒 DNS 空窗拒绝启动:整机站点宕机 3 小时复盘
2026-09-25 21:01:41
一次 unattended-upgrades 升级 systemd 触发 needrestart 批量重启,BIND 与 nginx 竞速差 1 秒:nginx 解析不到上游域名直接 emerg 拒绝启动,全站宕机 3 小时。文中给出 journalctl 定位时间线、After=nss-lookup.target 为何失效、systemd Restart= 自愈配置,以及 proxy_pass 变量化后前缀替换失效的坑与 rewrite break 正解。
nginx
systemd
故障排查
DNS
运维
反代
大家都在搜索什么?
devops
易支付
一个官网+多少钱
统一接受回调
统一回调
python
sub
node
宝塔日志
mysql
shell
ElasticSearch
css
vue
api接口对接
2025
支付接口对接
go
php
php回调
上一页
1
2
3
4
5
6
7
下一页
共 7 页
到第
页
确定