XiaoMi / Gaea

Gaea is a mysql proxy, it's developed by xiaomi b2c-dev team.
Apache License 2.0
2.65k stars 426 forks source link

考虑使用 podman 进行单元测试 (consider using Podman for unit test.) #226

Open panhongrainbow opened 2 years ago

panhongrainbow commented 2 years ago

小米您好

经您建议,去參考 soar 计划的单元测试,在 soar 会真的启动一个容器去进行测试,每个测试都有不同的优点 (You suggest that I should refer soar project when I make unit test. I think many unit tests have many different advantages)

后来我想想,不如利用这次机会,把容器测试做到最好 (I consider making a more efficient unit test by this chance.)

我去请教资深的 SRE ,未来容器的走向,他是回说未来会使用 containerd (I consult for senior SRE about the future of containers. He suggests using containerd.)

但是后来接收到更多资讯,经过思考,现在以我的立场,最适合使用 podman,因为以我的立场,要追求的是最佳性能,我根本不需要去关心云生态目前的走向 (I think about it over and over again. Podman is more suitable for my situation. It is because I want to test fast. I don't need to mind the current container ecosystem.)

以 SRE 的立场来说,SRE 追求的是和目前的云生态相容,所以他会建议使用 containerd,其实建议也是对的,就怪我没有想清楚立场 (SRE goals for compatible with the current container ecosystem, so he suggests using containerd. It is correct. My fault is not appropriately considering it on my side.)

再来,我最新的 PR ,封装也封装的不好,这些问题都要改进 (In addition to my newest PR, the encapsulation in my code is not good quality. It is a problem I need to deal with.)

如果我使用最小的容器,加上 Padman,也许会有很好的测试体验,我再努力看看,谢谢 (What if I use smaller consider and Podman? It will have more practical experience. Let us try it. Thank you.)

xiyangxixian commented 2 years ago

感谢您对小米的支持。 使用哪种容器主要取决于应用场景,对于云生态发展而言主要服务于应用程序本身。 而自动化测试场景也有着不同的侧重点,过往的程序测试注重于代码本身的测试,使用容器测试更注重于程序应用时场景还原的真实性。 所以我觉得你的想法并没什么问题。

panhongrainbow commented 2 years ago

谢谢您,在实际操作的过程中,目前来看,Podman 未来应会取代 Docker,不然至少会让大家多一个选择 Podman 底层是使用更快更小的 crun,会比 Docker 或 Containerd 更快 (Thank you from the bottom of my heart. So far, so good. Podman is better than other competitors in my opinion. It uses the smaller crun. Then work faster and get better performance. I think it will replace Docker and Containerd sooner or later.)

panhongrainbow commented 2 years ago

之前 PR 我先关了,用 podman 比 containerd 好用太多了,全部重做,我会一直持续完成 我有两个 Side Project 一直在做,一个为 podmanx ,之后完成后看看能不能在合拼到 Gaea,另一个为 yacc,做为綀习用

( Close this PR immediately because podmanx is better than containerd. I have two side projects. One is podmanx for Gaea usage. The other is yacc for me to practice. )