在用 node 的 mongoose 模块操作 mongodb 数据库的时候,本来正常返回数据,但是有时候会返回空白页,控制台里报错:

Topology was destroyed

数据库连接代码如下:

var mongoose = require('mongoose');
mongoose.connect('mongodb://localhost/test');
var db = mongoose.connection;

网上百度下,没什么合适的解释,大概理解一个意思,就是长时间没有请求,数据库断开了。
我又去找了 mongoose 重连数据库的方法,比较合理的是设置一个连接池,并自动重新连接,方法如下:

先定义一个 options 对象,如下:

var options = {  server: {auto_reconnect: true,poolSize: 10}
};
  • poolSize是连接池最多可连接的数量,
  • auto_reconnect是自动重新连接,设置为 true, 然后在连接数据库的时候将 options 对象当作参数传入:
mongoose.connect('mongodb://localhost/test',options);

mongoose Topology was destroyed 处理相关推荐

  1. mongodb报错 An error occurred while loading navigation: topology was destroyed

    情况描述,关了电脑,第二天查询数据,报错An error occurred while loading navigation: topology was destroyed 我的数据库连接代码如下: ...

  2. MongoError: topology was destroyed解决方法

    MongoError: topology was destroyed解决方法 参考文章: (1)MongoError: topology was destroyed解决方法 (2)https://ww ...

  3. 【已解决】mongoose远程连接mongodb,当客户端断开网络重连时报错topology was destoryed...

    最近用koa写后端接口,放服务器用forever守护进程, 中间服务器断开网络重连之后, 接口一直报错topology was destoryed 查看了网上各种解决方式都没有解决我的问题. 尝试换个 ...

  4. node.js(node.js+mongoose小案例)_实现简单的注册登录退出

    一.前言 通过node.js基本知识对node.js基本知识的一个简单应用 1.注册 2.登录 3.退出 二.基本内容 1.项目结构搭建如图所示 2.这个小案列中用到了art-template子模板以 ...

  5. mongoose手动生成ObjectId

    如果需要手动生成使用mongoose.Types.ObjectId()方法. var mongoose = require('mongoose'); var id = mongoose.Types.O ...

  6. mongoose简单使用

    介绍&安装 官网:http://www.mongoosejs.net/ npm i -S mongoose 使用 1.连接mongodb&创建模型 var mongoose = req ...

  7. node mongoose_如何使用Express,Mongoose和Socket.io在Node.js中构建实时聊天应用程序

    node mongoose by Arun Mathew Kurian 通过阿伦·马修·库里安(Arun Mathew Kurian) 如何使用Express,Mongoose和Socket.io在N ...

  8. koa+mongoose基础入门

    1.mongoose基本使用 1.安装mongodb npm install mongodb 2.引入mongodb数据表,连接mongodb,通过node来对mongodb进行异步的增删改查 con ...

  9. mongoose 实用 API 总结

    2019独角兽企业重金招聘Python工程师标准>>> 一.介绍 1. 概述 mongoose 模块用于简化 node 与数据库 mongodb 之间的操作,目的是通过简便的 API ...

最新文章

  1. python二进制打开(rb)和文本格式打开(r)什么区别?
  2. UIActionSheet和UIProgressView的组合
  3. java date oracle_java对象属性为date oracle数据库字段为Timestamp 处理方式
  4. 最让人纠结的等式:0.999...=1
  5. python—python2内置函数与python3内置函数总结
  6. JavaWeb—如何判断用户使用的是什么浏览器
  7. Win11 鼠标右键后怎么设置让其显示更多可操作的选项
  8. PC-红警联机问题与下载
  9. 菜鸟教程android数据库,Flutter - Android 菜鸟教程打包
  10. (01背包扩展) 算法提高 金明的预算方案
  11. 关于网络性能的一些指标
  12. 六套苹果CMSv10首涂手机视频站模板高端主题代码精简优化SEO
  13. python中常用英语口语_常用英语口语100句(超实用)_
  14. 含文档+PPT+源码等]精品基于ssm的足球联赛管理系统的设计与实现vue[包运行成功]计算机Java毕业设计SSM项目源码
  15. 敏捷软件开发读书笔记——守破离
  16. 20221217英语学习
  17. Wow, Mangos登录时的SRP6认证
  18. 丰田生产方式的浪费观——《可以量化的管理学》
  19. 车牌识别系统不能连接服务器,车牌识别系统图像无法正常输出的原因与解决方法...
  20. 喜欢在计算机教室上课,计算机教室上课规则

热门文章

  1. 前端学习(2484):发表更新
  2. 前端学习(1750):前端调试值之call stack
  3. 前端学习(598):查看localstorage和sessionstorage
  4. 第一百二十四期:2019年臭名昭著的勒索软件,网络钓鱼和僵尸网络
  5. eclipse没有server怎么办
  6. java学习(151):字节输出流
  7. Linux open函数使用方法记录
  8. linux gst-launch 播放视频旋转,【视频开发】Gstreamer中一些gst-launch常用命令
  9. python利用缩进写模块_Python之缩进块
  10. 大地SEO教程学习笔记之八: