MongoDB的不足之处仍有很多,而其中让我最感到痛心的就是MongoDB的全局锁!
怎么样的全局锁呢?相对于MySQL数据库来做个对比!MySQL数据库其中的MyIsam存储引擎使用的表锁,写会锁定整个表;而锁粒度相对较小的是Innodb,采用的是行锁!这样对比起来,MyISAM优势下降很多!而MongoDB的全局锁,粒度及其大,大得不敢让人相信,它不是MyISAM的表锁,甚至还超越了库锁,它竟然是整个服务上的锁。
也就是说,MongoDB一个写操作会锁定整个server级别的其他读写操作!我自己做个一个测试,在一个大约有3000w行的collection中添加一个索引,坑爹的事情发生了!这个添加索引的操作,锁定这整个服务,我在另外一个连接上,show dbs这个命令都被阻塞着,直到添加索引的操作完成!
但是MongoDB可以高并发读!
据说MongoDB已经在研发基于collection的锁粒度,也就是关系型数据库中的表锁粒度!
[来源:http://qdjalone.blog.51cto.com/1222376/856749]
备注:
MongoDB从2.2.0开始已经有粒度为DB的锁了,虽然还不是collection锁,不过相对于锁服务,好歹已经下降了一个级别。
分类目录
- arch/management (17)
- computer (38)
- java/j2ee (304)
- lnmpa (237)
- mac/iphone/ipad/android (11)
- mysql/oracle/postgresql (126)
- os/software (74)
- other (518)
- python (6)
- redis/memcached/mongo (31)
- sitebuild (143)
随便看看
标签云
程序员 创业 人生箴言 eclipse 快捷键 术语 索引 unix命令 vim wordpress java学习笔记 环境变量 oracle内置函数 index 人生 数据类型 nohup tuxedo mysql学习笔记 MS-DOS命令 servlet spring 职场进阶 职业进阶 服务器选购 服务器选型 apache JPA MongoDB 注解 tomcat 子女教育 jquery maven JVM aix命令 网络营销 java异常 seo 人生规划 关键字 css 网络推广 struts 系统优化 成长 frame iframe bluehost jdbc select 我的信仰 oracle函数 cookie HashMap 站长工具 乱码 ArrayList secureCRT jsp session tail find halt 事务 oracle单记录函数 算法 URL window table javascript操作表单元素 String 字符串处理 健康 http 域名 情感 more google A记录 域名解析 netstat 弹出对话框 弹出窗口 框架集 框架 excel 字符串 javascript函数 showModalDialog nginx number 数组 sql frameset 开源程序 java数组 软件 oracle服务友情链接
收藏链接