Tingnan ang Buong Bersyon: Lutas Mga query sa Caching
Kinuha ko ang isang pagtingin sa mag-log ang aking mabagal na query at ko na nakikita ang mga bagay na tulad nito:
# Time: 140222 8:50:25
# User@Host: database_user[database_user] @ [10.0.0.4]
# Query_time: 7.076817 Lock_time: 0.000065 Rows_sent: 3 Rows_examined: 4174934
use cellphon_forum;
SET timestamp=1393077025;
SELECT cache.originaltext as originaltext, cache.translated as translated FROM vbenterprisetranslator_cache_medium_es help, vbenterprisetranslator_cache_medium_es cache WHERE help.originaltext='U.S. Supreme$
# User@Host: database_user[database_user] @ [10.0.0.4]
# Query_time: 14.198858 Lock_time: 0.000056 Rows_sent: 18 Rows_examined: 4174934
SET timestamp=1393077025;
SELECT cache.originaltext as originaltext, cache.translated as translated FROM vbenterprisetranslator_cache_medium_es help, vbenterprisetranslator_cache_medium_es cache WHERE help.originaltext='******* Xtre$
# User@Host: database_user[database_user] @ [10.0.0.4]
# Query_time: 13.591001 Lock_time: 0.000274 Rows_sent: 1 Rows_examined: 4174934
SET timestamp=1393077025;
SELECT cache.originaltext as originaltext, cache.translated as translated FROM vbenterprisetranslator_cache_medium_es help, vbenterprisetranslator_cache_medium_es cache WHERE help.originaltext='(Españ$
Mayroon bang anumang paraan na i-cache ang mga query na tulad nito? Load ang mga query na ito sa halos bawat pag-load ng pahina.
Oo, mayroon akong ang cache ng bisita sa.
Gayundin, kung ikaw ay upang patakbuhin ang dagdag sa mga query na ito, mayroong talang ito: "imposible SAAN Napansin matapos basahin const mga talahanayan"
Mangyaring pumunta sa Admin CP -> vBET Cache -> Memory Cache maaari mong itakda doon sa paggamit ng cache ng memory (4 engine suportado: Memcache, APC, XCache eAccelerator).
Ito umaangkop ba ang iyong mga pangangailangan?
PS.
Isang tanong - ano ang oras sukatan para sa oras ng query sa iyong ulat?
Gumagana ba hindi ang pag-andar ng cache ng memory tulad ng normal cache ngunit nag-iimbak ang data sa memory? Gusto na puksain ang ilan sa mga query na iyon?
Ang oras ng query ay nakalista sa unang post bago ang query.
Paggamit ng Guest Cache ay definitively puksain ang maraming ng mga query, dahil para sa mga bisita mga resulta ay naka-imbak sa simpleng HTML ng mga file at naka-stream mula sa mga file (hanggang sa mag-expire ang file - pagkatapos refresh).
Guest Cache ay puksain ang maraming ng mga query, dahil karamihan ng trapiko sa forum ay mula sa mga bisita (kabilang ang mga spider).
Lamang Sinuri ko ang aming mga mapagkukunan ng tungkol sa Memory Cache. Ito cooperates sa aming Guest Cache - kaya kamakailang ginamit na mga resulta ay kinuha mula sa memory hindi mula sa file. Sa kasong ito hindi ito ay puksain ang anumang mga query (Guest Cache na ginawa ito).
Still vBulletin sarili nito bilang natatandaan ko (hindi sigurado) ay may suporta para sa cache ng memory at marahil ito ay puksain ang ilan sa mga query.
Alam ko na kung saan ay nakalista sa oras ng query - ako ay nagtatanong tungkol sa oras ng panukalang. Marahil ako ay hindi malinaw - ano ang yunit ng oras? (S, ms, NS?)
Mayroon kaming ini-index sa aming mga talahanayan ng cache kaya dapat mas maikli ang oras.
Gayundin maaari mong subukang huwag paganahin ang pagpipilian Admin CP -> vBET Cache -> Database Cache -> Select grouped translations. Kapag pinagana, pagkatapos ay i-query ay magiging mas simple (walang pagkuha ng serie), ngunit magkakaroon magkano ang higit pang mga query (isang bagay para sa isang bagay) - marahil sa iyong forum ito ang magiging mas mahusay para sa mga tanong nang mas madalas.
Halimbawa - naghahanap sa iyong mga resulta na kayo ay nagkaroon 3 mga query na binigay 22 mga resulta. Kung hindi mo pinagana ang pagkuha ng mga resulta sa mga pangkat pagkatapos ay magkakaroon ka ng 22 mga query sa pagbibigay 1 resulta sa bawat isa, ngunit ang query ay magiging mas madali (mas simple 'SAAN' na seksyon) kaya din mas mabilis. Kung mayroon kang database sa iba pang mga server pagkatapos definitively hindi mo kailangang subukan ito. Nag ikaw ay pagkuha ng mga resulta sa pamamagitan ng localhost, pagkatapos ay marahil makikita mo ang pagpapabuti. Hindi maaaring sabihin - mayroon upang suriin ito.
Okay, salamat para sa nagpapaliwanag. Ginagamit ko ang cache ng bisita at cache ng memory (xcache), ngunit ako pa rin astounded sa kung gaano karaming piliin ay nagmumula sa database.
Ang oras panukalang itaas ay sa ilang segundo.
Ito kinuha sa iyong database na 14 segundo para sa query? Talagang? Ito ay definitively sira doon. Mangyari lamang na subukan upang ayusin ang mga talahanayan sa pamamagitan ng Admin CP, siguro mayroong mali. Hindi ito dapat magtagal kaya mahaba - mga data ay na-index.
Mayroon akong isang pakiramdam na ang ilang mga talahanayan ay sa pagla-lock at / o paghihintay para sa cache ng query, na ang dahilan kung bakit sila ay pagkuha kaya mahaba upang isakatuparan. Hindi upang mailakip ang maaari kong gamitin ang ilang higit pang mga memorya sa aking database server - ako nagtatrabaho sa na pati na rin.
ay gumagamit ng vBET mga talahanayan ng cache nang walang anumang mga transaksyon (MYISAM) kaya bina-block hindi dapat na ang isyu. Marahil mo sinuway ini-index at MySQL ay gumagawa buong paghahanap. Sa sandaling muli mangyaring gamitin ang iyong CP ng Admin upang ayusin ang lahat ng iyong mga talahanayan at ini-index (Admin CP -> Maintenance -> Repair / Optimize Tables).
Automatic Translations (Powered by Google, Microsoft®,
Yandex, SDL Language Cloud, IBM Watson and Apertium):
Powered by vBulletin® Version 4.2.5 Copyright © 2025 vBulletin Solutions Inc. All rights reserved.