在基础设施和生产系统运营方面,稳定性至上。随着越来越多的企业寻求更高的安全性和更快的速度,在不牺牲可靠性的情况下,变革依然持续。
IT世界在不断变化,不断出现新的工具和战略来颠覆现状。某一时候,技术先驱者会在市场竞争上胜出。而很多时候,这种变化更像是一个钟摆,又会摆回原处。
基础设施和运营部门也看到了一些变化,但与其他技术领域相比,其变化的速度要慢一些。负责管理代码和保持系统平稳运行的团队自然会非常谨慎。为了变革而进行的实验和变革,是那些创新者的必然选择。当企业希望业务顺利运行时,保持基础设施和运营的稳定性更为重要。
然而,近来已经出现了许多新的策略和工具,它们改变了基础设施部门在保持服务器和网络运行方面的繁重工作。其中一些趋势是由创新技术驱动的,一些是经济驱动的,一些是由政治现实驱动的。所有这些都反映了维护团队在不牺牲稳定性的情况下,被要求提供更高的安全性和更快的速度。
热门1:多云
长期以来,人们已经认识到将代码移出内部部署数据中心并移至云中的优势。租用他人维护的服务器是扩展计算资源和工作负载的理想选择。虽然总是存在有关信任和安全性的问题,但是云计算供应商已经通过规模经济的专门团队解决了这些问题。
如果说采用云计算技术是一个好主意,为什么不采用两个或三个或更多云平台呢?支持多个云平台可能需要更多工作,但是如果企业的开发人员在编写代码时很谨慎,则可以消除供应商锁定的危险。企业的财务人员也有机会在多个云平台中对其软件进行基准测试,以找出每种工作负载运行成本低的云计算提供商。
趋冷1:动态网站
全球互联网初是由静态文件组成的。Web服务器收到一个URL,并使用相同的文件进行响应。当开发人员意识到他们可以自定义用户访问特定URL时看到的内容时,这种简单的机制很快就淘汰了。用户喜欢个性化设置的网页,广告商喜欢定位的灵活性,企业喜欢动态网站带来的机会。如此复杂的框架可以帮助为任何想要的人创建自定义页面。
这种趋势近年又发生了变化,因为开发人员和企业已经认识到,尽管有各种选择,但大多数网页最终对每个人来说几乎都是一样的。创建智能服务器逻辑而支出的成本值得吗?为什么不使用所有精通边缘内容分发网络的速度将相同的数据发送给每个人呢?现在,一些新的Web开发工具可以将企业的站点预提取到静态网页的文件夹中,从而使动态内容管理系统的所有灵活性都可以通过静态文件的速度来获得。但是,其结果并不是完全静态的,因为使用AJAX调用可以使用JavaScript填补一些空白或收集一些自定义数据。
热门2:本地部署云平台
作为销售策略的一部分,云计算供应商一直在推动开放数据和代码,让用户把数据托付给他们。尽管这种方式确实可以让客户对托管代码的地理位置有一定的限制,但是用户不需要了解其在云平台中租用的计算机的运行情况。
但是,有些企业希望自己存储和处理数据,这样感觉更安全,有些企业需要以比其他企业更高的级别来保护其数据。其解决方案是什么?在其内部部署服务器上运行云计算公司的软件和工具。设置实例的时候感觉就像云平台一样,这将云计算虚拟实例的灵活性与对服务器进行物理控制的安全性结合在一起。另外,如果企业能控制安装和维护硬件的额外成本,这种方法有时成本会更低。
趋冷2:人工智能无处不在
几年前,当人工智能应用快速增长时,很多企业都争先恐后地采用人工智能系统。随着企业采用人工智能收集数据点,出现了巨大的数据集。更多信息意味着对人工智能的更多培训机会,并且应该产生更智能、更准确的结果。
这种过度的做法已经敲响了警钟。很多人开始意识到,收集利用人工智能所需的大量信息会对隐私造成威胁。另一些人则担心,正在积累的数据集是不均衡和有偏见的,这使得他们的人工智能很有可能只会学习回应这种偏见。其他人则担心人工智能可能变得过于强大,控制了决策链的大部分。现在,人工智能开发人员要做的不仅仅是回答能否完成这项工作。他们必须权衡各种危险,并考虑是否应该完成这项工作。这也导致了对“可解释的人工智能”的需求不断增长。
热门3:无服务器
很长一段时间以来,开发人员一直希望完全控制他们的环境。这是因为,如果他们不能指定确切的发行版和版本,他们就无法保证代码能够正常工作。很多人都知道这很矛盾,因此,他们希望对控制的计算机具有root访问权限。
所有相同文件的副本可能会保持一切正常运行,但效率低下,浪费资源。无服务器工具将所有繁琐的工作从系统中解脱出来。现在,开发人员只需要编写简单的接口程序,该接口将在需要时加载其代码,然后向用户收费。对于偶尔运行的工作,无论是后台处理还是网站访问量不大,他们不需要占用大量服务器资源,而该服务器具有操作系统的完整副本,不会占用任何内存。
趋冷3:自己构建组件
开发人员通常通过将一系列小组件和库组合在一起来构建软件。每个部分都为整个软件包提供了一些信息。许多组件都是现成的产品,例如数据库或流行的API。数十个甚至数百个组件协同工作为用户提供统一的网络状态并不罕见。
但是,随着开发人员增加更多功能,这些产品最近逐渐变得更加智能。例如,某些数据库与网络更加紧密地集成在一起,它们提供了同步存储在客户端上的数据的功能,从而无需构建此功能。诸如翻译之类的功能现在可以集成到其他工具中。随着应用程序和服务的增长,粘合代码和自定义将会消失,有时它变成配置文件。流程图仍然包含相同的功能,但是现在的功能更加丰富。
热门4:绿色节能的人工智能
在过去的几年中,在机器学习和人工智能方面,计算越多,训练数据越多,效果越好。如果想充分利用人工智能,那么扩大规模就是取得更好结果的途径。
然而,计算需要大量电力,并且许多企业开始质疑这种需要大量电力的算法。这促使人工智能开发人员测试是否可以节省更多的电能,而不必使电力成本大幅增加。
趋冷4:基本存储库
在以往,代码存储库不需要做太多工作就能保存。如果它保留了该软件的副本并保存了一段时间内的更改信息,则其存储量将会迅速增长。如今,开发人员期望存储库将其代码通过管道进行推送,该管道可能包括从基本单元测试到复杂的优化的所有内容。仅仅让存储库成为数据库管理员还不够,还必须完成管家、核查人员、质量控制专家甚至是警察的工作。精明的开发团队更多地依靠存储库来完成工作。
热门5:机器人流程自动化
在以往,需要编写一些代码才能完成所有工作。编程人员需要了解变量,记住所有关于类型、范围和语法的规则,然后谈论关于代码质量的规则,这些规则通常归结为关于非功能空白的声明。
诸如“机器人流程自动化”之类的新工具正在改变动态。但是,这只是增强了数据处理例程。如今,精明的非程序人员可以使用消除开发过程的大部分工具来完成很多工作。任何用户都可以在电子表格上进行处理,就不会产生闭包的麻烦,可以产生一些很好的交互式结果。