面试题:为什么 MySQL 不要使用 Docker 部署。。。。

48 天前
 michael2016

如果你去找工作,遇到我问你以下几个问题如何回答:

  1. 在大厂 MySQL 是不能用 Docker 的,为什么?
  2. 今天业务被 DDoS 了,你如何在 10 分钟内解决问题?
  3. 如果被爬虫爬了,你应该如何解决?
  4. RAG 和 Agent RAG 有什么区别?
18842 次点击
所在节点    程序员
161 条回复
tairan2006
48 天前
网络用--net host ,数据直接挂载宿主机,肯定能容器化
tairan2006
48 天前
而且容器化最大好处是升级方便。楼主扯了半天优势,如果出现安全漏洞要升级 MySQL ,运维就麻了。
dododada
48 天前
1 、mysql 容器化,一般业务量影响不大,但是 mysql 太底层了,容器什么的无所谓,也没有什么高并发业务会直接写 mysql ;如果 mysql 的数据要通过 binlog 做异地多活同城双倍的话,不要用 docker ,有网络的问题,比较吃运维的经验;

2 、被 D 了,小流量切服务器,大流量当然是花钱上高防了

3 、爬就爬了嘛,你爬我爬大家一起爬,如果账号认证请求限制投毒什么的能控制住最好,控制不住就报案抓典型,抓起来送进去,圈子里再发一发公告,就清净了

4 、不知道

3 、
Immunize
48 天前
在某大厂,大厂除非是特定团队不会问这种问题的。以业务团队的视角回答这些问题。

1. 在大厂 MySQL 是不能用 Docker 的,为什么?
现实:用数据库团队负责的云实例,底层是怎么做高可靠的无所谓。

2. 今天业务被 DDoS 了,你如何在 10 分钟内解决问题?
现实:联系安全团队做流量清理,同时在容器平台上扩容。

3. 如果被爬虫爬了,你应该如何解决?
现实:无所谓,反正大家都在互相爬,安全团队提供一定的安全保护能力,愿意用就用。

4. RAG 和 Agent RAG 有什么区别?
现实:不知道,公司里各种 AI Agent 平台,别让我理解复杂概念,哪个能最简单让我直接把文档平台直接接入,回答的最好用哪个。
deplives
48 天前
先问是不是,再问为什么
巧了,我司上周刚对某核心业务进行过一波压测,我是压测参与人之一。
近半年,该业务日均流量 2 个亿左右,峰值 qps 6.5w 左右,线上服务 96 台 自运营 ECS
数据库自运营 MySQL k8s 集群。除此之外还有 redis 和 Doris 。除了 6 台 es 使用的裸金属,其余全容器化部署

压测目的是摸清水位,压测目标是 10w qps ,这周刚发的压测报告,SLA 99.99 % 接口响应平均耗时 334ms

这个服务从我 20 年五月入职以来从来没出现过 D 级以上故障,出现的 D 级故障和后端数据库也没有关系,全是上游物料的问题导致我们熔断。

所以你从哪儿得出来 在生产环境中不推荐使用 docker 运行 MySQL 的结论
说实话,菜就多练
xiayun
48 天前
Q:在大厂 MySQL 是不能用 Docker 的,为什么?
A:什么大厂?没听说过不能用 Docker 的
Q:今天业务被 DDoS 了,你如何在 10 分钟内解决问题?
A:买高防,或者分析日志 先拉黑一批 IP
Q:如果被爬虫爬了,你应该如何解决?
A:先分析日志,拉黑一批 IP ;然后让研发想办法做过反扒验证
Q:RAG 和 Agent RAG 有什么区别?
A:类似知识库和自动化脚本的区别
unbridle
48 天前
能看出 OP 对 docker 有着什么偏见,附言里也是直接就说“在生产环境中不推荐使用 docker 运行 MySQL”,难道不是先问是不是再问为什么吗,大概率 OP 玩不转 docker 。而且 OP 自以为能解决 ddos 问题。。。所有问题都问的莫名其妙让人无语
ceilingyear
48 天前
不是后端开发,但是也好奇答案,所以问了一下 ai;
grok:这篇 V2EX 帖子中的主要争议围绕原帖主( OP ,michael2016 )提出的面试题:“为什么生产环境中,尤其是大公司,不用 Docker 部署 MySQL ?”这引发了关于是否在生产环境中使用 Docker 或 Kubernetes 等容器化 MySQL 的辩论。

