首页
学习
活动
专区
圈层
工具
发布
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    使用 ServerLess, Nodejs, MongoDB Atlas cloud 构建 REST API

    Node.js 是一个 JavaScript 的运行时,在 JavaScript 中函数做为一等公民,享有着很高的待遇,通常使用 Node.js 我们可以快速的搭建一个服务,而 ServerLess 是一种...“无服务器架构”,从技术角度来讲是 FaaS 和 BaaS 的结合,FaaS(Function as a Service)是一些运行函数的平台。..._tcp.cluster0-on1ek.mongodb.net 以上正是我在链接 MongoDB Alats 过程中遇到的问题,这里再多提下,希望能对你有帮助,因为这花费了我很长时间,尝试使用 Google...不利于上下文重用:传动程序启动之后常驻内存,不存在冷启动问题,而 ServerLess 是基于事件驱动的,第一次请求来了之后会下载代码、启动容器、启动运行环境、执行代码,这个过程称为冷启动,但是以 AWS...└── utils │ ├── message.js └── test └── controller └── books.test.js 项目创建、插件安装 这一次我没有直接使用

    3.7K20

    Week14-服务端选型:磨刀不如砍柴功

    这里,讲师再次推荐了自己的一个课程,鉴于此次购买课程自己不是很满意,这里,我觉得自己补充mongoose的基础知识就够了,总结至:https://www.yuque.com/liugezhou/gofftg...如图显示这个版本是5.0.8的,也就是说我之前电脑上其实是有redis的,我新安装的这个6.0.9的并没有用上。...然后,我继续查看目录,发现我之前安装的5.0.8的版本,其实在 /usr/local/redis-5.0.8下面,而且我不是使用的brew安装的 因此,我又把刚刚安装的redis删除: brew...:pm2其实就是一个后台服务常驻的一个工具,我们平时在npm run dev后如果按Ctrl + c 停止后,服务就停止了,如果我们使用 pm2来启动,那么即使停止,我们的项目还是能够继续运行。...我们这里日志拆分使用的是:pm2-logrotate 安装:pm2 install pm2-logrotate -g 运行 pm2 list 即可看到 pm2-logrotate的进程 默认配置如下

    3K30

    🥬🐕 node的第一个接口:注册

    ---- 这是我参与11月更文挑战的第18天,活动详情查看:2021最后一次更文挑战」 新建node项目 新建一个文件夹 npm init 生成package.json现在就可以使用npm了。..., server.js require 引入 express 创建一个 express实例 get请求 如果开发环境使用process.env.PORT 本地使用 5000 监听5000端口 如果运行打印...这篇文章 操作mongodb的插件有很多,这里我们使用mongoose 安装插件 npm install mongoose 新建一个config文件夹 ,然后建一个 keys.js文件 module.exports...= { // 没有数据库和密码的本地服务 mine mongoURI : "mongodb://localhost/mine } // 引入mongoose const mongoose...= require('mongoose') // 我们把数据的驱动连接URL 写到了另一个文件config文件架下的keys.js中 const db = require(".

    1.5K20

    架构和数据库

    程序在内存中运行,一旦程序运行结束或者计算机断电,程序运行中的数据都会丢失 因此我们需要将一些程序运行的数据保存到硬盘当中,而数据库就是数据持久化的最佳选择 简而言之,数据库就是存储数据的仓库 数据库分类...配置环境变量 我的电脑 -> 右键属性 -> 高级系统设置 -> 环境变量 -> 系统环境变量 -> 找到 Path 双击Path -> 在弹窗内添加mongodb安装目录D:\Project\MongoDB...() 断开数据库连接(一般不使用) 一般只需要连接一次,连接一次以后,除非停止服务器,否则连接不会断开 Mongoose 对象 Schema(模式对象) 定义约束了数据库中的文档结构 Model...Model 查询到的结果都是 Document Model#save([options], [fn]) 保存文档对象 // 创建一个Document let stu = new StuModel({...name: '孙悟空', age: 18, sex: '男', address: '花果山' }); // Document 方法 stu.save(function

    2K10

    04_数据库

    程序在内存中运行,一旦程序运行结束或者计算机断电,程序运行中的数据都会丢失 因此我们需要将一些程序运行的数据保存到硬盘当中,而数据库就是数据持久化的最佳选择 简而言之,数据库就是存储数据的仓库 数据库分类...配置环境变量 我的电脑 -> 右键属性 -> 高级系统设置 -> 环境变量 -> 系统环境变量 -> 找到 Path 双击Path -> 在弹窗内添加mongodb安装目录D:\Project\MongoDB...){}) 数据库连接断开事件 使用 mongoose.disconnect() 断开数据库连接(一般不使用) 一般只需要连接一次,连接一次以后,除非停止服务器,否则连接不会断开 Mongoose...Model 查询到的结果都是 Document Model#save([options], [fn]) 保存文档对象 // 创建一个Document let stu = new StuModel({...name: '孙悟空', age: 18, sex: '男', address: '花果山' }); // Document 方法 stu.save(function

    1.8K10

    GoSnaps:如何支持5天50万用户服务器只花100元

    无数次的经验告诉我,PHP配Symfony、Python和Django或者Ruby on Rails就是运行速度慢和框架太重量级的代表。...我并不是说这些语言和框架不好,只是对于想省经费的MVP开发者来说不是最理想的选择。 我后台用的是速度较快的NodeJS,ORM工具则用了Mongoose来简化对MongoDB的操作。...虽然我知道Mongoose代码挺多的而且我其实也不太精通,不过MVP么怎么方便怎么来。上周末有一次我的四个NodeJS进程让服务器CPU都飙到了90%以上而同时在线人数只有不到一千。...我觉得是Mongoose的问题, 所以就把Mongoose的lean()函数打开了,这样传递的就是普通的JSON对象。这样一来CPU瞬间掉到了不到10%。...试想一下如果我用的是Symfony和Doctrine恐怕光运行代码就得好几个服务器。

    1.5K100

    GraphQL 基础实践

    而 GraphQL 就是为了解决这些问题而来的,向服务端发送一次描述信息,告知客户端所需的所有数据,数据的控制甚至可以精细到字段,达到一次请求获取所有所需数据的目的。...这是 Facebook 故意设计成这样的,希望你读完之后就能体会到 Facebook 的用心良苦了。...看到 Schema 定义,COMEDY是枚举类型MovieTypes中的枚举成员。枚举类型用于声明一组取值常量列表,如果声明了某个参数为某个枚举类型,那么该参数只能传入该枚举类型内限定的常量名。...想象这么一个页面,我要列出两个电影的信息做对比,为了发挥 GraphQL 的优势,我要同时查询这两部电影的信息,在请求体中请求 movie 数据。前面我们说到,请求体决定了返回数据的结构。...接下来引用到我们中间件的handle配置中,完美,大功告成,用 ThinkJS 搭建的 GraphQL 服务器就此告一段落,npm start 运行起来之后,用 GraphiQL “播放”一下你的请求体

    13.6K20

    谈谈项目的重构与测试

    后面阅读了tornado的源码,也去了解了各种协程框架以及运行的原理。总感觉flask的这种同步方式编程不够好,同时对于这种运行在容器里的模式目前还缺乏了解。...作一次validate操作,再进入业务逻辑层。...mongodb,在flask框架中采用了mongoengine作为数据库层的orm,对于这个python-mongodb的orm产品,我个人并不是很喜欢(可能是因为我习惯了mongoose的工作方式),...如果没有类mongoose的python-mongodb异步框架,有时间就自己写一个吧~ 这里顺带吐槽一下jsonschema,简直太琐碎了,一个很短的文档结构定义,它会描述成好几十行,我就不贴代码了,...总结 重构是一个不断优化和学习的过程,在这个过程中我踩了一些坑,也爬出了一些坑,希望可以把我的这些总结分享给大家。欢迎大家跟我交流。

    1.3K10

    使用node和express+mongodb实现数据增删改功能

    今天小编就写一遍关于node写接口的文档,会从环境搭建,数据库链接,数据模型,接口文档以及到测试,一步一步的来,尽最大可能写好,让每一位读者都能看懂,文章可能过程,希望慢慢理解    2018最后的一篇博客...express,并创建一个app实列,请看下面,   2.5.1:port是我们的端口号,app.listen是监听端口号运行   2.5.2:然后通过node app.js运行,查看服务器是否正常运行成功...,然后在浏览器出入http://localhost:5000,就可以查看运行的结果了  2.6但是我们每次修改代码的时候都要重新运行node app.js,这个时候我们只需要安装nodemon...,黄色警告提示我们需要创建一个用户信息,也就是我们最后链接的用户名和密码,点击add会弹出一个框,然后我门添加用户名和密码就可以了,最后点击CREATE,这样我们的数据库就已经创建完成了,接下来我们可以使用...), const mongoose require('mongoose') 4.3在我们的根目录创建一个config文件,在confing中创建一个db.js文件,这个文件存放我们的数据库的地址

    2.1K40

    年度牛「码」实战案例

    我加强了安全防范措施,如数据加密、权限控制等,确保了系统安全稳定运行。 以下是我通过代码创新提质增效和进行开源贡献的情况: 1....开源贡献方面:我将项目中的一些通用组件和工具进行整理,上传至GitHub开源平台,与其他开发者共享。此外,我还积极参与开源社区的技术讨论,为其他项目提供技术支持,共同推动开源生态的发展。...总之,在过去的一年里,我不断提升自己的技术水平,努力为公司和开源社区做出贡献。在未来的工作中,我将继续发挥自己的专长,为我国IT产业的发展贡献自己的力量。...权限控制是为了限制用户只能访问他们有权限查看的资源。 7. 部署和监控 使用 Docker 容器化应用是为了将应用及其运行环境打包在一起,确保在不同的环境中有一致的运行行为。...(req, res) => { try { const newUser = new User(req.body); const savedUser = await newUser.save

    61310

    在Express中对MongoDB数据库进行增删改查

    编码前的准备工作 首先要安装好NodeJs运行环境,配置好node和npm的环境变量,最好安装淘宝 NPM 镜像cnpm,安装配置好npm后,打开终端运行npm install -g cnpm --registry...我使用的系统是Windows10系统,采用的开发工具是Visual Studio Code,另外还需要在VSCode中安装REST Client插件,用于发送HTTP请求和查看服务端的响应信息,类似于PostMan...// 保存产品 await product.save(); res.send(product); }) 根据客户端传递的id号删除某个产品 app.delete('/products/:id',...{{url}}/products ### post 新增产品 POST {{url}}/products Content-Type: application/json { "title": "我的手机...}) 我在实际使用VSCode的过程中,当使用async集合await调用MongoDB实现异步调用时保存,需要在源代码文件server.js的顶部添加如下一行: /* jshint esversion

    6.8K10
    领券