DevOps 需要更多的自动化
如今,快速交付应用程序的 DevOps 开发流程正在企业中广泛流行。虽然 DevOps 的成功可能归功于许多方面,但人们讨论的焦点始终是它为应用程序开发和交付方式带来的转变,这种转变体现在团队文化、自动化、测试、代码共享等方面。
然而,无论开发者使用何种框架进行开发,DevOps 流程仍然在很大程度上依赖于开发者的编码能力,他们需要编写支持持续集成(CI)、持续部署 (CD) 和持续测试 (CT) 等特性的相关代码,从而为应用程序开发带来敏捷性。
有业内人士分析,DevOps 似乎在一个关键领域有缺陷:即自动化和加速代码创建的能力。DevOps 推动了文化和组织的转变,使企业的开发团队能够更快地交付更好的软件。但是,大部分 DevOps 从业者仍然需要手动编码应用程序,仅在进行测试和部署阶段依靠自动化工具。这实际上对开发者的能力提出了更高的要求。
近年来,一些低代码和无代码开发平台重新进入人们的视野。这些开发平台利用大量预制的工具,提供可视化的方法来构建应用程序,并使用图形用户界面 (GUI) 来简化开发,显著减轻开发者构建应用程序的负担。而全自动开发平台的出现则在此基础之上更进一步,提供输入流程图自动构建应用程序的方式,大大提高了软件开发的效率。
然而,长期以来一直存在于软件开发市场边缘的低代码/无代码平台,对于很多以手写代码为生的程序员来说是一个并不熟悉的概念,甚至很多人对其持怀疑态度。行业分析公司 Intellyx 创始人兼总裁 Jason Bloomberg 表示,“DevOps 需要解决的问题之一是改变这些热衷于手动编码者的心态,”他说,“在没有低代码工具的情况下,进行 DevOps 将会越来越困难,因为手动编码在未来将会是提升开发效率的瓶颈。”
事实上,早期的低代码/无代码开发平台已被用于很多开发资源匮乏的小型组织中。低代码/无代码工具非常适合传统行业的 IT 初学者,他们可以快速创建自定义的应用程序来满足特定环境的需求。这些低代码/无代码工具采用的是传统瀑布式开发概念,即先计划需求,然后根据需求创建应用程序,经过测试后再交付的开发流程。这与 DevOps 中的 CI/CD 不同,传统的低代码/无代码平台并没有持续改进的特性。
虽然低代码/无代码平台可能无法完全取代手动编码,但它们具有一些可以为 DevOps 带来额外价值的特性。例如,组织通常需要为内部和外部目的快速构建应用程序,但许多组织不具备内部技能,并且可用的 DevOps 人才数量有限——这种情况可能会使项目进度偏离预期的轨道。而借助低代码/无代码等自动化开发工具,组织可以弥补开发人才的不足,并使基本应用程序能够在很短的时间内创建和交付。
正是由于 DevOps 开发人才的短缺,以及日渐增长的快速构建应用程序的市场需求,低代码/无代码开发,乃至更先进的全自动开发平台等解决方案已经引起了许多企业用户和 SaaS 服务商的极大兴趣。
微软旗下云服务业务 Azure 云平台将几个预先存在的产品组合在一起,构建了一个名为 Power Apps 的低代码工具,它与微软的 Azure 云平台紧密结合,帮助开发者在 DevOps 开发流程中提供很多预构建的基础组件,大大减少开发者需要手动编码的组件数量。
全球最大的商业数据库供应商 Oracle 也提供了两种低代码工具,即与公司数据库管理系统相关的 Application Express 和基于云但也提供本地部署的 Visual Builder 云服务,用于降低企业用户使用其数据库服务的技术门槛,提升软件开发效率。
在国内,阿里云、腾讯云等 SaaS 服务供应商也推出了各自的低代码开发平台,并打通云基础设施的连接,帮助用户将低代码的能力带入 DevOps 流程中。
除了这些大厂以外,也有一些致力于将更先进的全自动开发平台与 DevOps 能力结合的优秀创企。由飞算云智推出的 飞算SoFlu 全自动软件工程平台包括全自动开发平台、全自动测试平台和全自动运维平台三大部分,不仅可以实现开发组件的可视化,还实现了逻辑的可视化。与市场上多数用于前端展现层的低代码开发工具不同,飞算SoFlu全自动软件工程平台首先解决的是后端微服务开发,用户绘制可视化流程的过程,即是微服务开发的过程,业务逻辑的设计完全由可视化的方式展现出来,并提供全自动测试工具,后续还将提供全自动运维工具,大大提高了 DevOps 团队开发、测试、运维全流程的工作效率。
图:使用 SoFlu 全自动软件工程平台构建“验证短信验证码”功能
中国工程院院士倪光南也对飞算发布的产品赞许有加:“针对软件行业的痛点,非常高兴地看到飞算SoFlu全自动软件工程平台提出了很好的解决方案,希望你们能够在实践中不断发展,为解决软件工程的这些痛点作出贡献,如果能通过实践的验证,那么对于软件行业的发展将很有意义。”
归根结底,DevOps 所追求的就是无限缩小开发和运维人员之间的差距,而低代码/无代码工具以及全自动开发平台都提供了一种跨越鸿沟的方法,可以减少工作量并为 DevOps 开发流程带来更多自动化。
对于这种利用自动化编码工具来增强 DevOps 开发效率的方式,无代码云应用平台开发商 Skuid 的首席技术官 Mike Duensing 表示:“市场不应该对将复杂的技术提炼成更简单的形式感到惊讶。低代码和无代码的兴起,就好比现在人们将大型计算机的算力迁移到移动设备上,这是一个不断发展、化繁为简的抽象过程,技术的进步使一些乏味、难以完成和耗时的事情变得更简单,这是科技发展的本质。”

