Chinaunix首页 | 论坛 | 博客
  • 博客访问: 511745
  • 博文数量: 158
  • 博客积分: 0
  • 博客等级: 民兵
  • 技术积分: 904
  • 用 户 组: 普通用户
  • 注册时间: 2016-10-10 11:17
文章分类

全部博文(158)

文章存档

2018年(74)

2017年(84)

我的朋友

分类: 系统运维

2018-08-08 15:01:03

如何确保我们采用的DevOps能够成功?是否有某些语言非常适合应用于DevOps?今天,我们来看看众多编程语言中,哪个才是最适合DevOps的(顺序与排名无关)。

1. Java

许多深受欢迎的流行框架和库都是用Java编写的,例如Angular、React和Node。这种语言不仅提供服务器端的实现,数量庞大的社区意味着在GitHub或Stack Overflow上总会有帮助。对开发者来说,Java是安全的选择。

尽管Java对DevOps(所有这些库和依赖关系)来说有些复杂,但这并不意味着它们不能进行良好的协同工作。

2. Go

Golang。Google的开源编程语言,或多或少可以说是为乐DevOps研发的。Go是为了提高速度而建立,但它强调的是精益,网络高效的运行对DevOps意义重大。它比Java更简洁,而且是建立在C的基础上,某种程度上可以说是没有任何缺点的。

容器之王Docker就是用Go编写的。为什么各种DevOps工具都是用Go编写的呢?因为它可以轻松编译为所有主流操作系统独立、静态的二进制文件。没有库、没有依赖和其他任何东西。

3. Python

Python正在成为通用语言之一。最近GitHub将其评为第二大热门编程语言。Stack Overflow称它是增长最快的主要编程语言,Python甚至被认为是机器学习最流行的语言。

那么,Python可以为DevOps做些什么呢?Python可以通过监视和部署工具(如Ansible和salt等)减少维护问题。像OpenStack这类的选项为开发人员提供了创建私有云和公共云基础框架的资源。

4. C / C ++

虽然C可能比较“大龄”,但在很多方面仍然与计算有着千丝万缕的关系。C / C ++是许多现代计算的基础,如果您需要直接操作硬件本身,那么没有比C更好的语言了。

但是,C / C ++在DevOps中面临着一个非常大的障碍:自身大小。C / C ++的绝对比Go或Ruby等语言大一个或两个数量级。C / C ++的编译时间更长,还有二元问题。由于C / C ++被编译为本地机器代码,大小问题导致了它的应用程序二进制接口问题。

5. Ruby

Ruby的鼎盛时期可能已经过去了,但它仍然是一个实用的语言学习。许多流行的自动化工具都是用Ruby编写的,特别是Chef。Ruby是一种面向对象的、编译的并且功能全面的编程语言。如果您了解Python或Perl,那么对这个语法也不会感到陌生。

需要说明的是,Ruby已经不像以前那么受欢迎了。其他的语言从Ruby中提取了实用的功能,并以自己的语法实现。然而,GitHub上许多项目仍然使用Ruby编写,包括流行的Ruby on Rails。

+1 Rust

不要忽略Rust,Rust很可能成为下一个大型基础设施语言。许多Ruby狂热者开始纷纷转向Rust,部分原因是因为Ruby for Ruby有非常详细的教程。

在DevOps中,Rust在系统自动化、容器管理和容器编排方面承担了越来越多的责任。甚至在一些项目上与Docker结合使用。Oracle的第一个容器程序就是在Rust中编写的。显然,Rust可能是2018年要着重关注的技术。

阅读(1223) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~