随着云,容器和Kubernetes进入企业,团队现在专注于更灵活的基础设施和生态系统,而HashiCorp的Terraform新兴平台正受到很多关注。
ThoughtWorks在最新的技术雷达中研究了云化和集装箱化企业软件领域的Terraform和其他发展,该技术雷达探索了其团队和客户使用的技术。ThoughtWorks团队对Terraform非常兴奋:
“通过编写声明性定义,Terraform正在迅速成为创建和管理云基础架构的事实上的选择。我们喜欢Terraform,因为它的文件语法非常易读,因为它支持许多云提供商而不会尝试提供人工抽象这些活跃的社区将增加对大多数云提供商的最新功能的支持。在我们第一次,更加谨慎,大约两年前提到Terraform之后,它已经看到了持续的发展并且已经发展成为具有良好生态系统的稳定产品这证明了它在我们项目中的价值。“
ThoughtWorks团队还建议采用以下前沿技术和技术:
“允许团队扩展独立部署和维护服务的交付,”ThoughtWorks分析师解释道。“不幸的是,我们也看到许多团队创建了一个前端整体 - 一个庞大的,纠缠不清的浏览器应用程序,它位于后端服务之上。因为我们首先将微前端描述为解决此问题的技术我们对这种方法几乎有普遍的积极体验。到目前为止,网络组件在这个领域一直难以捉摸。“
“用于格式化代码的样式一直是个人品味,公司政策和激烈争论的问题。最后,业界似乎厌倦了这种无休止的争论,团队正在释放出惊人的大量时间放弃这些讨论,只采用自以为是的自动代码格式化工具。“
“我们看到了开发人员和企业对标准化语言堆栈的新推动。虽然我们承认对语言使用没有任何限制会产生比解决更多的问题,推广一些支持不同生态系统或语言功能的语言对于企业来说,加快流程并更快地投入使用,以及开发人员拥有解决手头问题的正确工具非常重要。“
软件构建管道“需要秘密与安全基础设施(如容器注册表)接口,应用程序使用API密钥作为访问业务功能的秘密,服务到服务通信使用证书和密钥保护我们一直使用秘密作为服务作为存储和访问机密的默认技术。通过这种技术,您可以使用Vault或AWS Key Management Service(KMS)等工具通过HTTPS端点读取/写入机密信息。细粒度的访问控制。作为服务的秘密使用外部身份提供者(如AWS IAM)来识别请求访问机密的参与者。演员使用秘密服务验证自己。“
:“随着越来越多的团队采用DesignOps,实践和工具在这个空间成熟.UI开发环境为快速迭代UI组件提供了一个全面的环境,专注于用户体验设计师和开发人员之间的协作。我们现在有一些这个空间中的选项:故事书,React Styleguidist,Compositor和MDX。许多团队能够减少他们的UI反馈周期并改善UI工作的时间,为开发工作做准备,这使得使用UI开发环境成为我们合理的默认设置。“
此外,ThoughtWorks团队正在看到许多有希望的新工具和技术在表面上浮出水面。以下是所引用的工具和技术的示例,仍需要进一步评估和实际测试,但它们值得研究:
“在[分布式分类帐技术]上提交自动化,无可辩驳的,不可逆转的合同,理论上听起来很棒,”ThoughtWorks团队表示。“当你考虑如何使用现代软件交付技术来开发它们以及实现之间的差异时会出现问题。不可变数据是一回事,但不可变的业务逻辑完全是另一回事。考虑是否包含它是非常重要的。智能合约中的逻辑。我们的建议是在将业务逻辑提交给智能合约之前进行长时间的思考,并在做之前权衡不同平台的优点。“
“道德操作系统是一个思维框架和一系列工具,推动围绕构建软件的道德规范进行讨论。该框架是未来研究所和技术与社会解决方案实验室之间的合作。它基于一组实用的风险区域,例如成瘾和多巴胺经济,加上一些推动对话和讨论的场景。“
“在功能代码本身之外,作为无服务器功能编写的应用程序与托管它们的云平台紧密耦合。虽然事件是一种常见的FaaS触发机制,并且每个云提供商都以某种形式支持它们,但是当前的专有规范防止跨云的互操作性.CloudEvents规范是一个新兴的标准,已被CNCF Sandbox接受。该标准仍在积极开发中,但存在多种语言绑定,微软已宣布在Azure中提供一流支持。我们希望其他云提供商也会效仿。“
:“Knative是一个基于Kubernetes的开源平台,用于运行FaaS工作负载。很少有关于Knative的东西:它是开源和提供商不可知的;它实现了无服务器工作流;它通过实现其事件来确保跨服务的互操作性界面符合CNCF CloudEvents规范;最重要的是,它解决了操作协调且混合的FaaS和长期运行的基于容器的架构的共同挑战。它可以轻松地与Istio和Kubernetes集