首页
学习
活动
专区
圈层
工具
发布
社区首页 >专栏 >【架构师(第三十七篇)】 服务端开发之后端框架与数据库技术选型

【架构师(第三十七篇)】 服务端开发之后端框架与数据库技术选型

作者头像
一尾流莺
发布2022-12-10 13:47:17
发布2022-12-10 13:47:17
9700
举报

koa2 和 express

express 是非常优秀的框架,koa2express 更加简单,社区也很完善。

文档

👉👉 express 中文文档

👉👉 Koa2 中文文档

脚手架

👉👉 express 脚手架

👉👉 Koa2 脚手架

使用脚手架创建 koa 项目

代码语言:javascript
复制
// 安装脚手架
npm install -g koa-generator
// 创建项目
koa2 /tmp/foo && cd /tmp/foo
// 安装依赖
npm install
// 启动项目
npm start

创建完项目以后,调整一下项目结构,放在 src 目录下面,符合日常的开发习惯。

因为我们调整了目录结构,所以需要修改一下模块的引入路径。

代码语言:javascript
复制
// src\app.js

const index = require('../src/routes/index')
const users = require('../src/routes/users')

// bin\www
var app = require('../src/app');

然后 .gitignore 添加 logs/ ,项目会生成一些日志,给忽略掉。

egg.js

egg.js 是基于 koa2 封装的。

文档

👉👉 egg.js 中文文档

nest.js

nest.js 是一个默认基于 express 封装的框架。使用 Ts 语法,大量使用装饰器,学习成本比较高。

文档

说是中文官网,除了封面没几个汉字,可能是目前在国内比较小众,中文翻译的推进不是很积极。

👉👉 nest.js 中文文档

MySQL 和 Sequelize

MySQL

MySQLweb 程序中最常见的关系型数据库。

Sequelize

一个常用的数据库 ORM 框架。它让开发者不用写繁琐的 SQL 语句,通过 API 即可操作数据。

Mongodb 和 Mongoose

Mongodb

Mongodbweb 程序中最常见的 NoSQL 数据库。

Mongoose

Mongoosenode.js 中操作 Mongodb 数据库的模块。

MySQL 和 Mongodb

区别

  • MySQL 是关系型数据库,Mongodb 是文件数据库
  • 前者用于储存表格形式,格式规整的数据,后者用于储存文件,格式零散的数据。

场景

  • 作品信息,用户信息,适合存储在 MySQL
  • 作品的内容 JSON 数据,适合存储在 Mongodb

Redis

大型网站,复杂业务场景,肯定会用到缓存。

多核 CPU 擅长处理多进程任务,所有 web server 也都是多进程的,无论 PM2Nginx 还是其他。但进程之间有内存隔离,所以需要第三方缓存服务。

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2022-06-20,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • koa2 和 express
    • 文档
    • 脚手架
    • 使用脚手架创建 koa 项目
  • egg.js
    • 文档
  • nest.js
    • 文档
  • MySQL 和 Sequelize
    • MySQL
    • Sequelize
  • Mongodb 和 Mongoose
    • Mongodb
    • Mongoose
  • MySQL 和 Mongodb
    • 区别
    • 场景
  • Redis
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档