MySQLÓëC/C++½Ó¿ÚÓ¦ÓÃѧϰ
---- ÔÚÊý¾Ý¿âµÄÓ¦Óÿª·¢ÖУ¬³£³£»áÓöµ½ÐÔÄܺʹú¼ÛµÄÖ®¼äì¶Ü¡£ÒÔ×÷ÕßÔÚ¿ª·¢¹ÉÊÐÐÐ
Çé²éѯºÍ½»Ò×ϵͳÖÐÓöµ½µÄÎÊÌâΪÀý£¬ÒªÔÚʵʱ¼Ç¼1000¶àÖ»¹ÉƱÿ·ÖÖÓ¸üÐÂÒ»´ÎµÄÐÐ
ÇéÊý¾ÝµÄͬʱ£¬ÏìÓ¦´óÁ¿²¢·¢Óû§µÄÊý¾Ý²éѯÇëÇ󡣿¼Âǵ½ÐԼ۱ȺÍÒ×ά»¤ÐÔ£¬ÏµÍ³ÓÖ
ÒªÇóÔÚ»ùÓÚPC·þÎñÆ÷£¬Windows NTƽ̨µÄÈíÓ²¼þ»·¾³ÏÂʵÏÖ¡£¿ªÊ¼£¬ÎÒÃDzÉÓÃÁËMS SQL
Server 6.5 ×÷ΪÊý¾Ý¿âϵͳ£¬ÓÃVisual C++ 6.0¿ª·¢ÁË·ÃÎÊÊý¾Ý¿âµÄÇ°¶Ë£¬Ó¦ÓÃODBC
Êý¾Ý½Ó¿Ú£¬ÔÚ½øÐÐÁË´óÁ¿µÄÊý¾Ý¿âÅäÖúͳÌÐòÓÅ»¯ºó£¬·¢ÏÖÈÔ²»ÄÜÂú×ãÐÔÄÜÒªÇ󡣺ó²É
ÓÃSQL ServerµÄDB-Library½Ó¿Ú£¬ÈƹýÁËODBC½âÊͲ㣬¿ÉÒÔÿÃë¸üÐÂÐÐÇéÊý¾Ý30´Î£¬Í¬
ʱ֧³Ö20£30¸ö×óÓҵIJ¢·¢Óû§½øÐÐÐÐÇé²éѯ£¬»ù±¾Âú×ãÒªÇ󣨵¥Ì¨PC·þÎñÆ÷£¬µ¥PII3
50 CPU£¬ÄÚ´æ128M£¬SCSIÓ²ÅÌ£©¡£ÓÐûÓпÉÄܽøÒ»²½Ìá¸ßϵͳµÄÐÔÄܺ͸ºÔØÄÜÁ¦ÄØ£¿¾
¹ý·ÖÎö£¬Êý¾Ý¿â·þÎñÆ÷ÊÇϵͳµÄÆ¿¾±¡£µ±È»£¬¿ÉÒÔ²ÉÓÃUNIX·þÎñÆ÷£«´óÐÍÊý¾Ý¿âµÄϵͳ
ƽ̨£¬µ«Æ俪·¢¡¢ÔËÐС¢Î¬»¤µÄ·ÑÓñÈ΢»ú£«Windows NTƽ̨µÄ·ÑÓø߳öÊý±¶¡£ÎÒÃÇÔÚ
ÆäËüһЩϵͳµÄ¿ª·¢ÖУ¬Ò²¾³£Óöµ½ÕâÑùµÄì¶Ü¡£ÈçºÎÔÚ΢»úƽ̨ÉϽ¨Á¢´óÈÝÁ¿¡¢¸ßЧ
ÂÊ¡¢Ò×ά»¤¡¢¸ßÐԼ۱ȵÄÊý¾Ý¿âϵͳÄØ£¿
---- ¿¼²ì¹úÄÚ»ùÓÚ΢»úƽ̨µÄÊý¾Ý¿âÓ¦ÓÃϵͳ£¬µäÐ͵ÄÈçÍøÒ׵ķֲ¼Ê½Óʼþϵͳ£¬²ÉÓÃ
ÁËFreeBSD+MySQLµÄƽ̨£¬ÆäÈÝÁ¿¡¢¸ºÔØÄÜÁ¦ºÍÏìÓ¦Ëٶȶ¼ºÜÓÅÐã¡£×÷Õß²éÔÄÁËMySQLµÄ
Ïà¹ØÎĵµ£¬·¢ÏÖMySQLÊÇGNUÈí¼þ£¨¼´OpenSource×ÔÓÉÈí¼þ£©Öзdz£ÓÅÐãµÄÊý¾Ý¿âϵͳ£¬
ËüÍêÈ«·ûºÏSQL92 £¨Entry level£©ºÍ ODBC£¨ level 0-2£©¹æ·¶£¬ÔÚ·ûºÏPOSIX¹æ·¶µÄ²Ù
×÷ϵͳÉÏʵÏÖÁ˷dz£¸ßЧµÄ¹ØϵÐÍÊý¾Ý¿â¹ÜÀíϵͳ¡£¸ù¾ÝMySQLÌṩµÄÎĵµ£¬ËüµÄÊý¾Ý²Ù
×÷¿°³ÆËùÓÐÊý¾Ý¿âÖÐ×î¸ßЧµÄ£¬BenchmarkÈçÏÂ±í£º
Reading 2000000 rows by index
Database Seconds
mysql 367
mysql_odbc 464
db2_odbc 1206
informix_odbc 121126
ms-sql_odbc 1634
oracle_odbc 20800
solid_odbc 877
sybase_odbc 17614
Inserting (350768) rows
Database Seconds
mysql 381
mysql_odbc 619
db2_odbc 3460
informix_odbc 2692
ms-sql_odbc 4012
oracle_odbc 11291
solid_odbc 1801
sybase_odbc 4802
(run on the same NT 4.0 machine)
---- ´ÓMySQLµÄBenchmarkÖпÉÒÔ¿´µ½£¬MySQLµÄÐÔÄܷdz£³öÖÚ£¨µ±È»£¬²âÊÔµÄMySQLϵͳ
¿ÉÄÜ×÷ÁËÓÅ»¯£¬±»²âÊý¾Ý¿ÉÄÜÊÇÕë¶ÔMySQLÑ¡ÔñµÄ£©£¬¶øÇÒMySQLÌṩÁ˶Ô
Ïà¹ØÎĵµ£º
cÓëc++ staticº¯ÊýµÄÇø±ð
c
Óëc++ static
º¯ÊýµÄÇø±ð
static
¹Ø¼ü×ÖÊÇ
C, C++
Öж¼´æÔڵĹؼü×Ö
,
ËüÖ÷ÒªÓÐÈýÖÖʹÓ÷½Ê½
,
ÆäÖÐÇ°Á½ÖÖÖ»Ö¸ÔÚ
C
ÓïÑÔÖÐʹÓÃ
,
µÚÈýÖÖÔÚ
C++
ÖÐʹÓÃ
(C,C++
ÖоßÌåϸ΢²Ù×÷²»¾¡Ïàͬ
,
±¾ÎÄÒÔ
C++
Ϊ׼
).
(1)
¾Ö²¿¾²Ì¬±äÁ¿
(2)
Íⲿ¾²Ì ......
C/C++ Îļþ¶Áд²Ù×÷×ܽá
ÔÚ±à³ÌµÄ¹ý³ÌÖУ¬ÎļþµÄ²Ù×÷ÊÇÒ»¸ö¾³£Óõ½µÄÎÊÌ⣬ÔÚC++BuilderÖУ¬¿ÉÒÔʹÓöàÖÖ·½·¨¶ÔÎļþ²Ù×÷£¬ÏÂÃæÎҾͰ´ÒÔϼ¸¸ö²¿·Ö¶Ô´Ë×÷Ïêϸ½éÉÜ£¬¾ÍÊÇ£º
1¡¢»ùÓÚCµÄÎļþ²Ù×÷£»
2¡¢»ùÓÚC++µÄÎļþ²Ù×÷£»
3¡¢»ùÓÚWINAPIµÄÎļþ²Ù×÷£»
4¡¢»ùÓÚBCB¿âµÄÎļþ²Ù×÷£»
5¡¢ÌØÊâÎļþµÄ²Ù×÷¡£
Ò¼ ......
Ò»¡¢°²×°ÏµÍ³»·¾³
1¡¢ÏµÍ³£ºcentos5
2¡¢²âÊÔÔÚvm5.5
×¼±¸Èí¼þ
lighttpd-1.4.18
ÏÂÔصØÖ·
mysql-5.0.41
part1ÏÂÔصØÖ·
part2ÏÂÔصØÖ·
part3ÏÂÔصØÖ·
php-5.2.3
ÏÂÔصØÖ·
SupeSite/X-Space
part1ÏÂÔصØÖ·
part2ÏÂÔصØÖ·
part3ÏÂÔصØÖ·
discuz
ÏÂÔصØÖ·
¶þ¡¢´î½¨web·þÎñÆ÷°²×°¹ý³Ì
1¡¢mysql5°²×°
$ tar zx ......
×î½üÒ»Ö±ÔÚ½øÐÐPenroseÁ¬½ÓMysqlµÄ³¢ÊÔ£¬¿É×ÜÊÇÌáʾÎÞ·¨Á¬½Óµ½Mysql£¬ÎÞÂÛÊǼì²é¶Ë¿ÚÊÇ·ñ¿ªÆô£¬ÉèÖÃMysqlÔ¶³Ì·ÃÎÊȨÏ޵ȶ¼²»¹ÜÓ㬺óÀ´ÔÚPenroseµÄ¹ÙÍøÕÒµ½Ò»¸ö½¨Á¢ÑùÀýÊý¾Ý¿â¼°ÉèÖÃÔ¶³ÌÁ¬½ÓµÄÎĵµ£¬Ã»Ïëµ½Ò»¾Ù³É¹¦£¬Í´¿ì°¡£¡
ÏÂÃæ¾Í°ÑÎĵµºÍ´ó¼Ò¹²Ïíһϣ¡£¨ÊÇÓ¢ÎÄ£¬´ó¼Ò¾Í´ÕºÏ×Å¿´Ï°ɣ¡ÒòΪ×î½ü¸ãPenroseÌ«ÀÛÁË£¬ ......