老李分享:Uber究竟是用什么开发语言? 2
Uber的任务分派系统是运行在Node上,这是一个运行在服务器端的JavaScript平台。当一个客户打开app或者网站来进行车辆预定或者调用其他的API来查看可用车辆信息的时候,大部分的这些服务都是通过运行在Node上面的平台来提供的,Croucher说道。
“这里大部分的工作都是由Node来完成的,我们从公司成立的第一年就开始使用Node,非常的早,“ Croucher继续说道。同时他也强调说Uber是Node的第一批采用者之一,同时也是第一批“真正基于Node打造出一门大生意“的企业之一。
但Node.js并非Uber唯一使用的语言。谷歌的Go语言在Uber中也占有一席之地。“我们此前已经开始使用Go来完成一些任务,其中涉及的一部分是对性能有相当高的需求的。我们一开始是用打算Node来进行编写的,但为了让系统获得更优的性能,我们现在开始使用Go来对这些特殊的部分进行重写。“
同时,Uber当前使用的是比较老的Node 0.10版本,因为它需要看到“新版本能带来明显的效益”才会进行升级。“Node.js基金会经理Mikeal Rogers则要求用户们将Node.js升级到版本4.“
除了贴近潮流的Node.js和Go之外,Python也是Uber所青睐的语言之一。“我发现Python其实也是Uber所采用的几个技术之一就是,“Croucher继续说道。”对于我们来说,可以在不同的人才池中进行选择是非常有帮助的,所以我们的很多系统也是使用Python来编写的。我们发现有大量的Python开发者编写了大量的优秀的服务,特别是在一些商业领域以及其他一些特别的领域上面。“
老李分享:Uber究竟是用什么开发语言? 2的更多相关文章
- 老李分享:Uber究竟是用什么开发语言? 1
老李分享:Uber究竟是用什么开发语言? poptest是国内唯一一家培养测试开发工程师的培训机构,以学员能胜任自动化测试,性能测试,测试工具开发等工作为目标.如果对课程感兴趣,请大家咨询qq:9 ...
- 老李分享:Uber究竟是用什么开发语言?
poptest是国内唯一一家培养测试开发工程师的培训机构,以学员能胜任自动化测试,性能测试,测试工具开发等工作为目标.如果对课程感兴趣,请大家咨询qq:908821478,咨询电话010-845052 ...
- 如日中天的Uber到底是用什么开发语言做到的?
Uber将正在蓬勃发展的Go和Node.js这两个语言很好的融合到其系统上面来.Uber的站点可靠性project师Tom Croucher在近期于波兰举行的Node.js互动大会上详尽的对该公司所用 ...
- 老李分享:使用 Python 的 Socket 模块开发 UDP 扫描工具
老李分享:使用 Python 的 Socket 模块开发 UDP 扫描工具 poptest是业内唯一的测试开发工程师培训机构,测试开发工程师主要是为测试服务开发测试工具,在工作中要求你做网络级别的安全 ...
- 老李分享:loadrunner的java user脚本开发
老李分享:loadrunner的java user脚本开发 poptest在性能测试loadrunner的课程里,以web协议为主,同时也讲解其他协议的脚本开发,对于一个性能测试工程师需要掌握一个以上 ...
- 老李分享:Eclipse中开发性能测试loadrunner脚本
老李分享:Eclipse中开发性能测试loadrunner脚本 前篇我分享了如何用loadrunner搭建javauser的性能测试脚本环境,本次我来告诉大家如何在eclipse开发loadrunne ...
- 老李分享:Python开发性能测试脚本
老李分享:Python开发性能测试脚本 测试开发工程师的工作主要是根据测试目标来完成,帮助测试人员完成测试目标,测试的业务需求是测试人员提出,但是由于环境的制约,手中没有性能测试工具的时候,性能测 ...
- 老李分享:开发python的unittest结果输出样式
老李分享:开发python的unittest结果输出样式 Python的unittest结果命令行输出,格式比较乱.为了提高格式输出的可读性,实现可以不同的颜色标识.所以准备扩展Python的un ...
- 老李分享:大数据框架Hadoop和Spark的异同 1
老李分享:大数据框架Hadoop和Spark的异同 poptest是国内唯一一家培养测试开发工程师的培训机构,以学员能胜任自动化测试,性能测试,测试工具开发等工作为目标.如果对课程感兴趣,请大家咨 ...
随机推荐
- 【CNMP系列】CentOS7.0下安装FTP服务
一个小插曲,安装一个FTP服务,便于和远程服务器的文件沟通.后续我们会讲到如何使用Capistrano配合git完成服务器的代码部署以及发布流程.现在,代码先走FTP吧,挺稳. FTP简介 FTP 是 ...
- MySQL Innodb 并发涉及参数
1 参数作用 MySQL的各个插件式引擎中,都会对事务及线程做一定的处理和优化.在Innodb引擎中,总是尝试保持 innodb内 操作系统的线程数(暂命名为innodb_thread) 应该小于或等 ...
- VUE2.0实现购物车和地址选配功能学习第三节
第三节 使用v-for渲染商品列表 1.使用vue-resource插件引入json数据 (注:在谷歌中调试打断点-- ,console还可以输出vm,res等属性列表,或者productList等一 ...
- Node.js~在linux上的部署
我们以centOS为例来说说如何部署node.js环境 一 打开centos,然后开始下载node.js包 curl --silent --location https://rpm.nodesourc ...
- lxd容器之GPU发现和加载
lxd gpu设备发现: // /dev/nvidia[0-9]+ type nvidiaGpuCards struct { path string major int minor int id st ...
- Java并发之线程异常捕获
由于线程的本质特性,使得你不能捕获从线程中逃逸的异常,如: import java.util.concurrent.ExecutorService; import java.util.concurre ...
- App Store 审核 IPv6 问题
应用提交了N次,每次被拒都是说IPv6的事情,花点功夫把这个事情搞清楚. 苹果审核人员回复的原因都差不多,说在他们的IPv6-Only的环境中测试应用,无法正常请求我们的服务器. 因为我们的域名确实没 ...
- nginx在CentOs下的安装及配置
前言: 先介绍一下nginx: Nginx是一款轻量级的Web 服务器/反向代理服务器及电子邮件(IMAP/POP3)代理服务器,并在一个BSD-like 协议下发行.其特点是占有内存少,并发能力强, ...
- JS入门(二)
关于运算符: js中判断运算符跟数学的运算符基本差不多,就是大于>,小于<,大于等于>=,小于等于<=,等于==,不等于!=,全等于===:可以看出来,跟我们印象中的判断运算符 ...
- 1050: [HAOI2006]旅行comf
1050: [HAOI2006]旅行comf Time Limit: 10 Sec Memory Limit: 162 MBSubmit: 1495 Solved: 737[Submit][Sta ...