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

简介: 简单介绍了小博无线(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
目录
相关文章
|
6月前
|
存储 编译器 程序员
汽车电子行业的 C 语言编程标准
汽车电子行业的 C 语言编程标准
162 0
汽车电子行业的 C 语言编程标准
|
1天前
|
机器学习/深度学习 算法 API
量子计算编程语言:面向未来的开发工具
量子计算编程语言是面向未来的开发工具,基于量子力学原理,能够突破经典计算的瓶颈。本文介绍了量子计算编程语言的发展历程、主要特点、应用前景及学习方法,涵盖了QCL、Q#、Quipper等代表性语言,以及Qiskit、ProjectQ等主流工具,为开发者提供了全面的学习路径。
|
29天前
|
传感器 物联网 定位技术
浅谈蓝牙演进之路:从诞生到普及
蓝牙技术是一种支持设备间短距离通信的低功耗无线电技术,广泛应用于移动通信、消费电子、汽车电子、医疗健康等领域。自1994年由爱立信公司创制以来,蓝牙技术经历了多个版本的迭代,从最初的蓝牙1.0到最新的蓝牙5.4,不断优化传输速率、通信距离、功耗和安全性。未来,蓝牙技术将在低功耗、高速度、广覆盖等方面继续发展,拓展更多应用场景,如智能家居、可穿戴设备、工业物联网等。
|
自然语言处理 算法 机器人
工业控制编程语言入门
工业控制编程语言入门
|
开发框架 安全 C#
探索C#编程语言:现代开发的引领者
大家好,今天我们将深入探讨一门备受程序员欢迎的编程语言——C#(C Sharp)。C#是一种多用途、现代化的编程语言,由微软公司推出,它在软件开发领域扮演着至关重要的角色。让我们一起来了解一下C#是如何引领现代开发的!
549 0
|
Linux
海思3559万能平台搭建:串口编程
海思3559万能平台搭建:串口编程
302 0
海思3559万能平台搭建:串口编程
|
存储
嵌入式网络设备一次盲点补报的开发经验(二)
嵌入式网络设备一次盲点补报的开发经验(二)
110 0
|
传感器 消息中间件 物联网
HCIA物联网初级考试-第五章物联网操作系统及感知层开发介绍
HCIA物联网初级考试-第五章物联网操作系统及感知层开发介绍
HCIA物联网初级考试-第五章物联网操作系统及感知层开发介绍
|
Java 物联网 Python
物联网发展的三大编程语言
虽然Java是物联网开发中使用最多的语言,但是Java和Python在物联网开发的不同子域中紧随其后。物联网发展的未来可能仍然是多语言的。十年前,可能没有人想象未来有一天我们使用的空调、冰箱可以智能可控,路上行驶的汽车可以自动驾驶,现在,这些都将变得现实,而让这些变得现实的就是物联网。
20768 1