歪果人数码头像

Handler

来源:
       

  记得半年多前写过MySQLvsNoSQL,且一直以来我比较坚持用数据库存储K/V数据,因为不只是对数据安全等能提供保障,主要是发现大部分系统的qps根本就没那么高,能上4k的水平已经很少了,这点MySQL完全可以满足,因为优化好的K/V请求,在MySQL的SQL层上能实现

  记得半年多前写过MySQLvsNoSQL,且一直以来我比较坚持用数据库存储K/V数据,因为不只是对数据安全等能提供保障,主要是发现大部分系统的qps根本就没那么高,能上4k的水平已经很少了,这点MySQL完全可以满足,因为优化好的K/V请求,在MySQL的SQL层上能实现每核心5k左右的qps,而这一数据在HandlerSocket出来之后,得到了更大的提升。

  HandlerSocketpluginforMySQL已经出来一段时间了,鉴于HandlerSocket和InnoDB的健壮、安全性,可以预见HandlerSocket取代Memcached等NoSQL存储/Cache,已经是大势所趋。

  HandlerSocket是MySQL的一个插件,用于跳过MySQL的SQL层面,直接访问内部的InnoDB存储引擎,从而充分发挥InnoDB的性能优势;此外,InnoDB的ACID特性,可以保障数据的安全。

Handler-第1张图片

  初步对比了下,HandlerSocketPluginforMySQL性能跟Memcached差不多,原文中的测试数据显示更胜Memcached一筹,接下来准备跟ndbapi的性能进行对比测试,为系统构架提供参考。

  approxqpsserverCPUutilMySQLviaSQL105,000%us60%%sy28%memcached420,000%us8%%sy88%MySQLviaHandlerSocket750,000%us45%%sy53%

  HandlerSocket源码地址:https://github.com/ahiguti/HandlerSocket-Plugin-for-MySQL/

  HandlerSocket的客户端:

  HandlerSocketClientforPerl

  HandlerSocketClientforPython

  HandlerSocketClientforPHP

  HandlerSocketClientforJava

  –————————————-

  update:2011/04/08

  在DellR710双四核E5620下,mysql版本为5.1.54,未修改任何源码,采用php的handler-socket扩展,测试结果稳定在33万+QPS,其中mysqld占用cpu约为50%

  Relatedposts:NoSQL到MySQL+Memcache(d)重树MySQL王者地位MySQLvsNoSQL效率与成本之争InnoDBPlugin1.0.4forMySQL5.1.37InnoDBplugin1.0.7MemcachedandMySQL

  ?谭俊青发布在MySQL性能、MySQLCluster集群、MySQLHA高可用等研究-MySQL实验室,2010.

  可以任意转载,但转载时务必以超链接形式标明文章原始出处和作者信息。

  链接:http://www.mysqlab.net/blog/2010/11/handler-socket-plugin-for-mysql/

  标签:HandlerSocket,NoSQL