Rumah pangkalan data tutorial mysql mysql中使用UDF自动同步memcached效率笔记

mysql中使用UDF自动同步memcached效率笔记

Jun 07, 2016 pm 06:05 PM
memcached Penyegerakan automatik

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

接上篇: ,这次不使用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内容:
使用:
效率测试:
插入:
代码如下:
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 $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 //$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快多了
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn

Alat AI Hot

Undresser.AI Undress

Undresser.AI Undress

Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover

AI Clothes Remover

Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool

Undress AI Tool

Gambar buka pakaian secara percuma

Clothoff.io

Clothoff.io

Penyingkiran pakaian AI

AI Hentai Generator

AI Hentai Generator

Menjana ai hentai secara percuma.

Artikel Panas

R.E.P.O. Kristal tenaga dijelaskan dan apa yang mereka lakukan (kristal kuning)
3 minggu yang lalu By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Tetapan grafik terbaik
3 minggu yang lalu By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Cara Memperbaiki Audio Jika anda tidak dapat mendengar sesiapa
3 minggu yang lalu By 尊渡假赌尊渡假赌尊渡假赌
WWE 2K25: Cara Membuka Segala -galanya Di Myrise
4 minggu yang lalu By 尊渡假赌尊渡假赌尊渡假赌

Alat panas

Notepad++7.3.1

Notepad++7.3.1

Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina

SublimeText3 versi Cina

Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1

Hantar Studio 13.0.1

Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6

Dreamweaver CS6

Alat pembangunan web visual

SublimeText3 versi Mac

SublimeText3 versi Mac

Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Teknologi caching Memcached mengoptimumkan pemprosesan Sesi dalam PHP Teknologi caching Memcached mengoptimumkan pemprosesan Sesi dalam PHP May 16, 2023 am 08:41 AM

Memcached ialah teknologi caching yang biasa digunakan yang boleh meningkatkan prestasi aplikasi web dengan banyak. Dalam PHP, kaedah pemprosesan Sesi yang biasa digunakan adalah untuk menyimpan fail Sesi pada cakera keras pelayan. Walau bagaimanapun, kaedah ini tidak optimum kerana cakera keras pelayan akan menjadi salah satu kesesakan prestasi. Penggunaan teknologi caching Memcached boleh mengoptimumkan pemprosesan Sesi dalam PHP dan meningkatkan prestasi aplikasi Web. Sesi dalam PHP

Caching perpustakaan dalam PHP8.0: Memcached Caching perpustakaan dalam PHP8.0: Memcached May 14, 2023 am 08:16 AM

Caching library dalam PHP8.0: Memcached Dengan perkembangan pesat Internet, aplikasi moden memerlukan teknologi caching yang cekap dan boleh dipercayai untuk meningkatkan prestasi dan mengendalikan sejumlah besar data. Disebabkan populariti PHP dan sifat sumber terbuka, perpustakaan caching PHP telah menjadi alat penting dalam komuniti pembangunan web. Memcached ialah sistem caching memori berkelajuan tinggi sumber terbuka yang digunakan secara meluas yang boleh mengendalikan berjuta-juta permintaan cache bersambung serentak dan boleh digunakan dalam pelbagai jenis aplikasi, seperti rangkaian sosial, dalam talian

Bagaimana untuk mengoptimumkan penggunaan CPU aplikasi PHP menggunakan teknologi caching Memcached? Bagaimana untuk mengoptimumkan penggunaan CPU aplikasi PHP menggunakan teknologi caching Memcached? Jun 21, 2023 pm 05:07 PM

Dengan perkembangan Internet, aplikasi PHP telah menjadi lebih biasa dalam bidang aplikasi Internet. Walau bagaimanapun, capaian serentak yang tinggi oleh aplikasi PHP boleh menyebabkan penggunaan CPU yang tinggi pada pelayan, sekali gus menjejaskan prestasi aplikasi. Untuk mengoptimumkan prestasi aplikasi PHP, teknologi caching Memcached telah menjadi pilihan yang baik. Artikel ini akan memperkenalkan cara menggunakan teknologi caching Memcached untuk mengoptimumkan penggunaan CPU aplikasi PHP. Pengenalan kepada teknologi caching Memcached Memcached ialah a

Sandaran dan pemulihan pangkalan data PHP dan Memcached Sandaran dan pemulihan pangkalan data PHP dan Memcached May 15, 2023 pm 09:12 PM

Dengan perkembangan pesat Internet, sandaran dan pemulihan pangkalan data MySQL berskala besar telah menjadi salah satu kemahiran penting untuk perusahaan dan laman web utama. Dengan aplikasi Memcached yang meluas, cara membuat sandaran dan memulihkan Memcached juga telah menjadi isu penting. Sebagai salah satu bahasa utama untuk pembangunan web, PHP mempunyai kelebihan dan kemahiran unik dalam mengendalikan sandaran dan pemulihan MySQL dan Memcached. Artikel ini akan memperkenalkan secara terperinci kaedah pelaksanaan pemproses PHP MySQL dan sandaran dan pemulihan Memcached.

Pengurusan cache dengan PHP dan Memcached Pengurusan cache dengan PHP dan Memcached May 23, 2023 pm 02:21 PM

Dengan pertambahan berterusan aplikasi rangkaian dan pengembangan berterusan volum data, kecekapan membaca dan menulis data telah menjadi salah satu faktor penting yang mempengaruhi prestasi aplikasi. Aplikasi teknologi caching dapat menyelesaikan masalah ini dengan baik. Dalam aplikasi PHP, Memcached ialah pelayan cache yang paling biasa digunakan. Memcached ialah sistem caching objek memori teragih berprestasi tinggi yang boleh menyimpan data yang biasa digunakan dalam ingatan dan meningkatkan kecekapan pengambilan data. Artikel ini akan memperkenalkan cara menggunakan PHP dan Memcached untuk pengurusan cache, dan cara mengoptimumkan

Gunakan teknologi caching Memcached untuk mengoptimumkan main balik audio dan video dalam PHP Gunakan teknologi caching Memcached untuk mengoptimumkan main balik audio dan video dalam PHP May 17, 2023 pm 04:01 PM

Dengan perkembangan berterusan teknologi Internet, sumber audio dan video telah menjadi satu bentuk kandungan yang sangat penting di Internet, dan PHP, sebagai salah satu bahasa yang paling banyak digunakan dalam pembangunan rangkaian, juga sentiasa digunakan dalam bidang video. dan main balik audio. Walau bagaimanapun, dengan peningkatan bilangan pengguna tapak web audio dan video, banyak tapak web telah menemui masalah: dalam keadaan serentak yang tinggi, kelajuan pemprosesan audio dan video PHP menjadi perlahan dengan ketara, mengakibatkan masalah seperti ketidakupayaan untuk bermain dalam masa atau main balik tersekat. . Untuk menyelesaikan masalah ini, teknologi caching Memcached harus

Pemantauan prestasi PHP dan Memcached Pemantauan prestasi PHP dan Memcached May 15, 2023 pm 09:51 PM

Dengan perkembangan pesat aplikasi Internet moden, pengalaman pengguna adalah penting untuk kejayaan aplikasi. Bagaimana untuk memastikan prestasi tinggi dan ketersediaan tinggi aplikasi telah menjadi salah satu isu penting yang perlu diselesaikan oleh pembangun. Sebagai salah satu bahasa pengaturcaraan yang digunakan secara meluas, pemantauan dan pengoptimuman prestasi PHP juga sangat penting. Memcached ialah sistem caching objek memori teragih berprestasi tinggi yang boleh membantu aplikasi meningkatkan prestasi dan kebolehskalaan. Artikel ini akan memperkenalkan cara menggunakan PHP dan Memcached untuk melaksanakan pemantauan prestasi.

Bagaimana untuk menggunakan Memcached dengan CakePHP? Bagaimana untuk menggunakan Memcached dengan CakePHP? Jun 04, 2023 am 08:14 AM

Dengan pertumbuhan pesat aplikasi moden, caching telah menjadi bahagian penting bagi banyak pembangun. Caching boleh meningkatkan prestasi aplikasi dan mengurangkan beban pelayan. Dalam CakePHP, satu cara untuk melaksanakan caching adalah dengan menggunakan Memcached. Memcached ialah sistem caching teragih berasaskan memori. Ia menyimpan data dalam ingatan dan boleh membaca dan menulis data dengan cepat. Dalam persekitaran berbilang pelayan, Memcached boleh menyimpan data dalam cara yang diedarkan dan berkongsinya melalui rangkaian. Bukan sahaja boleh

See all articles