接上篇:mysql使用mysql-udf-http效率测试笔记 ,这次不使用rest架构,而是使用:libmemcached和memcached_functions_mysql

接上篇:mysql使用mysql-udf-http效率测试笔记 ,这次不使用rest架构,而是使用:libmemcached和memcached_functions_mysql,测试版本是:

libmemcached-0.34.tar.gz和memcached_functions_mysql-0.9.tar.gz,其它版本配对都有问题,我安装测试过有问题的版本有:

memcached_functions_mysql-1.1在:

libmemcached-0.49\libmemcached-0.48\libmemcached-0.47\libmemcached-0.30\libmemcached-0.43\\libmemcached-0.42\

下安装有错误

memcached_functions_mysql-0.10在:

libmemcached-0.42\下安装有错误

memcached_functions_mysql-0.8在:

libmemcached-0.49\libmemcached-0.48\libmemcached-0.47\libmemcached-0.44\libmemcached-0.43\

\libmemcached-0.42\下安装有错误

MySQL测试版本:5.1.55,操作系统Centos5.4 64bit,内存2G

安装libmemcached-0.34和memcached_functions_mysql-0.9,

[root@sunss24 libmemcached-0.34]#./configure \

--with-memcached=/home/memcache/bin/memcached

[root@sunss24 libmemcached-0. 34]# make

[root@sunss24 libmemcached-0. 34]# make install

再运行一下memstat,算成功了

[root@sunss24 ~]# ln -s /usr/local/lib/libmemcached.so.3 /usr/lib/

[root@sunss24 ~]# cd memcached_functions_mysql-0.9

[root@sunss24 memcached_functions_mysql-0.9]# ./configure \

--with-mysql=/usr/local/mysql/bin/mysql_config \

--libdir=/usr/local/mysql/lib/

[root@sunss memcached_functions_mysql-0.9]# make && make install

安装完成后将UDFs加载到MySQL中:

mysql> show variables like "%plugin%";

+---------------+-----------------------------------+

| Variable_name | Value |

+---------------+-----------------------------------+

| plugin_dir | /usr/local/mysql/lib/mysql/plugin |

+---------------+-----------------------------------+

1 row in set (0.00 sec)

[root@sunss ~]# find / -name "libmemcached_functions_mysql.so"

/usr/local/mysql/lib/libmemcached_functions_mysql.so

/root/memcached_functions_mysql-0.9/src/.libs/libmemcached_functions_mysql.so

You have new mail in /var/spool/mail/root

[root@sunss ~]# cp /usr/local/mysql/lib/libmemcached_functions_mysql.so /usr/local/mysql/lib/mysql/plugin/

[root@sunss ~]# cd memcached_functions_mysql-0.9/

[root@sunss ~]#cd sql/

mysql> source install_functions.sql;

查看各种版本:

mysql> select memc_udf_version();

+--------------------+

| memc_udf_version() |

+--------------------+

| 0.9 |

+--------------------+

1 row in set (0.00 sec)

mysql> select memc_libmemcached_version();

+-----------------------------+

| memc_libmemcached_version() |

+-----------------------------+

| 0.34 |

+-----------------------------+

1 row in set (0.00 sec)

mysql>

遇到问题:

No package 'libmemcached' found

Consider adjusting the PKG_CONFIG_PATH environment variable if you

installed software in a non-standard prefix.

Alternatively, you may set the environment variables DEPS_CFLAGS

and DEPS_LIBS to avoid the need to call pkg-config.

See the pkg-config man page for more details.

解决办法:

[root@sunss24 memcached_functions_mysql-0.9]# whereis pkgconfig

[root@sunss24 memcached_functions_mysql-0.9]# export \

PKG_CONFIG_PATH=/usr/local/lib/pkgconfig:/usr/lib/pkgconfig

导出所有memcache内容:

使用:memcached-hack.zip

效率测试:

插入:

include_once("gettime.php");

$btime = getmicrotime();

$i = 0;

$mem = new Memcache();

$mem->addServer('192.168.0.10', 11212);

$local_db = mysql_connect("192.168.0.208", "sunss", "123456");

if(!$local_db)

{

die('Could not connect: '.mysql_error());

}

$local_db_sel = mysql_select_db("test", $local_db);

mysql_query("set names utf8", $local_db);

while ( $i < 1000) {

$re_sql = "insert into urls (id,url) values ($i, 'www.gongchang.com')";

$res = mysql_query($re_sql, $local_db);

$i++;

}

mysql_close($local_db);

$etime = getmicrotime();

$runTime = round($etime - $btime, 4);

echo "runTime: ".$runTime."\r\n";

?>

1000条,插入时间:runTime: 1.4072

删除:

include_once("gettime.php");

$btime = getmicrotime();

$i = 0;

$mem = new Memcache();

$mem->addServer('192.168.0.10', 11212);

$local_db = mysql_connect("192.168.0.208", "sunss", "123456");

if(!$local_db)

{

die('Could not connect: '.mysql_error());

}

$local_db_sel = mysql_select_db("test", $local_db);

mysql_query("set names utf8", $local_db);

while ( $i < 1000) {

//$re_sql = "insert into urls (id,url) values ($i, 'www.gongchang.com')";

$re_sql = "delete from urls where id=".$i;

//echo "re_sql_1: ".$re_sql."\n";

$res = mysql_query($re_sql, $local_db);

$i++;

}

mysql_close($local_db);

$etime = getmicrotime();

$runTime = round($etime - $btime, 4);

echo "runTime: ".$runTime."\r\n";

?>

删除1000条,运行时间:runTime: 1.5534

更新未作

结论:每秒query大概650条记录,比上次的mysql-udf-http快多了

相关文章

memcached mysql 同步,mysql中使用UDF自动同步memcached效率笔记相关推荐

  1. Windows 局域网中文件进行自动同步备份通过synctoy和计划任务实现

    SyncToy安装使用详解 SyncToy-- 微软同步工具:它可以让您的文件在不同的磁盘和文件夹中保持同步并且可以随意处理,甚至可以输入UNC以处理网络驱动器上的文件和任何设备上的信息 SyncTo ...

  2. mysql ubb html_UBB中轻松实现歌词同步播放_html

    Windows Media Player 格式: 1.[wmp=http://homepage.yesky.com/a.wmv]歌词内容[/wmp] 2.[wmp=http://homepage.ye ...

  3. Linux同步文件夹rsync无密码自动同步

    定义:   Server代表需要将文件夹同步到其它电脑的 主动发送方 Client 代表被动接收进行同步的电脑 1.在需要同步的两台linux电脑分别安装rsync包---安装文件见rsync. 通过 ...

  4. mysql 5.7 同步复制_在mysql 5.7 中如何开启半同步复制

    1.安装相关的插件show plugins; 查看模块 help --uninstall; 查看卸载模块master: mysql> install plugin rpl_semi_sync_m ...

  5. java中什么是同步_Java中,“synchronized”(同步)是什么意思?什么时候应该用synchronized? - Break易站...

    synchronized关键字的意义是什么? 什么时候应该是方法synchronized? 这是什么编程和逻辑? Java中,"synchronized"(同步)是什么意思?什么时 ...

  6. 7 centos 时钟跟物理机同步_centos7上使用chrony自动同步时间

    在linux中,有些服务必须依靠准确的时间,才能够在运行的时候不出差错,例如DNS,LVS,HTTPS等,都需要后台的服务器之间保持时间的同步.而Centos系统中自带的有安装对应的同步时间的服务.c ...

  7. 大数据_Flink_Java版_数据处理_流处理API_Flink中的UDF函数类---Flink工作笔记0036

    然后我们再来看一个叫UDF函数的东西,利用这个可以看到可以实现 更细粒度的流的控制.这个UDF函数,包含什么呢? 首先我们看flink暴露了所有udf函数的接口,这里有MapFunction,Filt ...

  8. redis结合mysql、自动同步

    目录 1.redis结合mysql 2.实验前准备 3.实验:redis与mysql结合 4.自动同步 5.实验前准备 6.实验 1.redis结合mysql 由于目前互联网巨大的访问量,在生产环境中 ...

  9. mysql 单向自动同步_mysql单向自动同步

    mysql自动同步 以下教程均使用mysql自带的自动同步功能 全库单向自动同步 本例把192.168.3.45上名称为ewater_main的数据库自动同步到192.168.3.68的ewater_ ...

  10. mysql 读写分离缺点6_6\MySQL 主从同步 , MySQL 读写分离 , MySQL 性能调优

    6\MySQL 主从同步 , MySQL 读写分离 , MySQL 性能调优 day06 一,mysql 主从同步 二,数据读写分离 三,MySQL 优化 ++++++++++++++++++++++ ...

最新文章

  1. linux vim编辑文本是 m,linux基础命令介绍四:文本编辑 vim
  2. 【GitHub】GitHub 的 Pull Request 和 GitLab 的 Merge Request 有区别吗?
  3. 仅模糊背景图像而不是前面的文本
  4. python中的get函数_python之函数用法get()
  5. (3)verilog语言编写二分频
  6. 如何将本地项目提交到git服务器中
  7. 【BUAAOO】第四次博客作业
  8. 编写适合于自己的代码生成器 (zhuan)
  9. 橘子游戏平台_腾讯游戏主播认证名单公布,唯独张大仙缺席
  10. 微信小程序登陆界面(效果图+源代码)
  11. Mint UI - 饿了么出品的开源、轻量的移动端 UI 组件库
  12. BackdoorBench
  13. 新倩女幽魂服务器维护,《倩女幽魂Online》更新公告(版本1.0.23)
  14. 字符串的常见方法总结
  15. iOS6.1/iOS6.0.1完美越狱迟迟不现身 pod2g发推文澄清
  16. Kotlin 初体验
  17. ios 图表_在ios应用中实现蜘蛛网图表
  18. 在未来时空中沉浸探索,体验引领时代的建筑节能展馆
  19. 渗透测试 | IP信息收集
  20. 【赛码网 牛客网】输入输出总结(python版)

热门文章

  1. 编译原理中:短语,直接短语,句柄
  2. 深度学习笔记(二)——VGG
  3. fastText、TextCNN、TextRNN……这里有一套NLP文本分类深度学习方法库供你选择
  4. pat乙级 1091 N-自守数 (15 分)
  5. CGI + FastCGI(PHP-FPM)联系与区别 【图解 + 注释】
  6. Expected authority at index 7: hdfs://
  7. Windows Server 2008下IIS 7配置ASP+ACCESS环境
  8. 2011-8-13 随笔一二
  9. 【工具推荐】光影魔术手
  10. 【keras】数据增强之---ImageDataGenerator