1、谈谈对微服务的看法,微服务解决了什么问题,微服务会带来那些问题,微服务优劣势有那些?
解决问题:从IT系统发展上看,IT系统所承载的功能越来越多,系统内部服务的关系越来越复杂,开发人员也越来越多,一个大单体应用已经很难协调各方面的问题,带来的维护成本,协调成本越来越高,所以微服务就是主要解决一个系统承载功能太多,开发人员协调难度大的问题。
带来问题:服务拆分带来的服务之间的调用,使得服务之间调用关系,调用方向需要架构人员去治理、制定规则。对于中小型企业无形中带来了人员成本增加,运维难度加大,中间件使用更多。微服务限界上下文的划分同时带来对开发人员的要求更高。
优势:对于大型IT系统,大型企业能快速响应市场需求的变化,服务的维护、升级、灾备都有良好的故障隔离性。
2、如何看待云计算带来的IT界的变革,k8s给企业带来了什么,谈谈对云计算的理解?
变革:以往的互联网企业,使用虚拟机部署应用,带来的硬件资源不能动态的伸缩,扩容,对于服务的管理需要再次开发。云计算实现服务的镜像化,使底层硬件基础设施变成了一种服务。
k8s:解决中大型企业,快速实现私有云部署的中间件平台,能提供网格化的服务能力,降低企业的硬件成本,k8s可以直接部署在物理机上,减少虚拟机软件成本,实现了应用之间服务的物理隔离环境。
云计算:是中大型企业才有意义的一个项目,能确确实实带来成本的下降,实现计算资源的最大化利用,在完善的云计算平台可以在灾备方面有故障快速转移的能力。
3、谈谈对云原生的理解,企业如何看待云原生,什么企业适合云原生?
云原生:是一套从开发、继承测试、UAT测试、上线完整的流水线作业理念,在这过程中容器化、微服务、持续集成发布、迭代开发四要素是云原生的基石。
在企业发展到一定规模阶段后,可以向这个方向发展提高IT部门的持续交付效率。
4、当技术复杂度、成本预算与业务需求是矛盾的时候,作为技术人员如何解决这个矛盾?
一、必须明确需求的需要解决什么问题,解决最原始的问题,是需求的目标。
二、业务需求人员往往对于技术的实现是空洞的,黑盒的,理所当然的。业务人员不明白技术的原理,技术的基础,就像理解不了华为、苹果有几万的研发人员一样。
三、从最原始需求出发,由技术人员去思考解决方案,与业务人员共同完成整个业务上的方案。
四、在上面找到低成本的解决办法时,可以通过改变流程、改变外在因素或许有意想不到的效果。