小博无线技术团队使用的编程语言

简介: 简单介绍了小博无线(rippletek.com)技术团队使用的主要的几种编程语言及其应用场景。

目前,小博无线(rippletek.com)技术团队主要使用下面四种编程语言:

  • Ruby
  • JavaScript
  • Lua
  • Go

早期曾大量使用Erlang,后来放弃,具体原因在这篇文章中有详细介绍。

Ruby

Ruby on Rails进行业务数据接口开发

优点在于可以快速开发业务,弱点在于资源占用大,并发能力差。

开发策略为优先采用Ruby快速开发新业务,如发现有接口由于高频调用出现性能问题,先将这部分功能隔离出来并增加节点个数,将性能问题转化为资源问题,再用并发性能更好的Go语言实现替换Ruby来解决资源问题。这篇文章是一个具体案例。

运维机器人TidyMaid

我们在运维自动化中也广泛使用Ruby,TidyMaid就是采用Ruby实现的,详细介绍可参考这篇文章

JavaScript

这是前端开发的唯一选择。云端业务系统主要基于React, 设备配置界面基于Vue。

Lua

设备端的业务开发主要采用Lua,好处是开发和调试难度比C低很多,如果需要调用系统底层功能,也能和C模块非常方便的集成。

云端也有一部分基于openresty开发的与设备对接的业务系统,并发性能很好。

Go

  • 由于并发性能优异,用于高并发的数据接口开发
  • 结合alpine和chronos, 可以非常方便的开发和部署定时任务
  • 由于部署简单,在运维系统中也被大量使用

其他

除了上面四种被大量使用的编程语言,还有一些较少使用的编程语言:

  • C用于开发设备上的一些网络内核模块和设备驱动
  • Groovy用于实现jenkins pipeline
  • 运维系统还使用了少量的python
  • Java用于实现ODPS的UDF
目录
相关文章
|
2月前
|
存储 编译器 程序员
汽车电子行业的 C 语言编程标准
汽车电子行业的 C 语言编程标准
103 0
汽车电子行业的 C 语言编程标准
|
11天前
|
数据采集 传感器 数据可视化
LabVIEW软件开发工程师需要具备哪些能力与素质?
LabVIEW软件开发工程师需要具备哪些能力与素质?
|
2月前
|
安全 搜索推荐 数据安全/隐私保护
未来移动应用与系统发展趋势探析
随着移动互联网的快速发展,移动应用与系统在我们日常生活中扮演着越来越重要的角色。本文将探讨未来移动应用与系统的发展趋势,包括人工智能技术在移动应用开发中的应用、新型移动操作系统的出现以及移动应用安全性等方面的相关话题。
18 1
|
9月前
|
自然语言处理 算法 机器人
工业控制编程语言入门
工业控制编程语言入门
|
11月前
|
开发框架 安全 C#
探索C#编程语言:现代开发的引领者
大家好,今天我们将深入探讨一门备受程序员欢迎的编程语言——C#(C Sharp)。C#是一种多用途、现代化的编程语言,由微软公司推出,它在软件开发领域扮演着至关重要的角色。让我们一起来了解一下C#是如何引领现代开发的!
497 0
|
存储 数据挖掘
带你读《天猫精灵:如何在互联网公司做硬件》——2.5 电子设计相关工具简介
带你读《天猫精灵:如何在互联网公司做硬件》——2.5 电子设计相关工具简介
|
区块链 vr&ar
关于元宇宙链游系统开发游戏技术语言方案(成熟理念)
关于元宇宙链游系统开发游戏技术语言方案(成熟理念)
244 0
|
存储
嵌入式网络设备一次盲点补报的开发经验(二)
嵌入式网络设备一次盲点补报的开发经验(二)
94 0
|
数据采集 监控 固态存储
分享是奉献的果实,推荐5款高效率的黑科技软件
分享是奉献的果实,推荐5款高效率的黑科技软件
259 0
分享是奉献的果实,推荐5款高效率的黑科技软件