反 Docker 观点(由 OP 和一些评论者如 wxxxcxx 和 laminux29 支持):他们认为 Docker 会增加不必要的复杂性,提高故障排查成本(需要同时精通 Docker 和 MySQL ),在高负载场景下可能损害 I/O 性能,并在关键生产环境中存在稳定性/数据安全风险。OP 强调大公司因这些原因避免使用,并认为需要深厚的实践经验,而非浅显答案。
支持 Docker 观点(由用户如 deplives 、zwt9407 、newaccount 、lvlongxiang199 等支持):他们反驳称许多大规模公司成功地在容器中运行 MySQL ,并举出真实例子(如在 Kubernetes 上处理每日数十亿请求的高流量服务,实现 99.99% SLA )。好处包括更容易扩展、资源高效和现代编排。他们挑战 OP 的前提,认为其过时或无根据,并指出像 MySQL Operator for Kubernetes 这样的项目证明了在正确实施时它是可行的最佳实践。

我赞成支持 Docker 的一方。虽然存在合理的权衡(如确保适当的持久存储和监控以避免性能问题),但容器化已被主要科技公司广泛采用在生产环境中(如通过 AWS RDS 、Google Cloud SQL 或自管 K8s 设置),因为其灵活性和效率。反 Docker 的立场似乎过于泛化,没有考虑到容器技术的发展,这些发展缓解了早期的担忧。如果问题假设 Docker 本质上不适合,那就是一个有缺陷的面试前提,因为实际部署取决于上下文,而非一刀切的回避。
datoujiejie221
48 天前
1 不是不能用,是怕 hold 不住,上容器化不仅之前的备份、主从等自动化脚本要重新写,还得吃透 K8s+StatefulSet+企业级存储+ipvs 等等知识,任何一环没吃透都要排查大半天,之前就因为 ipvs 配置的问题导致长链接异常断开
2 没搞过,就跟洪水来了一样,想办法联系上游把洪水堵了
3 限制 ip,升级加密算法,随机增加验证码
4 agent 有决策和工具调用能力,不过更耗时,而且难以控制和调试
DIMOJANG
48 天前
@moefishtang V2EX 惊现娜娜奇!
Sendya
48 天前
@michael2016 #65 这个我不认可,虚拟机在宿主机故障时可以动态飘到其他宿主机上,一般在 500ms 以内就能完成硬件故障漂移,而且漂移过程会把流量也拷贝过去,我们生产经过很久的验证。如果是物理机硬件故障你怎么能够做到这些容灾?
lizy0329
48 天前
docker 只是个壳,数据还是放在本地的,没啥影响,如果说连数据还是放在 docker 就不好了
blackbookbj277
48 天前
在大厂 MySQL 是不能用 Docker 的,为什么?
哪个大厂,不是所有大厂,不能以偏概全。

今天业务被 DDoS 了,你如何在 10 分钟内解决问题?
为什么不买防 DDos 服务,是谁做的决定,影响的业务是不是应该追责。

如果被爬虫爬了,你应该如何解决?
为什么不部署反爬虫服务,是谁做的决定,影响的业务是不是应该追责。

RAG 和 Agent RAG 有什么区别?
多个 Agent 。
felixcode
48 天前
“凡我二十五岁以后所遇到的事物,几乎都没有用。二十五岁以前所遇到的东西,却都非常有用。”
Cruzz
48 天前
@michael2016 #36 其实他们面试一般得看面试官他自己对于哪方面强,他就会问的比较深,全靠命,有可能这个面试官和你的知识点重合高,那你就感觉面试的还可以,我有朋友在大厂,职级还不低,但是他对于容器了解很少,基本也不用。
deplives
48 天前




这么给你说吧,能处理 5w qps 的公司一定有能力组建团队将 MySQL 容器化,或者说一定会组建团队解决你这些问题。但你非要说一个人处理这些事情。一个日均 5w qps 的公司就只招一个 DBA 和运维吗?我是不信的。

这几句话给我的感觉就是 op 是一个干啥都是高并发高可用,张嘴闭嘴几万 qps ,说句实话,我都怀疑他不理解 5w qps 意味着什么
luzihang
48 天前
公司容器镜像都是 k8s 管理,运维平台集中管理,如果 MySQL 的 pod ,到处飘,会影响敏感业务的耗时。
luzihang
48 天前
存储也是要提前一年规划的,存储的预算,都是 DBA 提出。
moefishtang
48 天前
@DIMOJANG んなぁ〜(嗯呐...)
Sendya
48 天前
@deplives #96

我来帮你往简单了算,每个请求按 2~5KB 头,1B 的 Body ( 只响应个 "1" ),大概每秒传输 20M ;头大小计算方式

这个计算方式是行业里比较标准的流量计费方式,这里面我就不帮忙考虑重传了,一般就算网络质量非常好,也会考虑 1~3%的重传比消耗;

在我看来,很多小公司开个 4M,5M 上行带宽的机子 嚷嚷要万级 qps 其实就挺好笑

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://ex.noerr.eu.org/t/1160112

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX