Óà Gearman ·Ö·¢ PHP Ó¦ÓóÌÐòµÄ¹¤×÷¸ºÔØ
ÔÎÄ£ºhttp://www.ibm.com/developerworks/cn/opensource/os-php-gearman/
¾¡¹ÜÒ»¸ö Web Ó¦ÓóÌÐòµÄ´ó²¿·ÖÄÚÈݶ¼Óë±íʾÓйأ¬µ«ËüµÄ¼ÛÖµÓ뾺ÕùÓÅÊÆÈ´¿ÉÄÜÌåÏÖÔÚÈô¸ÉרÓзþÎñ»òËã·¨·½Ãæ¡£Èç¹ûÕâÀà´¦Àí¹ýÓÚ¸´ÔÓ»òÍÏí³£¬×îºÃÊǽøÐÐÒì²½Ö´ÐУ¬ÒÔÃâ Web ·þÎñÆ÷¶Ô´«ÈëµÄÇëÇóûÓÐÏìÓ¦¡£Êµ¼ÊÉÏ£¬½«Ò»¸ö¼ÆËãÃܼ¯Ð͵ĻòרÃÅ»¯µÄ¹¦ÄÜ·ÅÔÚÒ»¸ö»ò¶à¸ö¶ÀÁ¢µÄרÓ÷þÎñÆ÷ÉÏÔËÐУ¬Ð§¹û»á¸üºÃ¡£
PHP µÄ Gearman ¿âÄܰѹ¤×÷·Ö·¢¸øÒ»×é»úÆ÷¡£Gearman »á¶Ô×÷Òµ½øÐÐÅŶӲ¢ÉÙÁ¿·ÖÅÉ×÷Òµ£¬¶ø½«ÄÇЩ¸´ÔÓµÄÈÎÎñ·Ö·¢¸øΪ´ËÈÎÎñÔ¤ÁôµÄ»úÆ÷¡£Õâ¸ö¿â¶Ô Perl¡¢Ruby¡¢C
¡¢Python ¼° PHP ¿ª·¢ÈËÔ±¾ù¿ÉÓ㬲¢ÇÒ»¹¿ÉÒÔÔËÐÐÓÚÈκÎÀàËÆ UNIX® µÄƽ̨ÉÏ£¬°üÀ¨ Mac OS X¡¢ Linux® ºÍ Sun Solaris¡£
ÏòÒ»¸ö PHP Ó¦ÓóÌÐòÌí¼Ó Gearman ·Ç³£¼òµ¥¡£¼ÙÉèÄú½« PHP Ó¦ÓóÌÐòÍйÜÔÚÒ»¸öµäÐ굀 LAMP ÅäÖÃÉÏ£¬ÄÇô Gearman ½«ÐèÒªÒ»¸ö¶îÍâµÄÊØ»¤³ÌÐòÒÔ¼°Ò»¸ö PHP À©Õ¹¡£½ØÖ¹µ½ 2009 Äê 11 Ô£¬Gearman ÊØ»¤³ÌÐòµÄ×îа汾ÊÇ 0.10£¬²¢ÇÒÓÐÁ½¸ö PHP À©Õ¹¿ÉÒÔÓà ¡ª Ò»¸öÓà PHP °ü¹üÁË Gearman C
¿â£¬ÁíÒ»¸öÓô¿ PHP ±àд¡£ÎÒÃÇÒªÓõÄÊÇÇ°Õß¡£ËüµÄ×îа汾ÊÇ 0.6.0£¬¿ÉÒÔ´Ó PECL »ò Github£¨²Î¼û²Î¿¼×ÊÁÏ£©»ñÈ¡ËüµÄÔ´´úÂë¡£
Çë×¢Ò⣺¶ÔÓÚ±¾ÎĶøÑÔ£¬producer Ö¸µÄÊÇÉú³É¹¤×÷ÇëÇóµÄ»úÆ÷£»consumer ÊÇÖ´Ðй¤×÷µÄ»úÆ÷£»¶ø agent ÔòÊÇÁ¬½Ó producer ÓëÊʵ± consumer µÄÖн顣
ÏòÒ»¸ö»úÆ÷Ìí¼Ó Gearman ÐèÒªÁ½²½£ºµÚÒ»²½¹¹½¨²¢Æô¶¯Õâ¸öÊØ»¤³ÌÐò£¬µÚ¶þ²½¹¹½¨Óë PHP °æ±¾ÏàÆ¥ÅäµÄ PHP À©Õ¹¡£Õâ¸öÊØ»¤³ÌÐò°ü°üÀ¨¹¹½¨´ËÀ©Õ¹ËùÐèµÄËùÓп⡣
Ê×ÏÈ£¬ÏÂÔØ Gearman ÊØ»¤³ÌÐò gearmand
µÄ×îÐÂÔ´´úÂ룬½âѹËõÕâ¸ö tarball£¬¹¹½¨²¢°²×°´Ë´úÂ루°²×°ÐèÒªÓг¬¼¶Óû§µÄȨÏÞ£¬¼´¸ùÓû§È¨ÏÞ£©¡£
$ wget http://launchpad.net/gearmand/trunk/\ 0.10/+download/gearmand-0.10.tar.gz $ tar xvzf gearmand-0.10.tar.gz $ cd gearmand-0.10 $ ./configure $ make $ sudo make install |
°²×° gearmand
ºó£¬¹¹½¨ PHP À©Õ¹¡£Äú¿ÉÒÔ´Ó PECL »ñÈ¡Õâ¸ö tarball£¬Ò²¿ÉÒÔ´Ó Github ¸´ÖƸô洢¿â¡£
$ wget http://pecl.php.net/get/gearman-0.6.0.tgz $ cd pecl-gearman # # or # $ git clone git://github.com/php/pecl-gearman.git $ cd pecl-gearman |
ÓÐÁËÕâЩ´úÂëºó£¬¾Í¿ÉÒÔ¿ªÊ¼¹¹½¨À©Õ¹ÁË£º
$ phpize $ ./configure $ make $ sudo make install |
Õâ¸ö Gearman ÊØ»¤³ÌÐòͨ³£±»°²×°ÔÚ /usr/sbin¡£¿ÉÒÔ´ÓÃüÁîÐÐÖ±½ÓÆô¶¯´ËÊØ»¤³ÌÐò£¬Ò²¿ÉÒÔ½«Õâ¸öÊØ»¤³ÌÐòÌí¼Óµ½Æô¶¯ÅäÖÃÖУ¬ÒÔ±ãÔÚ»úÆ÷ÿ´ÎÖØÆôʱ¾Í¿ÉÒÔÆô¶¯Õâ¸öÊØ»¤³ÌÐò¡£
½ÓÏÂÀ´£¬ÐèÒª°²×° Gearman À©Õ¹¡£´ò¿ª php.ini Îļþ£¨¿ÉÒÔͨ¹ý php --ini
ÃüÁî¿ìËÙÕÒµ½Õâ¸öÎļþ£©£¬È»ºóÌí¼Ó´úÂëÐÐ extension = gearman.so
£º
$ php --ini Loaded Configuration File: /etc/php/php.ini $ vi /etc/php/php.ini ... extension = gearman.so |
±£´æ´ËÎļþ¡£ÒªÏëÑéÖ¤À©Õ¹ÊÇ·ñÆôÓã¬ÇëÔËÐÐ php --info
£¬È»ºó²éÕÒ Gearman£º
$ php --info | grep "gearman support" gearman gearman support => enabled libgearman version => 0.10 |
´ËÍ⣬»¹¿ÉÒÔÓÃÒ»¸ö PHP ´úÂëƬ¶ÎÀ´ÑéÖ¤¹¹½¨ºÍ°²×°ÊÇ·ñµÃµ±¡£½«Õâ¸öСӦÓóÌÐò±£´æµ½ verify_gearman.php£º
<?php print gearman_version() . "\n"; ?> |
½ÓÏÂÀ´£¬´ÓÃüÁîÐÐÔËÐд˳ÌÐò£º
$ php verify_gearman.php 0.10 |
Èç¹ûÕâ¸ö°æ±¾ºÅÓë֮ǰ¹¹½¨ºÍ°²×°µÄ Gearman ¿âµÄ°æ±¾ºÅÏàÆ¥Å䣬ÄÇôϵͳ¾ÍÒÑ×¼±¸ºÃÁË¡£
ÎÒÃÇÇ°ÃæÌáµ½¹ý£¬Ò»¸ö Gearman ÅäÖÃÓÐÈý¸ö½ÇÉ«£º
- Ò»¸ö»ò¶à¸ö producer Éú³É¹¤×÷ÇëÇó¡£Ã¿¸ö¹¤×÷ÇëÇóÃüÃûËüËùÏëÒªµÄº¯Êý£¬ÀýÈç
email_all
»òanalyze
¡£ - Ò»¸ö»ò¶à¸ö consumer Íê³ÉÇëÇó¡£Ã¿¸ö consumer ÃüÃûËüËùÌṩµÄÒ»¸ö»ò¶à¸öº¯Êý²¢Ïò agent ×¢²áÕâЩ¹¦ÄÜ¡£Ò»¸ö consumer Ò²¿ÉÒÔ±»³ÆΪÊÇÒ»¸ö worker¡£
- ´úÀí¶ÔÓëÖ®½¨Á¢Á¬½ÓµÄÄÇЩ consumer ÌṩµÄËùÓзþÎñ½øÐм¯ÖбàÖÆ¡£Ëü½« producer ÓëÇ¡µ±µÄ consumer ÁªÏµÆðÀ´¡£
½èÖúÈçϵÄÃüÁîÐУ¬¿ÉÒÔÁ¢¼´ÌåÑé Gearman£º
- Æô¶¯Õâ¸ö agent£¬¼´ Gearman ÊØ»¤³ÌÐò£º
$ sudo /usr/sbin/gearmand --daemon
- ÓÃÃüÁîÐÐʵÓù¤¾ß
gearman
ÔËÐÐÒ»¸ö worker¡£Õâ¸ö worker ÐèÒªÒ»¸öÃû×Ö²¢ÄÜÔËÐÐÈκÎÃüÁîÐÐʵÓù¤¾ß¡£ÀýÈ磬¿ÉÒÔ´´½¨Ò»¸ö worker À´Áгöij¸öĿ¼µÄÄÚÈÝ¡£-f
²ÎÊýÃüÃûÁ˸à worker ËùÌṩµÄº¯Êý£º$ gearman -w -f ls -- ls -lh
- ×îºóµÄÒ»¸ö´úÂë¿éÊÇÒ»¸ö producer£¬»òÓÃÀ´Éú³É²éÕÒÇëÇóµÄÒ»¸ö×÷Òµ¡£Ò²¿ÉÒÔÓÃ
gearman
Éú³ÉÒ»¸öÇëÇó¡£Í¬Ñù£¬ÓÃ-f
Ñ¡ÏîÀ´Ö¸¶¨ÏëÒª´ÓÖлñµÃ°ïÖúµÄÄǸö·þÎñ£º$ gearman -f ls < /dev/null drwxr-xr-x@ 43 supergiantrobot staff 1.4K Nov 15 15:07 gearman-0.6.0 -rw-r--r--@ 1 supergiantrobot staff 29K Oct 1 04:44 gearman-0.6.0.tgz -rw-r--r--@ 1 supergiantrobot staff 5.8K Nov 15 15:32 gearman.html drwxr-xr-x@ 32 supergiantrobot staff 1.1K Nov 15 14:04 gearmand-0.10 -rw-r--r--@ 1 supergiantrobot staff 5.3K Jan 1 1970 package.xml drwxr-xr-x 47 supergiantrobot staff 1.6K Nov 15 14:45 pecl-gearman
´Ó PHP ʹÓà Gearman ÀàËÆÓÚ֮ǰµÄʾÀý£¬Î©Ò»µÄÇø±ðÔÚÓÚÕâÀïÊÇÔÚ PHP ÄÚ´´½¨ producer ºÍ consumer¡£Ã¿¸ö consumer µÄ¹¤×÷¾ù·â×°ÔÚÒ»¸ö»ò¶à¸ö PHP º¯ÊýÄÚ¡£
Çåµ¥ 1 ¸ø³öÁËÓà PHP ±àдµÄÒ»¸ö Gearman worker¡£½«ÕâЩ´úÂë±£´æÔÚÒ»¸öÃûΪ worker.php µÄÎļþÖС£
Çåµ¥ 1. Worker.php
<?php $worker= new GearmanWorker(); $worker->addServer(); $worker->addFunction("title", "title_function"); while ($worker->work()); function title_function($job) { return ucwords(strtolower($job->workload())); } ?> |
Çåµ¥ 2 ¸ø³öÁËÓà PHP ±àдµÄÒ»¸ö producer£¬»ò client¡£½«´Ë´úÂë±£´æÔÚÒ»¸öÃûΪ client.php µÄÎļþÄÚ¡£
Çåµ¥ 2. Client.php
<?php $client= new GearmanClient(); $client->addServer(); print $client->do("title", "AlL THE World's a sTagE"); print "\n"; ?> |
ÏÖÔÚ£¬¿ÉÒÔÓÃÈçϵÄÃüÁîÐÐÁ¬½Ó¿Í»§»úÓë worker ÁË£º
$ php worker.php & $ php client.php All The World's A Stage $ jobs [3]+ Running php worker.php & |
Õâ¸ö worker Ó¦ÓóÌÐò¼ÌÐøÔËÐУ¬×¼±¸ºÃ·þÎñÁíÒ»¸ö¿Í»§»ú¡£
ÔÚÒ»¸ö Web Ó¦ÓóÌÐòÄÚ¿ÉÄÜÓÐÐí¶àµØ·½¶¼»áÓõ½ Gearman¡£¿ÉÒÔµ¼Èë´óÁ¿Êý¾Ý¡¢·¢ËÍÐí¶àµç×ÓÓʼþ¡¢±àÂëÊÓƵÎļþ¡¢ÍÚ¾ÝÊý¾Ý²¢¹¹½¨Ò»¸öÖÐÑëÈÕÖ¾ÉèÊ© ¡ª ËùÓÐÕâЩ¾ù²»»áÓ°ÏìÕ¾µãµÄÌåÑéºÍÏìÓ¦ÐÔ¡£¿ÉÒÔ²¢Ðеش¦ÀíÊý¾Ý¡£¶øÇÒ£¬ÓÉÓÚ Gearman ÐÒéÊǶÀÁ¢ÓÚÓïÑÔºÍƽ̨µÄ£¬ËùÒÔÄú¿ÉÒÔÔÚ½â¾ö·½°¸ÖлìºÏ±à³ÌÓïÑÔ¡£±ÈÈ磬¿ÉÒÔÓà PHP ±àдһ¸ö producer£¬Óà C
¡¢Ruby »òÆäËûÈκÎÖ§³Ö Gearman ¿âµÄÓïÑÔ±àд worker¡£
Ò»¸öÁ¬½Ó¿Í»§»úºÍ worker µÄ Gearman ÍøÂçʵ¼ÊÉÏ¿ÉÒÔʹÓÃÈκÎÄúÄÜÏëÏóµÃµ½µÄ½á¹¹¡£ºÜ¶àÅäÖÃÄܹ»ÔËÐжà¸ö´úÀí²¢½« worker ·ÖÅäµ½Ðí¶à»úÆ÷ÉÏ¡£¸ºÔؾùºâÊÇÒþʽµÄ£ºÃ¿¸ö¿É²Ù×÷µÄ¿ÉÓà worker£¨¿ÉÄÜÊÇÿ¸ö worker Ö÷»ú¾ßÓжà¸ö worker£©´Ó¶ÓÁÐÖÐÀ³ö×÷Òµ¡£Ò»¸ö×÷ÒµÄܹ»Í¬²½»òÒì²½ÔËÐв¢¾ßÓÐÓÅÏȼ¶¡£
Gearman µÄ×îа汾ÒѾ½«ÏµÍ³ÌØÐÔÀ©Õ¹µ½ÁË°üº¬³Ö¾ÃµÄ×÷Òµ¶ÓÁкÍÓÃÒ»¸öÐÂÐÒéÀ´Í¨¹ý HTTP Ìá½»¹¤×÷ÇëÇ󡣶ÔÓÚÇ°Õߣ¬Gearman ¹¤×÷¶ÓÁб£´æÔÚÄÚ´æ²¢ÔÚÒ»¸ö¹ØϵÐÍÊý¾Ý¿âÄÚ´æÓб¸·Ý¡£ÕâÑùÒ»À´£¬Èç¹û Gearman ÊØ»¤³ÌÐò¹ÊÕÏ£¬Ëü¾Í¿ÉÒÔÔÚÖØÆôºóÖØд´½¨Õâ¸ö¹¤×÷¶ÓÁС£ÁíÒ»¸ö×îеĸÄÁ¼Í¨¹ýÒ»¸ö memcached ¼¯ÈºÔö¼Ó¶ÓÁг־ÃÐÔ¡£memcached ´æ´¢Ò²ÒÀÀµÓÚÄڴ棬µ«±»·ÖÉ¢ÓÚ¼¸¸ö»úÆ÷ÒÔ±ÜÃâµ¥µã¹ÊÕÏ¡£
Gearman ÊÇÒ»¸ö¸Õ¸ÕÆð²½È´ºÜÓÐʵÁ¦µÄ¹¤×÷·Ö·¢ÏµÍ³¡£¾Ý Gearman µÄ×÷Õß Eric Day ½éÉÜ£¬Yahoo! ÔÚ 60 »ò¸ü¶àµÄ·þÎñÆ÷ÉÏʹÓà Gearman ÿÌì´¦Àí 600 Íò¸ö×÷Òµ¡£ÐÂΞۺÏÆ÷ Digg Ò²Òѹ¹½¨ÁËÒ»¸öÏàͬ¹æÄ£µÄ Gearman ÍøÂ磬ÿÌì¿É´¦Àí 400,000 ¸ö×÷Òµ¡£Gearman µÄÒ»¸ö³öÉ«Àý×Ó¿ÉÒÔÔÚ Narada Õâ¸ö¿ªÔ´ËÑË÷ÒýÇ棨²Î¼û ²Î¿¼×ÊÁÏ£©ÖÐÕÒµ½¡£
Gearman µÄδÀ´°æ±¾½«ÊÕ¼¯²¢±¨¸æͳ¼ÆÊý¾Ý¡¢Ìṩ¸ß¼¶¼àÊӺͻº´æ×÷Òµ½á¹ûµÈ¡£ÎªÁ˸ú×ÙÕâ¸ö Gearman ÏîÄ¿£¬¿ÉÒÔ¶©ÔÄËüµÄ Google ×飬»ò·ÃÎÊ Freenode ÉÏËüµÄ IRC ƵµÀ #gearman
¡£
ѧϰ
- ÀûÓà Gearman Õ¾µã£¬Á˽âÓйش˿âµÄ¸ü¶àÐÅÏ¢¡£
- Narada ËÑË÷ÒýÇæ ÊÇÒ»¸ö¿ªÔ´ÏîÄ¿£¬Ç¿µ÷ÁË×îпªÔ´¼¼Êõ£¨°üÀ¨ Gearman£©µÄʹÓá£
- PHP.net ÊÇÃæÏò PHP ¿ª·¢ÈËÔ±µÄÖÐÐÄ×ÊÔ´¡£
- ²éÔÄ ¡°ÍƼö PHP ¶ÁÎïÁÐ±í¡±¡£
- ä¯ÀÀ developerWorks ÉϵÄÈ«²¿ PHP ÄÚÈÝ¡£
- ²é¿´ IBM developerWorks µÄ PHP ÏîÄ¿×ÊÔ´£¬À©Õ¹ÄúµÄ PHP ¼¼ÇÉ¡£
- ÊÕÌýÕë¶ÔÈí¼þ¿ª·¢ÈËÔ±µÄÓÐȤ·Ã̸ºÍÌÖÂÛ£¬Ò»¶¨Òª·ÃÎÊ developerWorks podcasts¡£
- Òª½«Êý¾Ý¿âÓë PHP ½áºÏʹÓ㿲鿴 Zend Core for IBM£¬ËüÊÇÒ»¸öÎÞ·ìµÄ¡¢¿ÉÒÔÁ¢¼´Ê¹Óá¢Ò×ÓÚ°²×°¡¢Ö§³Ö IBM DB2 V9 µÄ PHP ¿ª·¢ºÍÉú²ú»·¾³¡£
- My developerWorks º¸ÇÁË´óÁ¿Ö÷Ì⣬ÊÇÒ»¸ö³É¹¦ÉçÇøµÄµä·¶¡£
- Ëæʱ¹Ø×¢ developerWorks ¼¼Êõ»î¶¯ºÍÍøÂç¹ã²¥¡£
- ²éÔÄ×î½ü½«ÔÚÈ«Çò¾Ù°ìµÄÃæÏò IBM ¿ª·ÅÔ´Â뿪·¢ÈËÔ±µÄÑÐÌֻᡢ½»Ò×Õ¹ÀÀ¡¢ÍøÂç¹ã²¥ºÍÆäËû »î¶¯ ¡£
- ·ÃÎÊ developerWorks Open source רÇø »ñµÃ·á¸»µÄ how-to ÐÅÏ¢¡¢¹¤¾ßºÍÏîÄ¿¸üÐÂÒÔ¼° ×îÊÜ»¶ÓµÄÎÄÕºͽ̳̣¬°ïÖúÄúÓÿª·ÅÔ´Âë¼¼Êõ½øÐпª·¢£¬²¢½«ËüÃÇÓë IBM ²úÆ·½áºÏʹÓá£
- ²é¿´Ãâ·ÑµÄ developerWorks ÑÝʾÖÐÐÄ£¬¹Û¿´²¢Á˽â IBM ¼°¿ªÔ´¼¼ÊõºÍ²úÆ·¹¦ÄÜ¡£
»ñµÃ²úÆ·ºÍ¼¼Êõ
- ²éÔÄ Gearman ÏÂÔØ ºÍÀ©Õ¹£¬°üÀ¨Õë¶Ô
C
¿âµÄ PHP À©Õ¹¡£
- ʹÓà IBM ²úÆ·ÆÀ¹ÀÊÔÓðæÈí¼þ ¸Ä½øÄúµÄÏÂÒ»¸ö¿ª·¢ÏîÄ¿£¬ÕâЩÈí¼þ¿ÉÒÔͨ¹ýÏÂÔØ»ñµÃ¡£
- ÏÂÔØ IBM ²úÆ·ÆÀ¹ÀÊÔÓðæÈí¼þ »ò IBM SOA Sandbox for Reuse£¬²¢¿ªÊ¼Ê¹ÓÃÀ´×Ô DB2®¡¢Lotus®¡¢Rational®¡¢Tivoli® ºÍ WebSphere® µÄÓ¦ÓóÌÐò¿ª·¢¹¤¾ßºÍÖмä¼þ²úÆ·¡£
ÍƼöÐÅÏ¢
- ¡¾ÊÓƵ²¥·Å¡¿JplayerÊÓƵ²¥·ÅÆ÷µÄʹÓÃ
- memcacheÄÚ´æÔÀí
- Memcache¼¼Êõ·ÖÏí£º½éÉÜ¡¢Ê¹Óᢴ洢¡¢Ëã·¨¡¢ÓÅ»¯....
- php³£ÓÃÕýÔò±í´ïʽ
- phpÐÔÄܼà²âÄ£¿éXHProf
- ÈÃCI¿ò¼ÜÖ§³Öservice²ã
- ʹÓÃPHPÉú³É´øLOGOµÄ¸öÐÔ»¯¶þάÂëͼÏñ
- ¹ØÓÚCodeIgniterÄã¿ÉÄܲ»ÖªµÀµÄ5¸ö֪ʶµã
- Memcache ºÁÃ뼶³¬Ê±¼°ÆäËû³£¼ûÎÊÌâ»ã×Ü
- [PHP±Ê¼Ç]PHPQueryÒ»¸ö´¦ÀíDOMµÄÀûÆ÷
ÈÈÃÅÐÅÏ¢
- nohup: redirecting stderr to stdou....
- ʹÓÃlog_formatΪNginx·þÎñÆ÷ÉèÖøüÏêϸµÄÈÕÖ¾¸ñʽ
- jquery easyUI--dataGrid-Json
- [Ô´´]·ÂGoogle Reader¡¢ÐÂÀË΢²©¡¢ÌÚѶ΢²©µ....
- ÀûÓÃKeepalived+mysql¹¹½¨¸ß¿ÉÓÃMySQLË«Ö÷×Ô¶....
- Nginx+keepalivedʵÏÖ¸ºÔؾùºâºÍË«»úÈȱ¸¸ß¿ÉÓÃ
- jqueryʵÏÖÒ³Ãæ¼ÓÔؽø¶ÈÌõ
- Rolling cURL: PHP²¢·¢×î¼Ñʵ¼ù
- codeigniter ·ÓÉÖÕ¼«ÓÅ»¯(url rewrite)
- linuxÏÂÉèÖÃsshÎÞÃÜÂëµÇ¼
×î½ü¸üÐÂ
- PHP»ñÈ¡Óû§µÄÕæʵIP£¬²¢ÅжÏÊÇ·ñÄÚÍøIP
- PHP ´íÎóÈÕÖ¾ error_log
- ÀûÓÃbigpipe»úÖÆʵÏÖÒ³ÃæÄ£¿éµÄÒì²½äÖȾ chunked¼¼Êõ
- php¿ØÖÆÎļþÏÂÔØËÙ¶È
- js + php ¶ÁÈ¡¡¢²¥·ÅÊÓƵÁ÷ ¼æÈÝfirefox£¬c....
- ¡¾ÊÓƵ²¥·Å¡¿JplayerÊÓƵ²¥·ÅÆ÷µÄʹÓÃ
- UNICODE Óë UTF-8 µÄ¹Øϵ
- memcacheÄÚ´æÔÀí
- Memcache¼¼Êõ·ÖÏí£º½éÉÜ¡¢Ê¹Óᢴ洢¡¢Ëã·¨¡¢ÓÅ»¯....
- phpʹÓÃmb_detect_encoding¼ì²â×Ö·û´®±àÂë
ÆÀÂÛ