home *** CD-ROM | disk | FTP | other *** search
/ Chip 2004 June / Chip_2004-06_cd1.bin / chplus / interval / clanek05.htm < prev    next >
Encoding:
Extensible Markup Language  |  2004-05-01  |  13.0 KB  |  143 lines

  1. <?xml version='1.0' encoding='windows-1250'?>
  2. <!DOCTYPE html PUBLIC '-//W3C//DTD XHTML 1.0 Strict//EN' 'http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd'>
  3. <html xmlns='http://www.w3.org/1999/xhtml' xml:lang='cs' lang='cs'>
  4. <head>
  5. <meta http-equiv='Content-Type' content='text/html; charset=windows-1250' />
  6. <meta http-equiv='Content-language' content='cs' />
  7. <meta http-equiv='Cache-control' content='no-cache' />
  8. <meta http-equiv='Pragma' content='no-cache' />
  9. <meta http-equiv='Expires' content='0' />
  10. <meta name='robots' content='index, follow' />
  11. <meta name='googlebot' content='index, follow, noarchive' />
  12. <meta name='description' content='Interval.cz - Internetov² magazφn o webdesignu, v²voji webov²ch aplikacφ a e-komerci. VÜe podstatnΘ o technologiφch XHTML, HTML, CSS, DHTML, JavaScript, XML, .NET, ASP, PHP, Java, J2ME, SQL, WAP...' />
  13. <meta name='keywords' content='Interval' />
  14. <meta http-equiv='imagetoolbar' content='no' />
  15. <meta http-equiv='MSThemeCompatible' content='no' />
  16. <meta name='MSSmartTagsPreventParsing' content='true' />
  17. <meta name='ICBM' content='49.1915, 16.626' />
  18. <meta name='DC.Title' content='Interval.cz' />
  19. <meta name='DC.Identifier' content='http://interval.cz' />
  20. <meta name='DC.Language' content='cs' />
  21. <link rel='alternate' type='text/xml' title='RSS' href='http://interval.cz/__rss/rss.asp' />
  22. <link rel='shortcut icon' href='favicon.ico' />
  23. <link rel='first' href='http://interval.cz/clanek.asp?article=2561' />
  24. <link rel='prev' href='http://interval.cz/clanek.asp?article=2848' />
  25. <link rel='up' href='http://interval.cz/serial.asp?serial=27' />
  26. <link rel='home' href='http://interval.cz' />
  27. <link rel='search' href='http://interval.cz/search_ex.asp' />
  28. <link rel='stylesheet' type='text/css' media='all' href='__services/styles/html4.css' />
  29. <link rel='stylesheet' type='text/css' media='all' href='__services/styles/basic_all.css' />
  30. <link rel='stylesheet' type='text/css' media='all' href='__services/styles/homepage_all.css' />
  31. <link rel='stylesheet' type='text/css' media='all' href='__services/styles/articles_all.css' />
  32. <link rel='stylesheet' type='text/css' media='print' href='__services/styles/articles_print.css' />
  33. <title>Interval.cz - denn∞ o tvorb∞ webu a e-komerci</title>
  34. </head>
  35. <body class='interval interval-articles'>
  36. <div id='page-header'><div id='interval-logo'><h1 title='Interval.cz - denn∞ o tvorb∞ webu a e-komerci (logo & index link)'><a href='http://interval.cz/__redirect/redirect.asp?what=interval_offline&url=http://interval.cz'>Interval.cz<span></span></a></h1></div><div id='advertising-page-header'></div><div class='page-maker'> </div></div>
  37. <div id='page-topmenu'><h2 class='textversion'>Navigace</h2><div id='page-mainmenu'><h3 class='textversion'>Hlavnφ menu</h3><ul><li class='first selected'><a href='http://interval.cz/__redirect/redirect.asp?what=interval_offline&url=http://interval.cz'>Titulnφ strana</a></li><li><a href='http://interval.cz/__redirect/redirect.asp?what=interval_offline&url=http://interval.cz?idcategory=14'>Webdesign</a></li><li><a href='http://interval.cz/__redirect/redirect.asp?what=interval_offline&url=http://interval.cz?idcategory=15'>V²voj aplikacφ</a></li><li><a href='http://interval.cz/__redirect/redirect.asp?what=interval_offline&url=http://interval.cz?idcategory=18'>E-komerce</a></li><li><a href='http://interval.cz/__redirect/redirect.asp?what=interval_offline&url=http://interval.cz?idcategory=17'>Nßstroje</a></li><li><a href='http://interval.cz/__redirect/redirect.asp?what=interval_offline&url=http://interval.cz?idcategory=16'>Magazφn</a></li><li class='right selected'><a href='http://interval.cz/__redirect/redirect.asp?what=interval_offline&url=http://interval.inshop.cz'>Knihkupectvφ</a></li><li class='right'><a href='http://interval.cz/__redirect/redirect.asp?what=interval_offline&url=http://interforum.interval.cz'>Interforum</a></li></ul></div><div id='page-mainmenu-maker'> </div></div>
  38. <div id='page-body'><div id='page-left'><div id='article'>
  39.  
  40.  
  41.  
  42. <h2>Turck MMCache a PHPCoder</h2>
  43. <p id='prepend'>Chcete-li seri≤zn∞ podnikat v oblasti web-based °eÜenφ, postaven²ch nad PHP, dostanete se brzy do konfliktu s otev°enostφ zdrojovΘho k≤du. ProblΘmem je, jak ochrßnit svß prßva, kdy₧ ka₧d² zßkaznφk m∙₧e vaÜi prßci velmi jednoduÜe okopφrovat a vyu₧φvat dle libosti, ani₧ by vßm zaplatil jedin² halφ°. U₧iteΦn²m pomocnφkem se vßm m∙₧e stßt Turck MMCache a jeho dopln∞k PHPCoder. A krom∞ ochrany vßm poskytnou i dalÜφ u₧iteΦnΘ slu₧by, nap°φklad keÜovßnφ skript∙ a b∞hovou optimalizaci.</p>
  44.  
  45.  
  46. <p>Free open source program <a href='http://turck-mmcache.sourceforge.net'>Turck MMCache</a> pat°φ bezpochyby k t∞m zajφmav∞jÜφm, s nimi₧ jsem se dosud setkal. Vznikl v roce 2001 a patronßt nad jeho v²vojem dr₧φ firma Turck Software St. Petersburg, co₧ je ruskß poboΦka n∞meckΘ Turck GmbH Munich. K jejich zßkaznφk∙m pat°φ p°edevÜφm r∙znΘ banky a pojiÜ¥ovacφ spoleΦnosti. P∙vodn∞ bylo ·kolem tΘhle utilitky urychlovat b∞h aplikacφ v PHP, pozd∞ji se p°idala i funkce bezpeΦnostnφ. V souΦasnosti ji tedy lze pou₧φt jako akcelerßtor, optimizΘr, enkoder a dynamickou cache.</p>
  47. <p>Turck MMCache m∙₧e b²t pou₧it jako extenze PHP nebo samotnΘho Zend engine. Rozhodnete-li se ho otestovat, nejjednoduÜÜφ je nainstalovat ho jako dopln∞k PHP. Na platform∞ Windows staΦφ nakopφrovat p°edkompilovanou knihovnu "mmcache.dll" do slo₧ky s extenzemi a na konec souboru php.ini doplnit instrukce, regulujφcφ jejφ pou₧itφ. Malou chybiΦkou je, ₧e se knihovny liÜφ podle verze PHP, lze to vÜak pochopit jako da≥ z kvality. Osv∞dΦila se mi nßsledujφcφ konfigurace (nezapome≥te si p°izp∙sobit cesty):</p>
  48.  
  49. <div class='sample'>
  50. [Turck MMCache]
  51. <br />zend_extension_ts="extensions\mmcache.dll"
  52. <br />mmcache.shm_size="16"
  53. <br />mmcache.cache_dir="..\_datacache"
  54. <br />mmcache.enable="1"
  55. <br />mmcache.optimizer="1"
  56. <br />mmcache.check_mtime="1"
  57. <br />mmcache.debug="0"
  58. <br />mmcache.filter=""
  59. <br />mmcache.shm_max="0"
  60. <br />mmcache.shm_ttl="0"
  61. <br />mmcache.shm_prune_period="0"
  62. <br />mmcache.shm_only="0"
  63. <br />mmcache.compress="1"
  64. </div>
  65.  
  66. <p>Vym∞nil jsem Zend Optimizer, kter² jsem dosud pou₧φval (mohou b²t ale nainstalovßny i souΦasn∞), za Turck MMCache a nestaΦil jsem se divit. B∞h m²ch aplikacφ se skuteΦn∞ z°eteln∞ zrychlil, a to tak, ₧e jsem rychlejÜφ odezvu mohl pozorovat prost²m okem. ZvlßÜ¥ v p°φpad∞ listovßnφ databßzov²mi tabulkami v phpMyAdmin bylo zrychlenφ nep°ehlΘdnutelnΘ. Zcela v²jimeΦn∞ jsem tedy ochoten v∞°it autorsk²m test∙m, podle nich₧ Turck MMCache p°ekonßvß vÜechny svΘ konkurenty. Rozhodn∞ alespo≥ v p°φpad∞ Zendu nejde o planΘ vychloubßnφ.</p>
  67.  
  68. <div class='image'><img src='podklady/malek/803/encoder.png' alt='ukßzka hlaviΦky vestav∞nΘho encoderu' title='ukßzka hlaviΦky vestav∞nΘho encoderu' /></div>
  69.  
  70. <p>Urychlenφ b∞hu aplikacφ, a¥ u₧ pomocφ optimalizace skript∙ nebo dynamick²m keÜovßnφm, je jist∞ p°φjemnß v∞c. Nejvφce jsem vÜak byl zv∞dav na schopnosti Turck MMCache coby enkodΘru. Nejprve bych ale rßd podotknul, ₧e zak≤dovßnφ skriptu neznamenß jeho dokonalou ochranu. V₧dy je mo₧no zφskat pomocφ reverse engeneeringu alespo≥ funkΦn∞ obdobn² k≤d, jde vÜak obvykle o natolik nßkladnou proceduru, ₧e se v praxi vyu₧φvß jen v²jimeΦn∞. EnkodΘr tedy nem∙₧e zaruΦit dokonalou bezpeΦnost k≤du, poskytuje ale jeho p°ijatelnou ochranu.</p>
  71. <p>Turck MMCache Encoder je docela Üikovnß v∞ciΦka. Umo₧≥uje p°evod PHP skript∙ do nonreversibilnφho byte k≤du, kter² je nßsledn∞ p°φstupn² pouze skrze vestav∞nΘ funkce Turck MMCache nebo standalone TurckLoader. Navφc je autorovi skriptu dßna mo₧nost omezit jeho b∞h na konkrΘtnφ IP Φi jmΘno serveru, IP nßvÜt∞vnφka, datum expirace skriptu nebo Φasov² limit, po kter² m∙₧e b²t aplikace zßkaznφkovi p°φstupnß. Samoz°ejm∞, encoding mß negativnφ vliv na rychlost, s vestav∞nou keÜφ to ale nenφ problΘm. Tedy pokud mßte dostateΦn∞ v²konn² hardware.</p>
  72.  
  73. <div class='image'><img src='podklady/malek/803/coder.png' alt='ukßzka hlaviΦky PHPCoderu' title='ukßzka hlaviΦky PHPCoderu' /></div>
  74.  
  75. <h3>PHPCoder</h3>
  76. <p>Program nebo spφÜe skript <a href='http://phpcoder.sourceforge.net'>PHPCoder</a> je urΦen programßtor∙m, jejich₧ lenost jim brßnφ u₧ i ve studiu parametr∙ p°φkazovΘ °ßdky. Turck MMCache Encoder sice obsahuje jednoduchΘ web-based rozhranφ, to ale umo₧≥uje pouze velmi zßkladnφ nastavenφ. PHPCoder toto rozhranφ nahrazuje a zp°φstup≥uje prakticky vÜechny vlastnosti Encoderu v sice graficky jednoduchΘm, ale velmi efektivnφm formulß°i. Krom∞ vlastnφch parametr∙ pro k≤dovßnφ zde mßte mo₧nost nap°φklad nastavit i neodruÜitelnou hlaviΦku nebo patiΦku sv²ch skript∙ a podobnΘ skopiΦinky, kterΘ jist∞ ocenφ ka₧d² hraΦiΦka.</p>
  77.  
  78.  
  79.  
  80. <div id='article-author'>
  81. <a href='http://interval.cz/__redirect/redirect.asp?what=interval_offline&url=http://interval.cz/autor.asp?author=65'>Mßlek, VilΘm</a> (20. 4. 2004)
  82. <div id='article-about-author'>ÜΘfredaktor Interval.cz</div>
  83. </div>
  84.  
  85.  
  86.  
  87. </div></div>
  88. <div id='page-right'><h2 class='textversion'>Prav² sloupek</h2>
  89. <div id='search'><h3 class='textversion'>Vyhledßvßnφ</h3><form method='get' action='http://interval.cz/search.asp'><div><input type='text' name='hledej' class='text' /><input type='submit' class='submit' value='Najdi!' /></div></form><div><a href='http://interval.cz/search_ex.asp'>RozÜφ°enΘ vyhledßvßnφ</a></div></div>
  90.  
  91.  
  92.  
  93. <div class='page-right-box book'>
  94.     <h3>Kni₧nφ novinka</h3>
  95.     <div class='page-right-box-in'>
  96.         <div class='book-top'>
  97.             <h4><a href='http://interval.cz/__redirect/redirect.asp?what=interval_booknews&url=http://interval.inshop.cz/inshop/scripts/detail.asp?ItemID=250'>Zrychlete svΘ WWW strßnky!</a></h4>
  98.         </div>
  99.     </div>
  100.     <div class='image'>
  101.         <img src='podklady/knihy/image.jpg' alt='obßlka' title='obßlka' /></a>
  102.     </div>
  103.     <div class='book-bottom'>Cena: <span class='book-price-old'>390 KΦ</span> <span class='book-price-new'>351 KΦ</span></div>
  104. </div>
  105.  
  106.  
  107.  
  108. <div class='page-right-box reading'>
  109.     <h3>NejΦten∞jÜφ</h3>
  110.     <div class='page-right-box-in'>
  111.         <ul>
  112. <li><a href='http://interval.cz/__redirect/redirect.asp?what=interval_offline&url=http://interval.cz/clanek.asp?article=3276'>Webovß grafika podle TomßÜe BarΦφka</a></li>
  113. <li><a href='http://interval.cz/__redirect/redirect.asp?what=interval_offline&url=http://interval.cz/clanek.asp?article=3301'>Kompletnφ pr∙vodce XSLT - ·vod do problematiky</a></li>
  114. <li><a href='http://interval.cz/__redirect/redirect.asp?what=interval_offline&url=http://interval.cz/clanek.asp?article=3298'>Osv∞dΦenφ z ·Φetnictvφ p°es cΘdΘΦko</a></li>
  115. <li><a href='http://interval.cz/__redirect/redirect.asp?what=interval_offline&url=http://interval.cz/clanek.asp?article=3295'>Cactus - testovanie cookies</a></li>
  116. <li><a href='http://interval.cz/__redirect/redirect.asp?what=interval_offline&url=http://interval.cz/clanek.asp?article=3302'>K Φemu je nßm MathML</a></li>
  117.         </ul>
  118.     </div>
  119. </div>
  120.  
  121.  
  122.  
  123. <div class='page-right-box cauldron'>
  124.     <h3>Diskuznφ kotel</h3>
  125.     <div class='page-right-box-in'>
  126.         <ul>
  127. <li><a href='http://interval.cz/__redirect/redirect.asp?what=interval_offline&url=http://interval.cz/clanek.asp?article=3305' title='(48 komentß°∙)'>T°etφ d∞lß byznys</a></li>
  128. <li><a href='http://interval.cz/__redirect/redirect.asp?what=interval_offline&url=http://interval.cz/clanek.asp?article=3280' title='(36 komentß°∙)'>Interval.cz a jeho Φtenß°i</a></li>
  129. <li><a href='http://interval.cz/__redirect/redirect.asp?what=interval_offline&url=http://interval.cz/clanek.asp?article=3296' title='(30 komentß°∙)'>PHP pro pokroΦilΘ - znovu t°φdy a objekty</a></li>
  130. <li><a href='http://interval.cz/__redirect/redirect.asp?what=interval_offline&url=http://interval.cz/clanek.asp?article=3301' title='(24 komentß°∙)'>Kompletnφ pr∙vodce XSLT - ·vod do problematiky</a></li>
  131. <li><a href='http://interval.cz/__redirect/redirect.asp?what=interval_offline&url=http://interval.cz/clanek.asp?article=3276' title='(21 komentß°∙)'>Webovß grafika podle TomßÜe BarΦφka</a></li>
  132.         </ul>
  133.     </div>
  134. </div>
  135.  
  136.  
  137.  
  138. <div class='page-right-box emailserv'><h3>Email servis</h3><div class='page-right-box-in'><form action='prihlaseni.asp' method='post'><div class='shell'><input class='text' type='text' name='adresa' /></div><div class='shell'><input class='radio' type='radio' value='1' name='co' checked='checked' />T²dennφ p°ehled Φlßnk∙</div><div class='shell'><input class='radio' type='radio' value='2' name='co' />HELP konference</div><div class='shell'><input class='submit' type='submit' value='P°ihlßsit' /></div></form></div></div>
  139. </div>
  140. <div class='page-maker'> </div><div class='page-maker-white'> </div></div>
  141. <div id='page-foot'><div id='page-foot-menu'><a href='http://interval.cz/reklama.asp'>Inzerce na Interval.cz</a> | <a href='http://interval.cz/redakce.asp'>Redakce Interval.cz</a> | <a href='http://interval.cz/autori.asp'>Hledßme novΘ autory</a></div><div id='issn'>ISSN 1212-8651</div><div id='page-foot-zoner'>© Zoner software, s.r.o., vÜechna prßva vyhrazena, tento server dodr₧uje <a href='http://interval.cz/privacy.asp'>prßvnφ p°edpisy</a>o ochran∞ osobnφch ·daj∙.</div></div>
  142. </body>
  143. </html>