容器化建设三问

112 阅读2分钟

一起养成写作习惯!这是我参与「掘金日新计划 · 4 月更文挑战」的第24天,点击查看活动详情

容器化开发,是我们进行技术体系建设的一个常见方案。

关于容器化,我们要想对它有一个系统了解,需要回答三个问题,是什么,为什么,怎么做。

容器化开发是什么?

容器是介于底层基础设施和上层业务的一个中间层。它包含了业务常用的一些基础设施,如ui组件、基础设施、甚至是把一部分标准也内置进去。

其次就是为什么要搞个容器层?这个问题实际上就是容器层能解决哪些问题,总结下容器有如下作用:

  • 收敛基础设施,把一些常用的组件、功能内置进去,业务方开箱即用
  • 连接其他系统,如登录、权限、网关、日志、监控等等,让业务可以开箱即用,快速使用其它系统的服务
  • 可以随时升级,容器一升级,所有的基础设施可以跟着一块升
  • 抹平底层的差异,只需要关注容器层的功能即可,不需要关注底层的内容

怎么做?首先我们需要有一种技术手段去实现容器着一层。 对于浏览器容器来说,我们面临着一些挑战:

  1. 无法完全将上层业务与底层的基础设施隔离开,好像通过代理机制可以实现,但是感觉也没有必要,因为这样就丧失了灵活性
  2. 容器层相比于传统的容器来说,比如 rn ,它的能力还是偏弱的,不能够给用户以太多的收益,但是增加了用户的恶心智负担,这个我们可以通过与业务的结合来找补回来。我们的容器不是一个纯的技术容器,它是更偏向于业务的容器,会内置很多业务相关的内容,这也是跟我们的业务的复用度高的特点密切相关。所以我们通过与业务更为深度的结合来进一步提高效率。