小博无线技术团队使用的编程语言
目前,小博无线(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 由于并...