信息技术从出现伊始到渐成主流,其发展历程经历了软件、开源、云三个阶段。从软件到开源,再到云,这也是信息技术的发展趋势。
1.软件改变世界
纵观人类社会漫长的发展历程,农耕时代、工业时代与信息时代可谓三个明显的分水岭,每个时代都会出现很多新兴的领域。作为信息时代最重要的载体,互联网越来越成为当今社会关注的焦点,互联网的基石之一——软件,正在迅速地改变着这个世界。
2.开源改变软件
随着软件行业的成熟,相比于“重复造轮子”,“站在巨人的肩膀上”明显可以更加容易和快速地创造出优秀的新产品。随着开源文化越来越被认可,以及社区文化越来越成熟,使用优秀的开源产品作为基础构架来快速搭建系统以实现市场战略,成了当今最优的资源配比方案。
3.云吞噬开源
仅通过开源产品搭建并运维一个高可用、高度弹性化的平台,进而实现互联网近乎100%的可用性,难度可想而知。因此,在提供技术思路的同时,进一步提供整套云解决方案以保障不断扩展的非功能需求,便成了当今新一代互联网平台的追求。
在信息技术的大潮中,每一次通信模式的升级都会给这个世界的合作模式带来变革。
随着互联网在21世纪初被大规模接入,互联网由基于流量点击赢利的单方面信息发布的Web 1.0业务模式,转变为由用户主导而生成内容的Web 2.0业务模式。因此,互联网应用系统所需处理的访问量和数据量均疾速增长,后端技术架构也因此面临着巨大的挑战。Web 2.0阶段的互联网后端架构大多经历了由All in One的单体式应用架构渐渐转为更加灵活的分布式应用架构的过程,而企业级架构由于功能复杂且并未出现明显的系统瓶颈,因此并未跟进。后端开发不再局限于单一技术栈,而是越来越明显地被划分为企业级开发和互联网开发。企业级开发和互联网开发的差别不仅在于技术栈差异,也在于工作模式不同,对质量的追求和对效率的提升成了两个阵营的分水岭,互联网架构追求更高的质量和效率。
随着智能手机的出现以及4G标准的普及,互联网应用由PC端迅速转向更加自由的移动端。移动设备由于携带方便且便于定位,因此在出行、网络购物、支付等方面彻底改变了现代人的生活方式。在技术方面,为了应对更加庞大的集群规模,单纯的分布式系统已经难于驾驭,因此技术圈开启了一个概念爆发的时代——SOA、DevOps、容器、CI/CD、微服务、Service Mesh等概念层出不穷,而Docker、Kubernetes、Mesos、Spring Cloud、gRPC、Istio等一系列产品的出现,标志着云时代已真正到来。