BFF架构 background  for frontSSR 服务端渲染,为什么做服务端渲染呢,提高SEO,还有就是减少http请求,首屏加载慢的问题node如何部署和nginx怎么连接,安全性怎么样vue+node1. 异步IO原理浅析a. 异步IO的好处前端通过异步IO可以消除UI的堵塞IO是昂贵的,异步IO是更昂贵的,那不是减缓了速度了吗NodeJS适用于IO密集型,而不是CPU密
前言本来是想只做一个Nodejs运行原理-科普篇,但是收到了不少私信,要我多分享一些更进阶,更详细的内容,所以我会在接下来的两个月里继续更新Nodejs运行原理。PS:此系列只做Nodejs的运行原理(架构,libuv,v8 etc),并不介绍Nodejs功能以及使用方法。本文以两个view来看Nodejs的架构,一个是从模块依赖的角度,另一个是从函数调用的角度。1.模块依赖如上图所示:your
转载 2024-02-28 13:11:21
81阅读
 前言Nodejs目前处境稍显尴尬,很多语言都已经拥有异步非阻塞的能力。阿里的思路是比较合适的,但是必须要注意,绝对不能让node做太多的业务逻辑,他只适合接收生成好的数据,然后或渲染后,或直接发送到客户端。为什么nodejs 还可以成为主流技术哪?是因为nodejs 对于大前端来说还是非常重要的技术!!!如果你理解nodejs 的编程原理,很容易就会理解angularjs,reactj
  相信大家平时写代码都使用过require,那么今天我们简单的写写这个原理。  首先先了解下前端有几种模块分别是干什么的:前端模块规范有三种:CommonJs,AMD和CMD。   1.CommonJs用在服务器端,AMD和CMD用在浏览器环境  2.AMD 是 RequireJS 在推广过程中对模块定义的规范化产出。  3.CMD 是 SeaJS 在推广过程中对模块定义的规范化产出。  4.A
转载 2024-08-15 00:59:01
32阅读
容器化Node Exporter对主机磁盘使用率的监控问题Node Exporter是prometheus社区开发的节点监控工具。在Prometheus生态中,如果一个组件被命名为Exporter,那么从狭义上来说,可以将它理解为一个适配器,用于将某些应用原生的非Prometheus格式的监控指标转换为符合Prometheus标准的指标,供Prometheus Server抓取,从而能够将该应用完
1、优先从缓存中加载模块在第一次加载后会被缓存。 这也意味着多次调用 require() 不会导致模块的代码被执行多次。 注意:不论是内置模块、用户自定义模块、还是第三方模块,它们都会优先从缓存中加载,从而提高模块的加载效率。2、内置模块的加载机制内置模块是由 Node.js 官方提供的模块,内置模块的加载优先级最高。例如,require('fs') 始终返回内置的 fs 模块,即使在 node_
转载 2024-04-07 07:28:59
22阅读
该用require还是import? require的使用非常简单,它相当于module.exports的传送门,module.exports后面的内容是什么,require的结果就是什么,对象、数字、字符串、函数……再把require的结果赋值给某个变量,相当于把require和module.exports进行平行空间的位置重叠。 而且require理论上可以运用在代码的任何地方,甚至不需要赋
转载 2024-07-01 06:49:27
24阅读
开始真正的node web开发——express框架为何说现在才是web开发的真正开始呢?首先任何企业都不会用原生的http协议API去开发一个完整的网站,除非她们先开发一个框架出来,其次我们之前的所谓http,connect都只是打开了一个http服务器而已,顶多只能算个工具集(中间件),最后使用像express这样的框架使我们把精力集中到功能业务上来了!生产力因此而得以体现!引入express
  Node 即 Kubernetes 集群中的一台工作机器,物理机或者虚拟机。https://kubernetes.io/zh/docs/concepts/architecture/nodes/  通常集群中会有若干个节点;而在一个学习用或者资源受限的环境中,你的集群中也可能 只有一个节点。  节点上的组件包括 kubelet、 容器运行时以及 
