node相关
1. node简介
Node.js的主要优点包括以下几个方面:
- 异步编程模型:Node.js采用了事件驱动、非阻塞I/O模型,使其能够在大量连接的情况下保持高性能和稳定性。
- 单一编程语言:Node.js使用的是JavaScript,这是一种被广大开发者所熟悉的语言,能够大大降低学习成本。
- 开源社区活跃:Node.js有一个非常活跃的开源社区,有大量的模块可供使用,极大地提高了开发效率。
- 跨平台性:Node.js可以在多种操作系统上运行,如Windows、Linux、macOS等。
- 高性能:由于Node.js的非阻塞I/O模型,使其在处理大量并发请求时具有极高的性能。
- 数据密集型应用:Node.js擅长处理数据密集型应用,如实时通信、实时流媒体、实时游戏等。
综上所述,Node.js凭借其独特的异步编程模型和强大的社区支持,成为了一种优秀的服务器端技术选择
2. 数据库索引是啥
- 狭义上: 索引是数据库针对每条数据自动生成的内部唯一 id 标识, 用以快速搜索定位数据
- 广义上: 是数据库根据每条数据形成的关键字, 将划分为树形结构, 便于 sql 语句对数据的查找, 使算法复杂度降低到 O(logn)
3. 浏览器的事件循环和 node 事件循环有什么区别?
微任务执行时机不同: Node 环境:微任务在事件循环的各个阶段的 空隙(中间)执行 浏览器:微任务在事件循环的宏任务执行完后执行
4. 关于 buffer
- node 中的核心对象:
Buffer.from(str)
- 用来存储二进制数据的类数组
- 用两位十六进制数表示一个字符的
unicode
编码 - 连续存储空间,快
- 1 byte = 8 bit
- 英文字符 1 byte, 中文字符 2 byte