0
点赞
收藏
分享

微信扫一扫

性能笔记2

小云晓云 2023-04-25 阅读 24


memcached>redis >Tokyo Tyrant>>>MongoDB>mysql


1,以上测试并不完善,只是一个开始,比如没有测试小数据(以数字作为key,100字节Value),没有测试较大的数据(20K左右);没有测试在命中情况下的性能;没有测试并发读写的性能,据闻MongoDB的并发读写效率不是特别出色,MongoDB的特色在于支持的查询语言非常强大

2,TC/TT在mixi的实际应用当中,存储了2000万条以上的数据,同时支撑了上万个并发连接,是一个久经考验的项目。TC在保证了极高的并发读写性能的同时,具有可靠的数据持久化机制


3,MongoDB实际上是一个简化版的MySQL,Mongodb的接口实际上就是类似给SQL做个封装而已。Mongodb只能支持简单的单一查询 语句,不能join,不能子查询。实际性能MySQL和Mongodb差不多,MySQL在高并发的情况下性能不太好,MongoDB会好很多。


Redis读写性能都非常强悍,但是存储数据的容量受限于内存容量。支持Lists类型和Sets类型的数据,2.0增加了更多数据类型。相当于是一个支持持久存储的memcache。


tokyotyrant也是是一个高性能的存储引擎,性能非常出色,每秒可以处理4-5万次读写操作。TT不是内存映射的模式,主要是文件系统存储为主。吃内存少一些。TC除了支持Key-Value存储之外,还支持保存Hashtable数据类型,表结构TokyoTyrantTable,支持列,表,字段,索引,支持query查询。


memcached:设定最大内存占用,最久不使用自动过期,高读写性能,适合最缓存。


redis:拥有memcached的优点,储存数据支持list,适合做队列。是否可以替代memcached我还在考虑。


mongodb:模式自由,容易搭建分布式群集,适合做储存。


mongodb 写入: 1秒900,分配DB空间的时候插入操作被冻结 1秒300


        读取:1秒500-600



redis 写入:1秒1000


      读取:1秒500-600



Tokyo Tyrant 写入: 1秒800


             读取: 1秒300-400


3,


a1.业务系统的关联关系用mysql组织


a2.缓存数据用memcached、redis存取


a3.大文本数据放进mongodb存取中


a4.数据统计计数增加阀值功能


用mysql将memcached、redis、mongodb三者结合起来,


根据实际业务需要看一下哪些适合memcached、redis缓存存取,哪些适合mongodb存取.


核心架构:


1)、应用系统框架架构


2)、数据库系统业务架构



是影响项目成功失败的关键


举报

相关推荐

0 条评论