Couchbase V(管理任务)

多读写

在Couchbase2.1中支持硬盘多读些(Multi- Readers and Writers),一般双核4G服务默认3个thread

4核16G内存一个设置为 8个线程

Server Warmup

在Couchbase重启后,需要经历热身阶段才能进入运行状态:

  1. 初始化,这阶段服务没有任何数据,将从vBucket中加载初始化各个vBucket的状态和数据。

  2. Key Dump. 这阶段,主要加载key和metadata。

  3. 检查访问日志, 预读单个访问缓存日志(记录了key的频率),如果日志存在,就会先根据日志加载key,然后再从硬盘加载数据

  4. 加载key,后就会加载相关文档

在达到下面状态时,服务进入运行状态:

  1. 完成加载所有访问日志key的文档 ,或

  2. 加载完所有的vBuckets的文档, 或

  3. 内存所有的文档大于等于 ep_warmup_min_items_threshold, 或

  4. RAM的百分比临近 ep_warmup_min_memory_threshold, 或

  5. RAM的使用临近 mem_low_wat

如果服务在warmup状态, 客户端连接回报 ENGINE_TMPFAIL code 错误。

获取 Warmup 信息

使用cbstats获取warmup 信息,但一次只能获取一个节点一个bucket的信息:

shell> cbstats localhost:11210 -b beer_sample -p bucket_password all | grep 'warmup'
shell> cbstats hostname:11210 -b my_bucket -p bucket_password raw warmup
ep_warmup_thread
Indicates if the warmup has completed. Returns "running" or "complete".
ep_warmup_state

Indicates the current progress of the warmup:

  • Initial

    Start warmup processes.
  • EstimateDatabaseItemCount

    Estimating database item count.
  • KeyDump

    Begin loading keys and metadata based, but not documents, into RAM.
  • CheckForAccessLog

    Determine if an access log is available. This log indicates which keys have been frequently read or written.
  • LoadingAccessLog

    Load information from access log.
  • LoadingData

    This indicates the server is loading data first for keys listed in the access log, or if no log available, based on keys found during the 'Key Dump' phase.
  • Done

    Server is ready to handle read and write requests.

修改 Warmup 的阈值

通过 cbepctl 设定 ep_warmup_min_items_threshold 可以改变warmup的行。

改变访问扫描的频率

服务默认每天2:00 AM UTC运行一次扫面访问日志,而决定key的使用频率:

# 每二十分钟扫描一次
shell> ./cbepctl localhost:11210 -b beer-sample set flush_param alog_sleep_time 20

复制与副本

每个集群的node 都有两种数据 replica data and active data,replica data是其他节点的副本数据, active data是客户端写的数据。

Couchbase使用 p2p策略进行写副本, 并且只能调节写的速度。

副本策略

通常设置3个副本,是非常有用的

Couchbase V(管理任务)的更多相关文章

  1. Couchbase IV(管理与维护)

    Couchbase IV(管理与维护) 管理 常用命令 Command Description server-list List all servers in a cluster server-inf ...

  2. 由Memcached升级到 Couchbase的 Java 客户端的过程记录(一)

    背景: 在项目启动的选用了Memcached 作为缓存服务器,采用了Xmemcached作为客户端.在项目中使用了Shiro,为了给 Shiro 配置缓存的时候,采用了开源代码   https://g ...

  3. Couchbase集群和Redis集群解析

    Couchbase集群和Redis集群解析 首先,关于一些数据库或者是缓存的集群有两种结构,一种是Cluster;一种是master-salve. 关于缓存系统一般使用的就是Redis,Redis是开 ...

  4. JMM内存管理

    原文地址http://www.cnblogs.com/BangQ/p/4045954.html 原本准备把内存模型单独放到某一篇文章的某个章节里面讲解,后来查阅了国外很多文档才发现其实JVM内存模型的 ...

  5. CouchBase数据库-一个较新的、发展迅速的nosql数据库技术

    couchbase是一个较新的.发展迅速的nosql数据库技术.2014年,viber宣布使用couchbase替换mongodb,以适应10亿级的用户量,目前,couchbase已大量运用于生产环境 ...

  6. Couchbase集群

    Couchbase集群 http://www.cnblogs.com/sunwubin/p/3426801.html Couchbase服务器可以单独运行,也可以作为集群运行.在Couchbase集群 ...

  7. Hyper V NAT 网络设置 固定IP / DHCP

    Hyper V 默认的Default Switch同时支持了NAT网络以及DHCP,虚拟机能够访问外网. 但使用过程中发现这个IP网段经常变化,而且Hyper V没有提供管理其NAT网络与DHCP的图 ...

  8. git 学习笔记7--branch

    分支是git的必杀技. 站点另一个角度,分支是的快照移动有向图,刚好是拓扑排序的一种例子. basic git branch testing #创建分支 git checkout testing #切 ...

  9. java内存模型及分块

    转自:http://www.cnblogs.com/BangQ/p/4045954.html 1.JMM简介 2.堆和栈 3.本机内存 4.防止内存泄漏   1.JMM简介   i.内存模型概述 Ja ...

随机推荐

  1. ES6中的Rest参数和默认参数

    ES6中的Rest参数和默认参数 Rest参数 一个例子 编写一个函数, 用来判断, 某个字符串中, 是否其他的字符串, 如果第一参数以后的字符串, 都包含在第一参数中, 都包含在, 就返回true ...

  2. popoverController使用注意--转

    一.设置尺寸 提示:不建议,像下面这样吧popover的宽度和高度写死. 1 //1.新建一个内容控制器 2 YYMenuViewController *menuVc=[[YYMenuViewCont ...

  3. DNS正、反向解析+负载均衡+智能DNS+密钥认证

    主机名 IP 软件包 系统版本 内核版本 实验环境 master 192.168.30.130 bind.x86_64 32:9.8.2-0.17.rc1.el6_4.6 bind-chroot.x8 ...

  4. Windows API函数大全二

    4. API之打印函数 AbortDoc 取消一份文档的打印 AbortPrinter 删除与一台打印机关联在一起的缓冲文件 AddForm 为打印机的表单列表添加一个新表单 AddJob 用于获取一 ...

  5. OpenGL 透视投影推导图解

    有它足够了,转载自:http://blog.sina.com.cn/s/blog_73428e9a0102v920.html

  6. Haproxy+Rabbitmq中的问题

    问题一.Rabbitmq集群搭建完成 某个集群节宕机后 无法添加失败 解决办法:停掉所有Rabbitmq服务 并删除集群文件C\Users\Administrator\AppData\Roaming\ ...

  7. Git使用简析

    推送本地操作 初始化一个本地Git仓库,在需要添加版本控制的文件夹根目录中使用git init命令. 添加文件到本地Git仓库: git add 文件名 # 添加文件到暂存区 git add . # ...

  8. whereis参数

    -b  只找二进制文件 -m 只找在帮助文件manual路径下的文件 -s 只找原文件 -u 没有帮助文件的文件 whereis passwd

  9. Hibernate中的inverse和cascade属性

    Hibernate中的inverse和cascade属性 inverse的值有两种,"true"和"false".inverse="false&quo ...

  10. 安装scount的es驱动,composer require tamayo/laravel-scout-elastic报错解决

    执行 composer require tamayo/laravel-scout-elastic 报错信息如下: Problem 1 - Installation request for tamayo ...