疯狂的事情在于,站在今天向前看,你会发现今年许多大热的技术在去年几乎闻所未闻。这些技术还会继续火热下去吗?我打赌会,变化的脚步比往常前进的更快了。
这些新鲜的事物满足了我不重复自己的奢求。我去年提到的大多数技术发展趋势现在已经看起来略显过时了 —— JavaScript 的胜利,新的安全识别技术,内存存储,开发者在企业中的崛起等等。辞旧迎新的钟声正在敲响!
1. 公有云的成功。今年,IaaS 与 PaaS 的合并使得在公有云上构建、测试和部署应用变得更容易。所有主要的公有云现在在一些整合趋势中同时提供两种方案,而 AWS(Amazon Web Services)现在则提供多种 PaaS 的选择。
与此同时,由于巨大的开销以及企业自己部署和维护整个栈的复杂程度非常高,私有云已经发展停滞了。云创新是企业级技术所在,所以我不得不在想能有哪个公司能跟得上当今技术发展的速度。监管困难且开销难以降低,为什么不直接转向公有云呢?归根结底,还是需要让公有云服务提供商站在新技术的高处,而不是普通企业。当然,迁移服务需要花费时间,但是像 GE 这样的公司已经公开宣称将赌注都压在了公有云上面。
2. 容器的狂热。Docker,这个星球上最热门的开源项目能够帮助你封装应用程序以使其运行在内置于 Linux 内核的容器中。你可能要问这有什么大不了的?因为这意味着真正的应用可移植性 —— 使用轻量级封装而不是重量级的虚拟机。与此同时,Docker 所属公司正在和 Microsoft 一起合作开发基于 Windows 系统的 Docker 容器。大多数人认为 Docker 会用于将 App 从开发环境迁移至测试和产品化环节,但是我相信 Docker 也将会将 App 产品化过程迁移到云端。
把单个封装的 App 在容器之间迁移是容易的,但是对多个牵涉到不同容器的 App 组来说就变得困难起来。这也是 Docker 生态系统的所在:Docker 管理和业务流程工具帮助你聚合和迁移涉及多种组件并运行在多种容器中的 App 组。顶级项目包括 Kubernetes,Mesos 和 StackEngine;Google 云平台和亚马逊 AWS 于上月添加了他们自己的容器管理系统。
3. 微服务(Microservices)架构。在当今的 Web 和移动应用开发过程中,开发者倾向于基于服务去构建应用程序,而不是从车轮造起。一般情况下,这些服务称之为微服务 —— 单用途,API 可访问的应用变成了构建大型应用的基石。而 Docker 提供的封装和部署应用的便利方法又加速了微服务的发展。
如果你回忆起十年前 SOA 流行的那个年代,微系统架构可能听起来非常耳熟。两者主要的区别在于,微系统架构是以开发者的视角来看待服务,而不是以企业架构的视角,因此服务的粒度更精细。同时,服务之间的通信更简单,JSON 替代了 XML,REST 替代了 SOAP,而且重型的中间件也已经不再用了。
4. 液态计算。InfoWorld 执行主编 Galen Gruman 造了“液态计算”这个词,用于描述个人设备之间建立起来的临时网络,通过该网络你可以把手机状态保存并同步到笔记本、平板电脑和台式机上。举个例子,如果你在开会并且在你的平板电脑上修改了一个 PPT, 当你回到办公室后,你会发现刚才修改的 PPT 正显示在台式机屏幕的正中间。这种功能已经实现在 OS X Yosemite 和 iOS 8 系统中的Handoff 功能中,但是 Microsoft 和 Google 正在为他们自己的设备生态系统制定类似的开发计划,三星最近也宣布他们自己的实现版本。
5. 多云(Multicloud)管理。云正在成为大且复杂的平台。你在某个平台上构建了越多工作,你就越依赖这个平台上的特有功能 —— 就公有云来说,你就越将自己锁定在了一个他人所拥有并运营的平台上。很少有大公司愿意把所有鸡蛋放在一个篮子里,这也是多云管理出现的原因。
用于对多种云平台进行部署的工具才出现不久,以及博得了越来越多的关注。CliQr,一个专注于多云管理的创业公司,获得了 Google 的风险投资,宣称能够动态决定哪个云应该运行多大负载。但是其他许多公司尤其是 RightScale,能够帮助你在多个云上管理和优化资源和开销。
6. 终端安全创新。只要系统始终存在漏洞,或者总是有未经培训的用户意外下载恶意软件,企业安全就会一直保持着极度危险的状态。尽管如此,我今年还是对几个新的安全解决方案印象深刻。首先,Tanium,应用了创新的搜索技术在企业中轮询终端。Tanium 能够对成百上千个终端获取到几乎实时的视图以检测异常,并且确定哪些软件缺乏最新的补丁,然后将其都显示在汇总界面中。
在移动领域也出现了一些有趣的解决方案,不仅仅是指纹识别。一些蓝牙低功耗近距传感方案帮助你将手机用作一个安全密钥或者基于近距传感认证方式和一个移动设备配对。最近以来,Android 5.0 Lollipop 引入了“可信任地点”的概念,当你处在一个你认为安全的地方比如家里或办公室里时,系统可通过判断地理位置来去除输入密码的环节。便捷是一个重要的因素,因为这会提高用户实践优秀安全方案的可能性。
7. 机器学习。这是人工智能的一个新称谓。一方面,不要过分承诺短期内机器学习的能力,这是很重要的。另一方面,有必要搞清楚大数据的含义,开源项目诸如 Mahout 和 Spark/MLlib 正在让其变得更轻松。就像 James Kobielus 今年初提到的,机器学习是无处不在的,我们通常认为它存在于大数据应用中。IBM 正在通过开放 Watson API 来让这种想法成为主流,同时像 Andreessen 投资的Adatao 这样的初创公司正在用今天充裕的计算性能来复兴神经网络算法。
8. “开发运营”(devops)的回归。“开发”和“运营”的整合让敏捷开发成为现实,同时也确实提高了运营效率。“开发运营”的理念最早出现在5年前,而现在通过应用生命周期管理,自动化测试工具,数据库虚拟化,发布自动化,配置管理,应用性能监控,PaaS,和其他相关技术,使得这个理念又重新焕发了新的生命。
在一些领域里,“开发运营”被认为是一种让开发者在应用运营过程中持续为其负责的方式,但是这并不足以概括。“开发运营”更应该理解为配置开发和测试环境最现代化和最有效的方法,而这必须为满足当今大多数更多更好的应用的全球业务的需要。
9. 网络交换机的终结。不,我们不会在2015年就看到网络交换机的消失。但是虚拟网络设备,SDN(软件定义网络),和服务器充裕的计算性能正在导致对数据中心网络的重新思考。将网络缩减为“服务器之间的连线”这个长期的愿景正在变得越来越现实。
Cumulux Linux 让网络控制面板成为了产业标准硬件配置,包括服务器流程化工具,保证了线速网络操作。今年 InfoBlox 发布了最新 OpenFlow 项目,称之为 LINCX,表现出完整的软件可编程网络的潜在能力。与此同时,NFV(网络功能虚拟化)——利用服务器虚拟化和数据中心流程化以实现将传输负载均衡,防火墙,WAN 加速,和其他网络功能变成一个服务——已经成为服务提供商和云平台提供商例如 OpenStack 的强烈渴望。
结语:开源势在必行
有一条线贯穿于这9个趋势当中:那就是开源正在引领着技术发展的道路。它成为了初创公司获得关注的机会,作为用户——主要是公司里的开发人员——试验新技术,提供反馈,并最终将其应用于产品之中。以此同时,其他开发者会看什么东西热门,然后围绕一个核心项目构建生态系统,例如在Docker,Hadoop,OpenStack 上就是这样。
开源开发的简单模式——协作,自我组织,分发——甚至已经开始对企业应用的开发产生影响。这种趋势展开还是需要几年,尽管一些公司现在正在实践这种方式。
随着时代的发展,很明显 IT 开销会从购买维护硬件软件转变为购买云服务——同时也包括对开发人员和开发工具的投资。通过创造大量高质量应用来让商业产生差异化优势,成为企业级技术最重要的使命。那些采用最好的流程和技术以实现目标的公司将会成功。