本文由飞鱼在众成翻译平台翻译。
Mark Hinkle,Node基金会执行总监,曾说道:‘对于Node.js,2017年是杰出的一年’。这点我们完全同意。 Node.js在技术领域有着令人羡慕的地位,每天线上运行的Node实例超过8.8百万个,并且这个数字在过去一年里飞涨。同时在一年时间内,Node.js的贡献者已经从1,100人发展到1,500人,每周下载的npm包超过30亿个。
2017年对于RisingStack也是重要的一年。这一年,我们提供了许多的学习机会,不仅为初学者,也为高级Node开发者提供了很多的新教程,并且涵盖了微服务和Node的新特性。我们很高兴地看到,2017年有超过150万用户从我们这里学到了一些东西。
这也意味着通过RisingStack博客学习Node.js的开发者几乎比过去一年翻了一倍。
在2018年,我们有许多新的想法要写:优秀的教程、深度学习案例、Node新特性以及更多。然而,为了迎接即将到来的挑战,并告别2017年,我们精选了今年最好的文章
我们第一篇2017年度精选文章带你领略编写Node.js REST APIs的十个最佳实践。你可以学习如何正确使用HTTP方法,API路由和HTTP状态码。我们帮你测试你的Node.js REST APIs,并为Node.js REST APIs选择合适的框架。
鉴权功能、请求执行差异化、请求速限制和创建API文档,都是写好Node.js REST APIs的重要因素。这篇文章里都有介绍到。
你准备做Node.js开发的面试官?还是打算去做面试者?不管如何,我们这里都有好消息给你。
我们结合2017年最新的内容,更新上个版本的Node的问与答。该新版本包含promise、Yarn、如何保护HTTP cookie免受XSS攻击以及确保依赖安全等部分。
在这个全面的问答集合帮助下,你可以快速的回顾Node里面最重要的主题。
通过过去四年在RisingStack Node.js咨询与开发业务里面获取的经验,我们收集了最为常见的技术与架构模式,并推荐你去使用,如果你想要构建和操作一个可用的高质量微服务。
微服务系统需要多个物理逻辑组件间的合作,若通过网络联系沟通而不是内存调用,将导致微服务系统额外的延迟和复杂度,而这种合作联系是非常重要的。在这篇文章中,我们讨论了实施微服务模式的风险,以帮助你检测、隔离和解决问题。
异步结构在其他语言中已经有一段时间了。随着Node.js 8的发布,期待已久的async函数在Node.js上线了。
你可以在本文中学习,如何通过Node.js的async/await函数来简化回调和Promise。
假如你喜欢用if-else条件和for/while循环这种好语句,或者认为try-catch语句是错误处理的方式,那么你可愉快的用async/await来重写代码。
在这个Node.js和MySQL的例子项目中,你可以学到如何高效的处理数十亿行数据,而这些数据将占用上百GB的存储空间。通过例子,来看分区表,以及如何从数据库中增删数据。
这篇文章验证了,符合ACID原则的数据库管理系统方案像MySQL,也可以处理海量数据。所以你不必放弃事务型数据库的特色功能。
Npm 4成为了Node 7.4默认的包管理器,但是与此同时,Facebook也上线了他的包管理器-Yarn。
让我们看看Node.js包管理器的现状,当要选择的时候,看他们都能为你做什么。
一定要避免回调地狱!我们找了最好的技术工具来处理异步操作:async.js、promises、基于generator的流控制和异步函数。
坚持以下原则来让它变的更顺利:
选择异步而非同步API,因为非阻塞语句比同步的要有更好的性能。
始终用最合适的流程控制或者其组合,来减少等待I/O完成的时间。
期待已久的Node 8在5月30号发布了,带来许多新特性和改进。这篇文章中,我们要介绍最重要的部分,回顾一下异步钩子API、N-API和Node 8其他显著的变化。
并且,在今年的博客中我们也多次介绍到了这些。
Node.js 8.4.0发布的时候,我们介绍HTTP/2服务推送最重要的部分,同时介绍如何创建一个使用它的小型Node.js应用。
后来因为Node.js的新特性很棒,我们写了另外一篇处理ES模块,性能钩子和文件模块文章 。
什么是一个API网关?为什么我们要用到它?这篇文章里,我们讨论了路由和版本管理、身份认证、数据合并、序列化、协议转换。同时试着去写一个简单的API网关。
我们将讨论为API网关定义明确的职责的重要性,以及仅包含通用共享逻辑的重要性。API网关有助于让你的服务小而专,所以正确合理使用是很重要的。
这篇文章里,我们创建了一个简单的项目,来展示如何去构建、测试和调试一个用TypeScript写的Node.js应用。讨论了Typescript是什么,为什么使用它有益,以及如何用TypeScript开始项目。文章中也包括添加检查,写测试和调试部分。
想想你自己的未来!你想要在没有正确测试的代码上开发吗?如果不要,读读这篇关于正确地使用Node.js测试和TDD(测试驱动开发)的文章。测试驱动开发是一种先为模块写测试,再写实际开发的方法。
这篇指南包含了在RisingStack上我们所做的TDD的绝大部分内容:
写错误的测试代码
写正确的测试代码
重构。
在这篇文章中,讨论在生产环境中用Node.js应用时,具体要监控些什么。我们告诉你如何检测你的系统,选择监控工具时如何考虑,以及为什么我们推荐Prometheus当作一个自我托管的监控套件。
我们也有示例,给你更深入的意见,以便你选择它作为你的node.js应用的监控方式。
当达到Node.js能提供的最高速率时,你可以做什么?为了提高你的应用性能,一个可能的方案就是用Rust而不是C++写原生模块。这是个好选择,因为其提供的安全和易用性。
在这篇文章中,我们将引导你完成一个现代、快速和安全的原生模块。
RisingStack里,我们喜欢用微服务,因为这种架构给予我们灵活性和快速性。这篇文章中我们展示了,在你的Nodejs微服务里面,如何使用Pack框架来执行消费者驱动的契约测试。
我们用Pact创建模拟服务器,来进行客户端单元测试。用Pact Broker收集,并与正在运行的服务进行验证,以保证消费者和提供者的一致性。
在这篇文章,你可以看到Javascript的客户端路由。我们将讨论服务端路由和客户端路由的不同,以及为什么要区分对待。这篇博客是作者的《写一个Javascript框架》系列的最后部分。
这个系列文章是关于一个叫NX的开源客户端框架。该系列里,Bertalan介绍了他写框架的时候,遇到的不得不克服的主要困难。
作为一名有前景的有才华的初级程序员,Robert Czinege这个夏天参加了RisingStack的训练营,但是他仍需要学习我们是如何为客户构建优秀的Node.js应用。
在他的文章里,谈到了RisingStack的node.js训练营,帮助他跟上队里的其他人。顺便说一下,这个训练营开放给每个学习Node.js的人,因为我们在GitHub上面开源了。所以完美一击冒牌者综合症并开始快速学习Node.js吧!
在2017年1月,我们自豪地组织和赞助了Nodeconf Budapest,这个会议汇集了企业中最顶尖的头脑和中欧里最好的Node.js天才。这个会议是Node社区里耳目一新的事。
我们非常高兴的看到像Danny Grander这样的专家谈论有关书写安全代码的重要性或者Daniel Khan,他分享了作为web开发者在过去17年职业生涯中学到的内容,而这些只是其中的一部分。
另外一个对于RisingStack非常重要的事件是,在夏天快结束的时候,我们与Keymetrics合作并与他们的解决方案合并了Trace-我们的Node.js监控平台。
我们这个秋季也很忙碌,因为我们拉开我们欧洲Node.js之旅的序幕,包含了Node基础、微服务和安全。我们将在2018年春季将继续提供训练,React与Kubernetes也扩展了我们的训练内容。
正如你所见的,对于Risingstack里的我们,去年是很重要的一年。 在这新的一年,我们很兴奋,也有很多的计划和期待。同时感谢你们跟随我们的步伐以及阅读我们的博客。我们很高兴能拥有这么好的听众。 <3
请继续关注我们,在2018年里我们有更多精彩消息和教程!
原文来自:众成翻译
声明:所有来源为“聚合数据”的内容信息,未经本网许可,不得转载!如对内容有异议或投诉,请与我们联系。邮箱:marketing@think-land.com
支持全球约2.4万个城市地区天气查询,如:天气实况、逐日天气预报、24小时历史天气等
支持识别各类商场、超市及药店的购物小票,包括店名、单号、总金额、消费时间、明细商品名称、单价、数量、金额等信息,可用于商品售卖信息统计、购物中心用户积分兑换及企业内部报销等场景
涉农贷款地址识别,支持对私和对公两种方式。输入地址的行政区划越完整,识别准确度越高。
根据给定的手机号、姓名、身份证、人像图片核验是否一致
通过企业关键词查询企业涉讼详情,如裁判文书、开庭公告、执行公告、失信公告、案件流程等等。