个人简介

Echo Blog


江湖无名 安心练剑
  • Redis-03-redis 整合 spring 常见写法 jedispool 实现方式
    背景 有时候我们需要使用 spring 整合 redis。 那应该怎么实现呢? 最简单的 jedis maven <dependency> <groupId>redis.clients</groupId> <artifactId>jedis</artifactId> <version>3...
    2018-12-12 02:11:55 | Cache
  • Mongo Java Driver-01-authMechanism 认证方式
    业务背景 需要兼容云上云下的代码。 在云下,用的时 v3.4.6 比较老的版本,为了上云方便,云上申请的也是 v3.4 版本。 阿里云没有小版本,经验证 db.version() 也是 v3.4.6 以为一切都没有问题之后,结果遇到一个坑: 云下的验证方式,默认是 MONGODB-CR 方式,但是云上是 SCRAM-SHA-1 方式。 为什么不通 因为 MONGODB-CR ...
    2018-12-11 03:35:23 | Database
  • Mongo Java Driver-00-java 访问 mongo
    官方资料 mongo-java-driver 建议学习方式: 烂笔头是个好东西 现在学的无论多么好,3年后估计也会忘掉。 整理下来,理论成为博客,实战成为代码。 java-driver 基础的入门整合。 至于细节,则不用展开。 理论上 API 和实际是一一对应的。 spring 整合 spring-data 整合 项目实战 mongodb 与 log4j2 拓展阅...
    2018-12-11 03:35:23 | Database
  • Mongo 54-mongo data migrate 数据迁移
    背景 有时候希望将一个库的数据迁移到另一个库中。 代码实现当然也是可以的,不过感觉有些麻烦。 mongodb 本身应该就自带的特性支持。 相同实例 use db_source; var docs = db_source.collection_souce.find(); use db_target; docs.forEach({db.collection_target.insert(...
    2018-12-10 03:35:23 | Database
  • Mongo 53-mongo indexes 索引如何备份
    查看所有索引信息 MongoDB索引的元信息(描述信息)存储在local数据库的集合system.indexes中,这是系统提供的保留集合(创建数据库时),我们不能对其进行插入或删除操作,但我们可以从中查看索引定义的相关信息。 system.indexes 集合中包含了每个索引的详细信息,可以通过下面的命令查询已经存在的索引,例如: db.system.indexes.find() ...
    2018-12-10 03:35:23 | Database
  • Mongo 52-读写分离
    业务背景 访问 mongodb 有时候会出现不稳定的情况。 以前使用 v3.4.6 主从复制存在 BUG,所以一直没有使用读写分离。 现在升级到 v4.0,决定使用读写分离并且使用相对稳定的机器环境。 双管齐下,保证系统的稳定性。 mongo的集群方式有三种: Replica Set(副本集) 其实简单来说就是集群当中包含了多份数据,保证主节点挂掉了,备节点能继续提供数据服务,...
    2018-12-10 03:35:23 | Database
  • Mongo 51-mongo expire mongo 过期索引 TTL Index
    如何优雅删除 ttl index 作用 有些类似于 redis 的 expire,设置之后,mongo 会有一个异步进程去定时清理数据信息。 应用场景 现在的 mongo 中存放每天的数据信息,前一天的数据信息会进行清空。 原来是采用定时任务清空的方式。 定时任务虽然可以指定时间,但是对于 mongo 的瞬时压力还是很大的。 解决方式 使用 ttl index TTL In...
    2018-12-10 03:35:23 | Database
  • Mongo 分片平衡器-50-优化实战
    初始化 创建 collection 可以跳过,插入数据会默认创建。 初始化数据 for(i=1;i<=10000;i++){db.test.insert({"id":i,"name":"test", "amount": i+10000})} for(i=1;i<=10000;i++){db.test.insert({"id":i,"name":"test2", "am...
    2018-12-10 03:35:23 | Database