转载 2024-03-11 22:36:21
50阅读
events称为事件触发器,on() 用于注册监听器, emit() 用于触发事件。用例如下:const EventEmitter = require('events');class MyEmitter extends EventEmitter {}const myEmitter = new MyEmitter();myEmitter.on('event', () => { ...
原创 2022-11-23 00:08:22
94阅读
Node.js简介Node.js是一个能够在服务器端运行JavaScript的开放源代码、 跨平台JavaScript运行环境。Node采用Google开发的V8引擎运行js代码,使用事件驱动、 非阻塞和异步I/O模型等技术来提高性能,可优化应用程序的传输量和规模。Node是对ES标准的一个实现,Node也是一个JS引擎通过Node可以使JS代码在服务器端执行,在Node出现之前,JS通常作为客户
转载 2023-08-07 23:17:35
104阅读
目录一、async和await是什么二、node异步编程演进的四个阶段第1阶段 通过回调函数第2阶段 通过Promise第3阶段 通过Generator函数第4阶段 通过async和await一、async和await是什么ES2017 标准引入了 async 函数,使得异步操作变得更加方便,async其实本质是Generator函数的语法糖async表示函数里有异步操作await表示在后面的表达
转载 2023-05-23 17:33:16
116阅读
Node.js 标准库,这部分是由 Javascript 编写的,即我们使用过程中直接能调用的 API。在源码中的 lib 目录下可以看到。Node bindings,这一层是 Javascript 与底层 C/C++ 能够沟通的关键,前者通过 bindings 调用后者,相互交换数据。实现在 http://node.cc,这一层是支撑 Node.js 运行的关键,由 C/C++ 实现。V8:Go
Node.js 事件循环 事件循环通俗来说就是一个无限的 while 循环。现在假设你对这个 while 循环什么都不了解,你一定会有以下疑问。谁来启动这个循环过程,循环条件是什么?循环的是什么任务呢?循环的任务是否存在优先级概念?什么进程或者线程来执行这个循环?无限循环有没有终点?带着这些问题,我们先来看看 Node.js 官网提供的事件循环原理图。 Node.js 循环原理 图 为 Node
原创 2022-03-25 15:32:33
756阅读
基础架构 要想深入理解 Node.js,我们需要把 Node.js 进行必要的拆解,了解每个组成部分的作用,它们之间如何交互,最终构成 Node.js 这个强大的运行时环境。
转载 2023-05-21 10:24:40
84阅读
node_exporter主流程源码追踪mem模块采集的流程。
原创 2024-07-24 12:04:58
265阅读
目录概述cluster 的属性和方法cluster 的事件worker 的属性和方法worker 的事件cluster 的实现原理1、概述Node.js 默认单进程运行,对于多核 CPU 的计算机来说,这样做效率很低,因为只有一个核在运行,其他核都在闲置,面对单进程单线程对多核使用不足的问题,前人的经验是启动多进程。理想的状态下每个进程各自利用一个 CPU ,以此实现多核 CPU 的利用。Mast
转载 2024-04-18 12:20:40
58阅读
一.模块类型Node.js默认支持2种模块:核心模块(CoreModules):编译成二进制,其源码位于lib/目录下文件模块(FileModules):包括JavaScript文件(.js)、JSON文件(.json)、C++扩展文件(.node)由易到难,先看最常打交道的JS模块二.JS模块jsmodule注意一个细节,是在加载&执行模块文件前会先缓存module实例,而不是之后才缓存
原创 2021-01-14 17:44:40
240阅读
本文内容主要分为两大部分,第一部分是 Node.js 的基础和架构,第二部分是 Node.js 核心模块的实现。建议收藏
转载 2022-05-07 21:29:07
208阅读
陈跃标,字节跳动 Web Infra 团队成员,目前主要负责 Node.js 基础架构方向的工作,是一名 Node.js Collaborator 和 Libuv Contributor。
  • 1
  • 2
  • 3
  • 4
  • 5