惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

C
CERT Recently Published Vulnerability Notes
freeCodeCamp Programming Tutorials: Python, JavaScript, Git & More
WordPress大学
WordPress大学
CTFtime.org: upcoming CTF events
CTFtime.org: upcoming CTF events
V
Visual Studio Blog
Stack Overflow Blog
Stack Overflow Blog
aimingoo的专栏
aimingoo的专栏
C
Check Point Blog
cs.AI updates on arXiv.org
cs.AI updates on arXiv.org
T
Tor Project blog
P
Proofpoint News Feed
让小产品的独立变现更简单 - ezindie.com
让小产品的独立变现更简单 - ezindie.com
Latest news
Latest news
L
LINUX DO - 热门话题
罗磊的独立博客
T
Tenable Blog
The Hacker News
The Hacker News
美团技术团队
N
Netflix TechBlog - Medium
V
Vulnerabilities – Threatpost
阮一峰的网络日志
阮一峰的网络日志
Last Week in AI
Last Week in AI
博客园 - 司徒正美
Jina AI
Jina AI
Cyberwarzone
Cyberwarzone
云风的 BLOG
云风的 BLOG
S
Secure Thoughts
Cloudbric
Cloudbric
S
Security @ Cisco Blogs
奇客Solidot–传递最新科技情报
奇客Solidot–传递最新科技情报
Microsoft Security Blog
Microsoft Security Blog
Spread Privacy
Spread Privacy
U
Unit 42
雷峰网
雷峰网
C
CXSECURITY Database RSS Feed - CXSecurity.com
Webroot Blog
Webroot Blog
爱范儿
爱范儿
博客园 - 【当耐特】
Know Your Adversary
Know Your Adversary
P
Privacy International News Feed
P
Palo Alto Networks Blog
Google Online Security Blog
Google Online Security Blog
The Last Watchdog
The Last Watchdog
博客园 - 聂微东
Help Net Security
Help Net Security
Hacker News: Ask HN
Hacker News: Ask HN
F
Full Disclosure
cs.CL updates on arXiv.org
cs.CL updates on arXiv.org
S
Security Affairs
Project Zero
Project Zero

博客园 - luckygxf

架构积累-系统划分 架构积累-软件架构终极目标 javascript构造方法 数据库连接池初始连接 分布式系统CAP理论(一) 数据库连接太多排查(一) 审批流程-节点自动审批通过 防表单重复提交 深分页问题 devops 工作效率提升 新需求开发-重构老的逻辑 js析构赋值 框架的好处和不足 React框架Hello world 数据库表设计在哪个接口 需求实现-ddd四层架构实现 前端代码(一) 高内聚,低耦合 对象存储改造 mermaid初体验 业务逻辑优化-解决提示词问题打分不准 idea 插件envfile初体验 防盗链-防盗用链接 springboot项目启动小技巧 github托管网站 AI MCP开发 AI中 MCP 作用 mapconstruct 初体验 架构积累-解耦与防腐 表创建索引的重要性 重构注意事项(一) drawio初体验 六边形架构 架构积累-依赖注入和SOLID原则 工作总结-定时任务 工作总结-知识通关需求上线 工作总结-演练场景映射方案 工作总结-MVP 工作总结-需要学习的方向 工作总结-接口优化 python asyncio demo 工作总结-sse接口心跳 工作总结-问题筛选方案 工作总结-工具分享 工作总结-提示词优化 工作总结-工作优先级 工作总结-灰度发布
对象存储迁移-组件上线
luckygxf · 2026-05-26 · via 博客园 - luckygxf

对象存储迁移改造,主要是双写,降级读,迁移。

前期需要排查,哪些地方用到了对象存储,上传了文件。微服务太多了,组件太多了,项目交接了很多人。组件功能越来越多,越来越理不清每个组件有哪些功能。

只能通过关键字,搜索代码,找表,向上找接口。

这次组件上线遇到一些问题

1. 一个表,很多个组件在用,很多个小组在用。迁移的时候,导致重复迁移了。比如有个表有200w+的数据,占用空间以T为单位,重复迁移,成本就很大了

2.200w+的关系型表,直接select + order by + limit 会有慢查询,一个sql执行超过3秒。这个表在维护时间字段创建了索引,有同事按天来迁移。每天的数据量最多2w多,读取到jvm中,占用内存也有15MB左右,这是我让大模型帮忙算的。也有同事说,可以用子查询,把id先查出来。减少回表的操作

3.有迁移任务,我们创建了很多迁移任务,还没有执行完的。这个时候,我们要停止这些任务,可以删除这些任务。可能我们需要任务的详细数据,每个任务迁移了哪些文件。这个时候软删除就排上用场了,感觉如果数据量不大,可以都使用软删除

4.要清空对象存储桶里面的数据,同事建议设置对象的生命周期来清理数据。清理完成后,在把设置的生命周期删除,再执行迁移

5.有些组件通过公共接口上传对象存储的,这个接口没有为每个对象设置目录,都保存在桶的根目录。改造接口成本比较大

调试的时候没什么问题,一上线感觉到处是问题