低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。
持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。
转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。
- 上一篇
Java NIO Channel 使用
Java NIO 中的 Channel 分类: FileChannel SocketChannel ServerSocketChannel DatagramChannel FileChannel: 主要用于文件的读写,可以从磁盘上读取文件,也可以向磁盘上写入文件。 SocketChannel:用于 Socket 的 TCP 连接的数据读写,既可以从 Channel 读数据,也可以向 Channle 中写入数据 ServerSocketChannel:通过 ServerSocketChannel 可以监听 TCP 连接,服务端监听到连接之后,会为每个请求创建一个 SocketChannel DatagramChannel:用于 UDP 协议的数据读写 接下来就分别介绍一下。 FileChannel 主要用于操作文件,废话不多说,直接看例子。 准备文件 test-file.txt ,内容 shDEQuanZhanBiJi 输入 FileInputStream 用于从 FileChannel 中读取数据,例如将指定文件输入到 FileChannel 中,我们就能获取到文件的内容,接下来编写 ...
- 下一篇
不会一致性hash算法,劝你简历别写搞过负载均衡
大家好,我是小富~ 个人公众号:程序员内点事,欢迎学习交流 这两天看到技术群里,有小伙伴在讨论一致性hash算法的问题,正愁没啥写的题目就来了,那就简单介绍下它的原理。下边我们以分布式缓存中经典场景举例,面试中也是经常提及的一些话题,看看什么是一致性hash算法以及它有那些过人之处。 构建场景 假如我们有三台缓存服务器编号node0、node1、node2,现在有3000万个key,希望可以将这些个key均匀的缓存到三台机器上,你会想到什么方案呢? 我们可能首先想到的方案,是取模算法hash(key)% N,对key进行hash运算后取模,N是机器的数量。key进行hash后的结果对3取模,得到的结果一定是0、1或者2,正好对应服务器node0、node1、node2,存取数据直接找对应的服务器即可,简单粗暴,完全可以解决上述的问题。 hash的问题 取模算法虽然使用简单,但对机器数量取模,在集群扩容和收缩时却有一定的局限性,因为在生产环境中根据业务量的大小,调整服务器数量是常有的事;而服务器数量N发生变化后hash(key)% N计算的结果也会随之变化。 比如:一个服务器节点挂了,计...
相关文章
文章评论
共有0条评论来说两句吧...
文章二维码
点击排行
推荐阅读
最新文章
- CentOS7设置SWAP分区,小内存服务器的救世主
- CentOS7,8上快速安装Gitea,搭建Git服务器
- CentOS7编译安装Gcc9.2.0,解决mysql等软件编译问题
- Springboot2将连接池hikari替换为druid,体验最强大的数据库连接池
- CentOS8安装MyCat,轻松搞定数据库的读写分离、垂直分库、水平分库
- Windows10,CentOS7,CentOS8安装Nodejs环境
- CentOS7,CentOS8安装Elasticsearch6.8.6
- CentOS8安装Docker,最新的服务器搭配容器使用
- 设置Eclipse缩进为4个空格,增强代码规范
- Docker快速安装Oracle11G,搭建oracle11g学习环境