问题版本 mongodb-v3.4.4 问题描述 mongos两天死了两次,死前遗言只有日志: 2017-11-01T11:25:27.135+0800 F - [NetworkInterfaceASIO-TaskExecutorPool-1-0] Failed to mlock: Cannot allocate memory 2017-11-01T11:25:27.140+0800 I - [NetworkInterfaceASIO-TaskExecutorPool-1-0] Fatal As…
继上一篇设置mongodb副本集之后,开始使用nodejs访问mongodb副本集: 1:创建项目     express 项目名称 2:npm install mongoose    安装mongoose包 3:mongoose连接数据库配置 var mongoose = require('mongoose'); mongoose.Promise = Promise; // Promise.promisifyAll(mongoose); var uri = 'mongodb://172.16.…
我们知道mongodb现在生产环境大部分还是使用的复制集来作为主流,据我了解.很多公司现在都是使用复制集的方式,而我们通过mongos可以巧妙的解决链接的问题,我们先从环境说起: 首先我们要模仿搭建的环境是: server1:mongod primary+mongod config+mongos server2:mongod primary+mongod config+mongos server3:mongod primary+mongod config+mongos 其实就是一个分片复制集,只…
本文背景: 在编程中,很多Windows或C++的内存函数不知道有什么区别,更别谈有效使用:根本的原因是,没有清楚的理解操作系统的内存管理机制,本文企图通过简单的总结描述,结合实例来阐明这个机制. 本文目的: 对Windows内存管理机制了解清楚,有效的利用C++内存函数管理和使用内存. 本文内容: 本文一共有六节,由于篇幅较多,故按节发表.其他章节请看本人博客的Windows内存管理及C++内存分配实例(一)(二)(三)(五)和(六). 4.      内存管理机制--内存映射文件 (Map)…
mongodb导出导入实例记录 平时很用mongodb,所以用到了,就需要去网上搜索方法,干脆将自己的实际经历记录下来,方便日后使用. # 大致需求 源库:db_name_mongo 源IP:192.168.100.101 源collection: users_info 用户名:user_name 密码:pass_word 目标库:test_db 目标IP:172.16.0.100 目标collection: users_info 按照条件过滤,导出格式为jason. # 导出 [mysql@d…
首先是概念层面的几个问题: Java中运行时内存结构有哪几种? Java中为什么要设计堆栈分离? Java多线程中是如何实现数据共享的? Java反射的基础是什么? 然后是运用层面: 引用类型变量和对象的区别? 什么情况下用局部变量,什么情况下用成员变量? 数组如何初始化?声明一个数组的过程中,如何分配内存? 声明基本类型数组和声明引用类型的数组,初始化时,内存分配机制有什么区? 在什么情况下,我们的方法设计为静态化,为什么?(上次胡老师问文奇,问的哑口无言,当时想回答,却老感觉表述不清楚,这里…
1.当一个类被第一次使用时,它需要被类加载器加载,而加载过程涉及以下两点: (1)在加载一个类时,如果它的父类还未被加载,那么其父类必须先被加载: (2)当类加载到内存之后,按照在代码中的出现顺序执行它的静态变量和静态块(如果有的话). 2.调用一个类的构造函数时,调用过程涉及以下三点: (1)调用父类的构造函数: (2)按照在代码中出现顺序初始化实例数据域和实行实例块: (3)执行其构造函数体. 总结: JAVA类首次装入时(包括类点静态方法和点静态变量或者new一个对象点实例方法和点实例变量…
1.linux内核管理内存空间的分配,所有程序对内存空间的申请和其他操作,最终都会交给内核来管理. 2.linux实现的是“虚拟内存系统”,对用户而言,所有内存都是虚拟的,也就是说程序并不是直接运行在物理内存上,而是运行在虚拟内存上,然后由虚拟内存转换到物理内存. 3.linux将所有的内存都以页为单位进行划分,通常每一页是4KB: 4.在对虚拟内存地址到物理内存地址进行转换时,内核会对地址的正确性进行检查,如果地址是合法的,内核就会提供对应的物理内存分页:如果是申请内存空间,内核就会检查空余的…
以前在开发电子秤接口动态库时,曾尝试在用于获取重量的函数外面定义一个字符串指针,然后作为参数传入函数内部,然后在函数内部new,用来输出函数执行过程中发生的错误.但是总是出错,没有找到原因,后来无意中看到了下面的一段说明,忘记摘录出处了,感谢作者. 如下: 不能返回函数内部 new分配的内存的引用(这个要注意啦,很多人没意识到,哈哈... ).  这条可以参照Effective C++[1]的 Item 31.虽然不存在局部变量的被动销毁问题,可对于这种情况(返回函数内部 new分配内存的引用)…
 1.内存的划分  (从高到低依次是: 栈区 . 堆区 .全局静态区 . 常量区 . 代码区 )栈区是系统自动回收,堆区是我们手动回收  2. 栈区   在函数内部定义的局部变量和数组.都存放在栈区,栈区的内存空间是由系统管理,函数调用的时候开辟空间,函数调用结束,空间就被回收  3.堆区   由我们手动来(管理)开辟,手动回收  4.全局静态区   存放全局变量和静态变量.空间是由系统管理.(函数外部定义的变量,在定义的时候,这个空间就已经被开辟了)程序开始执行时开辟空间,程序结束执行时回收空…