有人说代码可控与企业上云没有半毛钱关系,这主要是对上云的理解不同,如果认为企业上云就是把应用从本地物理机部署到本地私有iaas平台或者公有云iaas平台,并且用了paas层的中间件,那么从这个角度看,企业上云和代码可控确实没有半毛钱关系。。。。但是这样的方式并不叫真正的应用上云,云的特性是可以快速伸缩,弹性扩容。那么对于代码不可控的外购系统而言,我请问你如何做到快速伸缩和弹性扩容(分钟级或者秒级)?不要告诉我说先申请机器,再上去部署,及时机这个过程做了自动化(何况很多企业这块还做不到全自动化),不用人工参与,那么你新扩容的机器如何自动挂载到原来提供服务的vip上?难道还要手工操作?同时再缩容的时候,如果没有做session的统一管理,对于有状态的应用,如何选择缩哪一台?上面都有用户session,无论缩哪一台都会对用户体验造成影响。因此,要想真正的应用上云,必须做到应用的代码可控,只有代码可控才可以做应用云化所需要的各种代码改造工作。因此,应用真上云和假上云,实现难度和带来的好处完全是不同层面的优势。
收起两个层面:
应用入IAAS,对代码是否可控没有太多关系,但要和云服务商的提供服务进行确认看看有没有限制,比如网络转换、绑定IP的要求等等。
应用入PAAS或微服务化,这就必须要代码可控了,没有代码怎么微服务化?
当然并不能说自研的系统上云难度要低于外购产品,这要取决于你的供应商的能力,说不定你的供应商已经有微服务的版本呢?