应用和开发案例:PayPal对Node.js
2021-01-04 14:36:04 阅读(166) 评论(0)
从历史上看,我们工程团队的代码已经分为浏览器层(HTML、CSS和JavaScript)以及应用层(Java)。想象一下,HTML开发人员要求Java开发人员“A”和“B页面连接在一起,但这就是我们。该模型可以通过引入全栈工程师来创建良好的用户界面,然后生成应用程序来支持它。称他们为独角兽,但这就是我们想要的,在PayPal中,主要的阻滞剂是我们在浏览器和服务器之间建立的人工边界。Node.js使用javascript,帮助我们通过建立浏览器和服务端的应用程序来解决这个问题。它统一了我们的团队,让我们了解和应对技术堆栈中用户的任何需求。Node早期使用.像其他js一样,我们把Node放在Node上.js作为一个原型平台。和其他一样,它表现得很好,我们决定在产品上使用它。一开始,我们用express作为路由,nconf作为配置,grunt建立工作流。我们特别喜欢express框架的普及,但我们发现它并没有在多个开发团队中得到很好的扩展。express是非强制性的,允许您以任何方式设置服务器。它非常灵活,但不利于在大团队中保持一致。随着时间的推移,我们看到的模式脱颖而出,越来越多的人拿起node.转身进入Krakens.js,它不是一个框架本身,而是一个基于express的层,允许它扩展到更大的组织。我们希望我们的工程师专注于建立自己的应用程序,而不仅仅是建立自己的环境。到目前为止,我们在内部使用kraken.js已经好几个月了(不久,我们将开源),我们的工程师团队希望把它变成实时公司内部的node.js应用程序。促进Node.在产品方面,我们首先尝试node.js不是一个小应用程序,它是我们的账目总结页面,流量很大。我们计划使用它,但我们必须降低风险,所以我们同时建立了java应用程序。如果在nodee中,我们知道如何部署和测量java应用程序.js程序出了问题,我们可以快速切换到java。它为某些数据提供了设置。我们从1月份开始部署,花了我们几个月的时间研究node.js必要的基本东西。比如sessions,centralizedlogging,keystores。在此期间,我们有5名工程师在使用java工作。Java开发两个月后,两名工程师开始使用node.并行开发jsapp。在7月初,他们相互沟通,他们的应用程序具有相同的功能。node.js的应用程序在两个月后开始了一个更小的团队,但很快就赶上了。在几个细节脱颖而出后,我们运行了测试案例,两个应用程序通过了相同的功能测试。node.js是:1)建立40%甚至更少的文件提供了一个令人鼓舞的消息,表明javascript可以工作得更快,几乎是两倍甚至更快。我们都同意并做出了搁置java应用程序的决定。但问题是java工程师在项目开始时转向node.js很高兴在我们的工作流中提交代码,并且对提高我们的双重生产力没有信心。性能是一个快乐而有争议的话题。在我们的情况下,我们的一个团队有两个功能相同的应用程序:一个基于Spring使用java,另一个基于kraken.js使用express,dust.js等开源代码。该应用程序包含3套路由,每套路由2或5个请求,数据通过Dust渲染页面。在我们的测试路由中,我们收集的数据是吞吐量和响应时间,你可以看到我们的node.与Java应用程序相比,js应用程序:1)每秒请求的两倍。更有趣的是,更有趣的是,Node.JS应用程序是单核,Java中有五核。这一差距我们希望进一步加大。2)35%平均响应时间在同一页。这导致一些快速响应200ms的用户肯定会注意到。对于这个结果,我想解释一下:我们的框架使用两种不同的应用程序,它只是在不同的技术上进行平等测试。也许你的差别更大。也就是说,我们非常兴奋地看到node.js性能。Kraken:Node改变了PayPal开发文化.js框架PayPal(全球流行的网上支付服务)公司发布了Node.jsweb开发框架——Kraken。基于Express的Kraken,Express是目前Nodee.Web开发框架是js上最流行的MVC模式,通过提供一系列强大的特性,帮助开发者快速创建各种Web应用程序。在Express的基础上,Kraken提供了更稳定的功能集合,支持本地化、环境配置、应用安全等。为什么会有Kraken?此前,PayPal长期以来一直具有“非我创造”的文化,这导致PayPal采用新技术的态度非常消极,项目开发进度非常缓慢。由于PayPal行动缓慢,其他支付服务提供商Stripe和Square趁机成长,逐渐动摇了PayPal的市场地位。与此同时,PayPal当时的开发技术已经不能满足快速开发的需要,因为当时的开发基本上都是Java,Java不用Java就能完成。2012年4月,DavidMarcuss成为PayPal总裁,任命工程师团队在6周内重写支付系统,这是一个为PayPal带来35亿美元收入的系统。最后,工程师团队花了8周时间完成了这项任务,他们选择了Node。.js重新开发系统。当然,PayPal的其他大量子系统也需要集成到Node.js系统,所以一开始Node.js仅作为原型架构的快速开发。后来,越来越多的PayPal新开发项目逐渐采用Node.js和其他开源软件完成,这促成了Kraken,可以快速开发web应用.js项目的诞生。下面简单总结分析一下Kraken的框架结构和特点,希望能帮助大家更好的了解Kraken。Kraken框架套件Kraken框架套件包括多个部分,Kraken.js只是框架的主要部分。该框架还包括其他模块(可独立使用):lusca:支持Express应用程序安全模块makarara:支持Dust.Adaro的国际化(i18n)模块:Dusttts支持Express.Kappapp视图渲染器:除上述可独立使用的模块外,NPM代理插件,Kraken套件还包括一系列依赖和实用工具:Generator-kraken:Yeoman生成器Enrouten:用于Express的路由(route)配置中间件(初始化和配置模块)Kraken-devtools:通过前面的介绍,Kraken应用程序开发所需的工具集合了Kraken的特点,我们已经基本了解了Kraken到底是怎么回事,那么Kraken到底有什么吸引开发者的特点呢?1.Kraken将生成的项目配置、内容和模板、路由逻辑(routinglogic)在不同的位置,方便开发者组织和管理文件。下面,让我们详细了解Kraken创建项目的基本结构:/config,存储应用程序及中间件配置/controllers,控制器/lib,存储开发人员定制的库文件和其他代码/locales,特定语言内容/models,模型/public,公共网络资源/public/templates,服务器和浏览器端模板/test,index存储单元和功能测试用例.js,随着项目的不断发展,这种组织方式和策略将对开发者更加友好。2.Kraken在开发环境和生产环境之间取得良好平衡的配置文件为/config/app.json,在运行过程中,它会加载文件中包含的键值对。2.Kraken的配置文件,平衡开发环境和生产环境,为/config/app.json,它将在运行过程中加载文件中包含的键值对。本文件中存储了所有的应用程序配置,极大地方便了开发者。/config/middleware.json是自定义的中间件配置文件。说到开发环境和生产环境,端口号和主机名称的参数设置通常是不同的。Kraken允许创建开发模式下使用的配置文件,如/config/app.json是生产环境中的配置,/config/app-development.json是开发环境下的配置,然后可以定制环境变量(定义环境变量NODE_ENV为production或productiondevelopment)控制要加载的配置文件。这样,开发者就可以在生产环境和开发环境中快速切换!3.注意安全,通过Lusca模块护送安全,遵循OWASP安全原则。同时,默认情况下,所有请求/响应头文件都被调用和启用:伪造跨站请求(CSRF)标头内容安全策略(CPS)标头隐私优先项目平台(P3P)标头X-FRAME-OPTIONS防止点击劫持4。同时,它还具有以下特点:路由(route)与逻辑(logic)分离:方便程序运行失败时快速锁定问题。模板(template)共享:Kraken选择Dust作为模板语言,同时在服务器端和客户端使用相同的模板,使代码可以重用。支持本地化:Kraken在运行过程中可以根据要求加载内容包(contentbundle),因此,在模板渲染之前,可以通过添加上下文为用户提供相应的本地语言支持,大大提高了应用程序的友好性。关于Kraken的示例和文档,官方给出了以下两个示例,可以帮助您学习和理解:例1:本地化和国际化:增加对Web应用程序的多语言支持,使用户可以使用当地语言使用Web应用程序例2:部署中间件:创建网页计数器,解释如何在应用生命周期中部署中间件开源项目Kraken是一个开源项目(分发协议为Apachelicensev2.0),每个人都可以对项目进行Fork和提交修改。它还提供了一个简单的使用文档。它还提供了一个简单的使用文档。Github页面可以查看项目源代码和文档。最后,任何项目的诞生都有自己的背景,必须有相应的需求驱动。就像Kraken一样,正是因为PayPal选择了Noden,以满足其快速开发Web应用程序的强烈需求.js,才有了这个项目。同时,还需要注意工程师团队中存在的“非我创造”文化,对新技术采取积极态度,不能保持不变,否则会阻碍企业的发展。
推荐阅读
- 好用的卫浴品牌有哪些 卫浴品牌排行榜前十名
目前国内来讲,主要以广东佛山、福建南安、河北唐山、河南长葛、四川简阳等几大卫浴生产基地。就产品配套措施完整度而言,还是以广东佛山的品牌为优,毕竟中国陶瓷城就坐落于佛山嘛。下面万商云集小编就给大家来详细介绍一下好用的卫浴品牌有哪些 卫浴品…查看详情
- 哪家的CRM能够算是好用的CRM
随着我国经济水平的不断上升,各行各业竞争激烈。许多的企业为有效的进行客户管理,都实施引进CRM系统,可是在面对众多的CRM产品,却不知道如何选择一款好用的CRM。如果选择错了,反而会成为企业的负担,因此选择一款好用的CRM真的尤为重要。接下…查看详情
- 域名重定向是什么意思
域名重定向(Domain Redirect)指的是将一直域名的访问请求自动重定向到另一个指定的域名或网址上。在互联网上,域名重定向是一个很常见的操作,对于网站的维护和运营非常重要,在实际应用中,域名重定向具有以下几个方面的作用: 1…查看详情
- 为什么ERP系统实施难?应该怎样规避风险
中小企业在信息数字化的道路上徘徊不前,并不是看不到先进的技术和理念,其核心原因是ERP系统实施困难的问题没有得到良好的解决。目前通过实施ERP来提高企业自身的成本、速度、管理、质量、科技等方面的竞争优势,已成为中小企业的当务之急。谁能先一步…查看详情
- 建设网站的步骤,手把手教你搭建优质网站
很多的企业为了能够带来更好的推广,都特别注重网站的建设,几乎现在大大小小的企业都有属于自己的网站。建立网站之后也能够得到很好的推广,能够将自己的产品更好的推销出去,吸引更多的客户。但是在建立网站的时候,也应该要了解相关的建站步骤…查看详情
- 拼图软件哪个好用 十大拼图软件排名
现在很多人拍照都离不开拼图这个点,市面上其实有很多的拼图软件,下面万商云集小编就给大家来详细介绍一下拼图软件哪个好用 十大拼图软件排名这方面的内容,希望能帮助到大家。 1.美图秀秀 美图秀秀是一款很受欢迎的图片处理软件,使用者不仅可以…查看详情
- 豆瓣排名前50电影
优质答案(1) 1、人生:《美国往事》 2、痛苦:《现代启示录》 3、信念:《肖申克的救赎》 4、哲思《第七封印》 5、执着《阿甘正传》 6、才华《东方不败》 7、爱情《罗马假日》 优质答案(2) 《最初的梦想》 影…查看详情
- 十大财务软件分享,总有一款适合你
随着时代的变迁,如今的财务早已经不同于以往的“账房先生”,仅凭算盘和纸笔就能指导“天下”。现在的企业拥有庞大的数据需要分析处理,以及各项数据申报,而这些都是离不开财务软件的辅助。但是对于选购财务软件,我们不仅要擦亮双眼,还要了解相关财务软件…查看详情
- 公司网站建设需要多少钱?包含4个部分费用
随着我国经济的不断进步,创业环境有了很大的改善。很多创业人士在创投初期就会开始着手打造公司网站,这是一个公司对外树立形象的重要途径,甚至有人说公司网站平台的成功打造就是创业成功的一半。那么就一定会有人问了,公司网站建设到底需要多少钱呢。下面…查看详情
- 解压文件的软件哪个好?好用的解压文件软件推荐
当我们接收一些文件的时候,很有可能是属于压缩的文件,那么这个时候想要查看文件,就应该对文件进行压缩,需要用到比较好的软件,能够压缩文件的软件很多。那么解压文件的软件哪个好?接下来就给大家详细的介绍几款比较好的解压文件的软件,希望…查看详情
- 会员卡管理系统价格影响因素有哪些?
会员卡管理系统价格影响因素有哪些?会员卡管理系统价格影响因素还是比较多的,比如说软件的开发成本等等,大家应该都知道,在软件开始上线之前需要经过很多环节,包括了软件需求方面的调研工作以及功能流程的原型确定,再就是到后期的编码开发、软件反复测试…查看详情
- erp有哪些品牌,可供企业选择
在如今,企业已难仅依靠自己内部资源在市场竞争中获得优势,还需将供应商、制造商、客户等集中利用,产生高效生产和经营、收获低成本、高效率的竞争优势,所以erp系统纷纷被企业所使用。那么现今市场上erp有哪些品牌可供企业选择呢?不妨接着往下看。图…查看详情
- 外贸独立站的建站技巧有哪些?
外贸独立建站,可能很多人并没有听说过这个名词,其实简单来说就是建立一个属于自己能够掌控的平台,而且是属于电商平台将商品传上去之后需要自己去进行推广去营销。因此在进行外贸独立站的建设时,也应该有掌握一些相关的技巧,这样在推广营销的…查看详情
- matlab下载哪个版本好
MATLAB2018a怎么下载安装与激活?答:mathworksmatlabr2018a中文版,64位版本,附带了相应的序列号和许可文件,可以完美成功激活软件,其详细的安装教程可参考下文,希望对你有帮助 matlab2018a 教程: …查看详情
- 人气火爆的言情小说排行榜,哪本是你的最爱?
每个人所选择的小说不相同,对于看完小说的感受也不一样,那么,想要快速的选出一部好的小说去看,就要提前了解一下言情现代小说排行榜都有哪些,这样才可以选出一部好的小说去看。1《何以笙箫默》顾漫(著)一段年轻时候的爱情,牵扯出一辈子的纠缠不清。学…查看详情
猜你喜欢
最新文章

扫码二维码
立即领取《千元实战营销秘籍》
还可免费试用营销管理系统
*如有疑问,请随时拨打免费咨询热线:400-0033-166
服务时间:8:30-18:00
软件企业
认定号:川RQ-2018-0216
高新技术企业
认定号:GR201951001121

关注微信公众号
和10万中小企业共同成长

扫码下载APP
享全方位服务一触即达
Copyright © 2004-2022 万商云集(成都)科技股份有限公司 版权所有
蜀ICP备12001963号-2
川公网安备 51010402000322号

快速找产品

找一找哪款产品适合您?
咨询热线:400-0033-166
-


-
电话沟通
获取方案
下载APP
官方微信
扫码下载APP
全方位服务一触即达

关注万商云集
和10万中小企共成长

TOP

企业首选的数字选用平台

400-0033-166
8:30-18:00
















































注册有好礼



