node.js
27
当你开始用 JavaScript 进行开发时,可能学到的第一件事就是如何用 console.log 将内容记录到控制台。如果你去搜索如何调试 JavaScript,会发现数百篇博文和 StackOverflow 文章都会简单的告诉你用 console.log。因为这是一种很常见的做法,我们甚至会在代码中使用像 no-console 这样的 linter 规则来确保不会留下意外的日志信息。但是如果我们真的想要去记录某些内容呢?在本文中,我们将梳理各种情况下要记录的日志信息,Node.js 中 console
87
【视频教程推荐:nodejs 教程 】概述Casbin 是一个强大的、高效的开源访问控制框架,其权限管理机制支持多种访问控制模型。Casbin 是什么?Casbin 可以:支持自定义请求的格式,默认的请求格式为{subject, object, action}。具有访问控制模型model和策略policy两个核心概念。支持RBAC中的多层角色继承,不止主体可以有角色,资源也可以具有角色。支持超级用户,如 root 或 Administrator,超级用户可以不受授权策略的约束访问任意资源。支持多种内置的操
64
一、Node.js介绍Node.js是一个javascript运行环境。它让javascript可以开发后端程序,实现几乎其他后端语言实现的所有功能,可以与PHP、Java、Python、.NET、Ruby等后端语言平起平坐。【视频教程推荐:nodejs 教程 】Nodejs是基于V8引擎,V8是Google发布的开源JavaScript引擎,本身就是用于Chrome浏览器的js解释部分,但是Ryan Dahl 这哥们,鬼才般的,把这个V8搬到了服务器上,用于做服务器的软件。二、node.js的优势1、N
176
JavaScript 的日益发展带来了很多变化,当今的 Web 开发面貌已经变得截然不同。在几年前是很难想象在服务器上运行 JavaScript 的。在深入研究Node.js之前,你可能想了解使用跨栈的 JavaScript 有什么好处,它统一了语言和数据格式(JSON),允许你以最佳的方式重用开发人员资源。将 Node.js 合并到技术栈中是一个关键优势。Node.js 是一个基于 Chrome 的名为 V8 的 JavaScript 引擎构建的 JavaScript 运行环境。值得注意的是,Node.
56
一个合理并且高效的部署方案,不仅能够实现快速升级,平滑切换,负载均衡,应用隔离等部署特性,而且配有一套成熟稳定的监控。kubernetes 把 Node 应用视作一个服务端应用的黑盒子,完美匹配了以上条件,越来越多的团队把 node 部署在 k8s 上。【视频教程推荐:node js教程、Docker视频教程 】但在此之前,需要先把 Node 应用跑在一个 Docker 容器上,这也是本章的主题。关于前端在 docker 上部署,作者曾写了几篇文章:如何在 docker 中部署前端前端部署 Prview
343
JavaScript 起初为浏览器而设计,没有读取或操作二进制数据流的机制。Buffer类的引入,则让NodeJS拥有操作文件流或网络二进制流的能力。【视频教程推荐:node js教程 】Buffer基本概念Buffer 对象的内存分配不是在V8的堆内存中,而是Node在C++层面进行内存申请,可以理解为在内存中单独开辟了一部分空间,但是使用时分配内存则是由Node层面完成的,释放也是由Node中v8的gc机制自动控制。Buffer基本操作,这里不在赘述,官方文档很详细。Buffer性能对比通常,网络传输
53
Node.js 是一个免费的跨平台 JavaScript 运行时环境,尽管它本质上是单线程的,但是可以在后台使用多个线程来执行异步代码。由于 Node.js 的非阻塞性质,不同的线程执行不同的回调,这些回调首先委托给事件循环。 Node.js 运行时负责处理所有这一切。【视频教程推荐:node js教程 】为什么要使用NodeJS?JavaScript 最初是作为一种单线程编程语言构建的,仅在 Web 浏览器中运行。这意味着在一个过程中,只有一组指令能够在给定的时间执行。仅在当前代码块的执行完成后,才移至
72
在调试程序时总是会遇到各种挑战。 Node.js 的异步工作流为这一艰巨的过程增加了额外的复杂性。尽管 V8 引擎为了方便访问异步栈跟踪进行了一些更新,但是在很多数情况下,我们只会在程序主线程上遇到错误,这使得调试有些困难。同样,当我们的 Node.js 程序崩溃时,通常需要依靠一些复杂的 CLI 工具来分析核心转储。在本文中,我们将介绍一些调试 Node.js 程序的简便方法。【视频教程推荐:node js教程 】日志记录当然,没有哪一个开发工具箱是不提供日志的。我们倾向于在本地开发中的整个代码中放置