nodejs汇总

持续更新中……

# 目录

# nodejs

# 官网

  • 英文官网 https://nodejs.org/en/
  • 中文官网 http://nodejs.cn/

# 参考资料

  • 七天学会 NodeJS 文档 http://nqdeng.github.io/7-days-nodejs/
  • node 面试题 https://github.com/ElemeFE/node-interview
  • Node 应用内存泄漏分析方法论与实战 https://github.com/alibaba/beidou/blob/master/packages/beidou-docs/articles/node-memory-leak.md
  • nodejs 最佳实践 https://github.com/i0natan/nodebestpractices/blob/master/README.chinese.md

# 开源项目

# 微服务

# 常用库

# npm

# Puppeteer

# 爬虫

# 开源项目

  • spider-flow(新一代爬虫平台,以图形化方式定义爬虫流程,不写代码即可完成爬虫)

# koa

# fastify

# eggjs

# 常用工具库

  • cron-parser(用于定时任务)
    • 文档 https://segmentfault.com/a/1190000020403852
  • egg-valparams(参数校验)
    • 文档 https://github.com/D780/valparams/blob/HEAD/doc/api.md
  • egg-cors(解决跨域)

# 文章

# 脚手架开发

# node 内置

  • path
  • util.promisify
  • child_process.execSync

# 常用库

# 必用

  • babel-cli/babel-env: 语法转换
  • semver: 提供版本比较
  • minimist: 解析用户命令,将 process.argv 解析成对象
  • commander: 命令行工具
  • inquirer: 交互式命令行工具
  • ora: 显示 loading 动画
  • chalk: 修改控制台输出内容样式
  • easy-table: 类似 console.table,输出漂亮的表格
  • log-symbols: 显示出 √ 或 × 等的图标
  • figlet: console.log 出一个漂亮的大 logo
  • consolidate:Template engine consolidation library for node.js 。
  • execa:更友好的 child_process.exec。
  • arg: 类似 commander,arg is yet another command line option parser.

# 经常用

  • handlebars:一个 javascript 语以模版库。
  • cross-spawn: 跨平台的 child_process (跨 Windows/Mac)
  • fs-extra: 对 fs 库的扩展,支持 promise
  • import-from: 类似 require,但支持指定目录,让你可以跨工程目录进行 require,比如全局包想引用工程路径下的内容
  • resolve-from: 同上,只不过是 require.resolve
  • yeoman-environment: 【核心】用于执行一个「模板插件包」,后文详细描述
  • yeoman-generator:
  • open: 跨平台打开 app,比如调试的时候开打 chrome
  • download-git-repo: 用来下载远程模板
  • ini: 格式转换
  • metalsmith;An extremely simple, pluggable static site generator。
  • slash: 把 windows 反斜线路径转换为斜线路径,foo\bar ➔ foo/bar

# 跨平台

  • osenv: 跨平台的系统信息
  • mkdirp 跨平台的创建文件夹
  • cross-spawn: 跨平台的 child_process

# GraphQL

# 官方

# 开源项目

# 文章

# 数据存储

# level

# mysql

# 客户端

# 常见问题

# mongodb

# cassandra

# redis

# 工具

# 图数据库

# 文章

# ELK

# logstash

# ElasticSearch

# 插件
# 遇到的问题
  • The bulk request must be terminated by a newline [\n] https://www.jianshu.com/p/1c8ba834e15c?utm_source=oschina-app

  • 关于 ElasticSearch 的聚类时出现 fielddata=true 问题 加.keyword

  • GET 查询,加.keyword 与不加.keyword 的区别是什么,为什么没有结果 https://segmentfault.com/q/1010000017312707

  • ElasticSearch 如何先聚合后过滤? https://elasticsearch.cn/question/656

# kafka

# 中台

# docker

# 常用命令

docker container ls -a     #获得容器信息
docker container ls -a  -p   #获得容器id
docker container stop <container ID>  #停止运行容器
docker container rm  <container ID> #删除容器
docker container stop $(docker container ls -a -q)  #批量停止容器
docker container rm $(docker container ls -a -q)    #批量删除容器


# 停止和删除Exited的docker实例
docker ps -a | grep "Exited" | awk '{print $1 }'|xargs docker stop
docker ps -a | grep "Exited" | awk '{print $1 }'|xargs docker rm
# 删除none的镜像
docker images|grep none|awk '{print $3 }'|xargs docker rmi

# 删除所有未被容器使用的镜像
docker image prune -a

# 文章

# jenkins

# linux

# java

# nginx

# 其他

# 运维部署