Zum Inhalt springen


zonebattler's homezone 2.1 - Merkwürdiges aus Fürth und der Welt


« »

Spaß­brem­se

Das Auf­ru­fen ei­ner be­lie­bi­gen Sei­ten­an­sicht die­ses Blogs hier dau­ert der­zeit meh­re­re Se­kun­den und da­mit viel zu lan­ge: Es flutscht nicht, es zieht sich. Wie­wohl ich die Zahl der zur Sei­ten­er­stel­lung nö­ti­gen Da­ten­bank-Ab­fra­gen [1] durch Ein­satz ei­nes pfif­fi­gen Plug­ins [2] si­gni­fi­kant re­du­zie­ren konn­te (mit spür­bar be­schleu­ni­gen­der Wir­kung), braucht es selbst in ver­kehrs­schwä­che­ren Tags­rand­la­gen im­mer noch min­de­stens drei bis vier quä­lend lang er­schei­nen­de Se­kun­den, bis sich nach ei­nem Maus­klick die ge­wünsch­te An­sicht auf­ge­baut hat. [3]

Ur­sa­che des Elends ist der Um­stand, daß der zum letz­ten Jah­res­wech­sel er­folg­te Um­zug von der Platt­form ei­nes be­kann­ten Blog-Ho­sters in das ei­ge­ne vir­tu­el­le Heim der Ver­le­gung aus ei­nem gut ver­wal­te­ten Miet-Wol­ken­krat­zer in die ei­ge­ne Schuh­schach­tel in ei­nem rie­si­gen Rei­hen­haus­park gleich­kam: Mit vie­len an­de­ren Nut­zern muß sich der zone­batt­ler nun die Res­sour­cen ei­nes Da­ten­bank-Ser­vers tei­len, der na­tür­lich kei­nes­wegs her­um­trö­delt, aber eben grenz­wer­tig be­la­stet ist. So wie un­ser­ei­ner im rea­len Le­ben zu­wei­len auch, wenn er im Bü­ro [4] links den Hö­rer des Fest­netz­te­le­fons am Ohr hat und rechts das Dienst-Han­dy, zwi­schen­drin je­doch nur ein ein­zi­ges, auf se­quen­ti­el­le Ab­ar­bei­tung spe­zia­li­sier­tes Hirn...

Mit in­ter­nen Op­ti­mie­rungs­maß­nah­men (Cachen hier, Bal­last ab­wer­fen da) bin ich jetzt durch, wei­te­re Per­for­mance-Ge­win­ne sind da­her nur in der Fol­ge ra­di­ka­ler Maß­nah­men sei­tens mei­nes Web­ho­sters zu er­war­ten. Und da im­mer­hin be­steht Hoff­nung, zeigt sich ein Sil­ber­streif am (Zeit-)Horizont. Laut An­kün­di­gung auf der Home­page mei­nes gro­ßen (Massen-)Providers wird die­ser näm­lich

... am Don­ners­tag, 05. März, zwi­schen 2 und 6 Uhr die Ser­ver mit den MySQL-Da­ten­ban­ken auf­rü­sten. Des­halb kann es in die­sem Zeit­raum für we­ni­ger als ei­ne Stun­de zu ei­ner ein­ge­schränk­ten Er­reich­bar­keit Ih­rer Datenbank(en) kom­men. Die Si­cher­heit Ih­rer Da­ten ist da­bei je­der­zeit ge­währ­lei­stet. Nach dem Ab­schluss der Ar­bei­ten wer­den Ih­re Da­ten­ban­ken wie ge­wohnt zur Ver­fü­gung ste­hen.

Auch wenn lei­der kei­ne De­tails ge­nannt wer­den, »auf­rü­sten« klingt zu­min­dest nach Per­for­mance-Stei­ge­rung (auch wenn die­se lang­fri­stig durch Kun­den­zu­wachs wie­der auf­ge­fres­sen wer­den und sich die Auf­rü­stungs-Spi­ra­le des­halb mun­ter wei­ter­dre­hen dürf­te). Al­so war­ten wir mal den näch­sten Don­ners­tag ab, und mit et­was Glück ist dann das Blät­tern in zonebattler’s ho­me­zo­ne wie­der ein im Wort­sin­ne kurz­wei­li­ges Ver­gnü­gen...

 
[1] sog. SQL-Queries

[2] Der WP Wid­get Cache puf­fert fast al­le Ele­men­te der recht­erhand ge­le­ge­nen Sei­ten­lei­ste und ak­tua­li­siert die­se nur ein­mal täg­lich durch tat­säch­li­che Da­ten­bank-Ab­fra­gen.

[3] Über­gangs­hal­ber las­se ich der­zeit in ei­ner Fuß­zei­le ganz un­ten die Zahl der Queries und die zu ih­rer Ab­ar­bei­tung be­nö­tig­te Zeit leid­lich de­zent an­zei­gen.

[4] werk­tags (au­ßer Sa), nicht 24.12., 31.12.

Diskussion

  1. macplanet  •  27. Feb. 2009, 16:12 Uhr

    Ein weit­aus grö­ße­rer Ge­schwin­dig­keits­ge­winn lie­ße sich al­ler­dings da­durch er­rei­chen, daß Du die An­zahl der Ar­ti­kel re­du­zierst, die je­weils auf der Start­sei­te an­ge­zeigt wer­den.

    #1 

  2. zonebattler  •  27. Feb. 2009, 16:57 Uhr

    Wo­mit Du si­cher nicht ganz un­recht hast. Gleich­wohl le­ge ich Wert auf so­fort er­kenn­ba­re the­ma­ti­sche Viel­falt auf der Ein­stiegs­sei­te und da­her be­las­se ich es einst­wei­len beim run­den Dut­zend...

    #2 

  3. zonebattler  •  27. Feb. 2009, 20:49 Uhr

    Das Ka­te­go­rien-Wid­get än­dert ja sei­nen In­halt eher sel­ten, ge­hört da­her zu den ge­cach­ten und wird be­wußt nur ein­mal täg­lich kurz nach Mit­ter­nacht neu ein­ge­le­sen. Über­haupt sind in der Sei­ten­lei­ste nur noch das Me­ta-Wid­get, die An­li­stun­gen der letz­ten Ar­ti­kel (»Frisch auf den Tisch«) und Kom­men­ta­re (»Sü­ßer und schar­fer Senf«) so­wie das Such­feld un­ge­puf­fert, die an­de­ren 10 Wid­gets wer­den vom oben ge­nann­ten WP Wid­get Cache-Plug­in oh­ne Da­ten­bank-Queries di­rekt be­lie­fert.

    #3 

  4. Lexikaliker  •  27. Feb. 2009, 20:02 Uhr

    Ich weiß nicht, ob es viel bringt, aber Du könn­test das Wid­get, das Dei­ne Ka­te­go­rien auf­li­stet und da­zu auch im­mer Da­ten­bank­ab­fra­gen aus­führt, durch ein Text-Wid­get mit di­rek­ten Links zu den Ka­te­go­rien er­set­zen.

    #4 

  5. macplanet  •  28. Feb. 2009, 15:39 Uhr

    @zonebattler:
    Das ist nach­voll­zieh­bar. Aber re­du­zier doch ein­fach mal pro­be­wei­se die Zahl auf 5 oder 6. Ich ver­mu­te, daß der Ge­schwin­dig­keits­ge­winn so groß sein wird, daß Du gar nicht mehr nach an­de­ren Quel­len su­chen wirst ...

    #5 

  6. zonebattler  •  28. Feb. 2009, 16:50 Uhr

    Ge­sagt, ge­tan. In­ter­es­san­ter­wei­se än­dert die Hal­bie­rung der pro Sei­te an­ge­zeig­ten Ar­ti­kel von 12 auf 6 we­der et­was an der Zahl der Queries (27) noch an der Be­ar­bei­tungs­dau­er (der­zeit zwi­schen 4 und 5 Se­kun­den). Der Auf­ruf ei­nes ein­zel­nen Ar­ti­kels be­steht da­ge­gen stets aus 33 Queries, wo­bei die War­te­zeit mit der Zahl der Kom­men­ta­re an­steigt. Trau­ri­ger Spit­zen­rei­ter ist der Dis­kus­si­ons­strang über die ge­plan­te »Neue Mit­te« Fürths mit der­zeit 215 Kom­men­ta­ren: da braucht es trotz al­ler Cache­rei mo­men­tan quä­len­de 15–20 Se­kun­den, bis die Sei­te zu­sam­men­ge­stellt ist. So rich­tig lu­stig ist das nicht...

    #6 

  7. Lexikaliker  •  1. Mrz. 2009, 7:17 Uhr

    An das Caching der Wid­gets ha­be ich bei mei­nem Vor­schlag gar nicht ge­dacht – so et­was Flot­tes gibt’s in mei­ner ol­len Ma­schi­ne näm­lich nicht ;-)

    #7 

  8. zonebattler  •  5. Mrz. 2009, 6:50 Uhr

    Hmpf. Es ist Don­ners­tag, es ist nach 6:00 Uhr, ei­nen Ge­schwin­dig­keits­zu­wachs kann ich in­des aber lei­der nicht fest­stel­len. Und im Da­ten­bank-Backend mei­nes Pro­vi­ders ist mit phpMyAd­min 2.6.4‑pl3 im­mer noch ei­ne recht an­ge­grau­te Ver­si­on in­stal­liert...

    #8 

  9. zonebattler  •  10. Mrz. 2009, 10:08 Uhr

    Seit heu­te frei­lich scheint ir­gend­wo ei­ne vir­tu­el­le Hand­brem­se ge­lockert wor­den zu sein: Teil­wei­se bau­en sich mei­ne Blog­sei­ten jetzt in we­ni­ger als drei Se­kun­den auf, sel­ten braucht ei­ne mehr als de­ren vier. Ist na­tür­lich wei­ter­hin al­les an­de­re als re­kord­ver­däch­tig, aber im­mer­hin deut­lich spür­bar flüs­si­ger als vor­her und al­le­mal ak­zep­ta­bel!

    #9 

  10. zonebattler  •  15. Mrz. 2009, 8:41 Uhr

    So, jetzt ha­be ich doch noch den gro­ßen Vor­schlag­ham­mer aus­ge­packt: Seit ge­stern abend ist hier das Plug­in WP Su­per Cache im Ein­satz, wel­ches jeg­li­che Sei­ten­auf­ru­fe für ei­nen de­fi­nier­ba­ren Zeit­raum kom­plett zwi­schen­puf­fert. Wer al­so als erste(r) hier ei­ne Sei­te auf­ruft, muß ein paar Se­kun­den war­ten, bis die­se aus den da­zu er­for­der­li­chen Da­ten­bank­ab­fra­gen dy­na­misch ge­ne­riert ist. Al­le wei­te­ren Auf­ru­fe die­ser näm­li­chen Sei­te wer­den dann aus dem Cache oh­ne Da­ten­bank-Ab­fra­ge mit ei­nem sta­ti­schen Schnapp­schuß be­dient, was in Se­kun­den­bruch­tei­len ge­schieht und mit­hin er­heb­lich schnel­ler flutscht. Nach Ab­lauf des »Ver­fall­da­tums« (ich ha­be der­zeit test­hal­ber ei­ne Stun­de Hal­te­zeit ein­ge­stellt) führt ein er­neu­tes An­klicken die­ser Sei­te zur kom­plet­ten Neu­erstel­lung (und da­mit auch wie­der zum Auf­fri­schen der ge­puf­fer­ten Fas­sung). Der klei­nen Sta­ti­stik ganz un­ten im Sei­ten­fuß kann man ent­neh­men, wann die an­ge­zeig­te Sei­te tat­säch­lich frisch ge­ne­riert wor­den ist.

    Die Ar­beits­wei­se ei­nes sol­chen Caches ist ei­ni­ger­ma­ßen kom­plex, scheint sich aber nicht mit an­de­ren Plug­ins und den von mir ver­wen­de­ten Sta­ti­stik-Tools zu bei­ßen. Auf Be­nut­zer­sei­te soll­te sich der Ge­schwin­dig­keits­zu­wachs zu­min­dest auf den viel­be­such­ten Sei­ten deut­lich be­merk­bar ma­chen. Wer sich na­tür­lich auf Ent­deckungs­tour macht und äl­te­re Ar­ti­kel ein­zeln auf­ruft, muß für die­ses Wan­deln auf un­aus­ge­tre­te­nen Pfa­den doch wie­der ein paar Se­kun­den War­te­zeit pro Schritt ein­pla­nen. Aber ich den­ke, das ist es wert!

    Wenn sich das prak­ti­sche Plug­in auch dann an­ge­mes­sen an­stän­dig ver­hält, wenn neu er­schei­nen­de Ar­ti­kel oder frisch ab­ge­ge­be­ne Kom­men­ta­re zu­sätz­li­che In­hal­te ein­brin­gen (die soll­ten ja nicht bis zum tur­nuns­mä­ßi­gen Re­fres­hen un­ter­drückt wer­den), dann wer­de ich das Tool wei­ter­hin ver­wen­den. Schau’n wir mal...

    #10 

  11. zonebattler  •  24. Mrz. 2009, 17:19 Uhr

    Nach­dem ich mir ge­stern beim al­ler­or­ten hoch­ge­lob­ten Web­ho­ster all-inkl.com ei­nen ko­sten­lo­sen Test-Ac­count zu­ge­legt ha­be, kann ich nach ei­ner ex­pe­ri­men­tel­len Da­ten­bank-Trans­plan­ta­ti­on be­stä­ti­gen, daß mein Blog da min­de­stens dop­pelt so schnell flut­schen wür­de und im ver­gleich­ba­ren Pa­ket-Preis so­gar noch weit mehr an Spei­cher­platz und über­dies un­be­grenz­ter Traf­fic ent­hal­ten wä­re. Ei­ner­seits.

    An­de­rer­seits wä­re man­ches dort struk­tu­rell an­ders ge­löst (Do­main- und Ord­ner-Hier­ar­chien, Ver­wal­tungs­tools, Web-Mailer), und ob sich nach den er­for­der­li­chen Kon­fi­gu­ra­ti­ons-Or­gi­en hin­ter­her ein hö­he­res Maß an Zu­frie­den­heit ein­stell­te, ist mir als Ge­wohn­heits­tier nicht in je­der Hin­sicht klar. Zu­mal man ja fast nie al­le la­ten­ten Fuß­an­geln vor­her­se­hen kann. Ei­ne ge­wis­se Zit­ter­par­tie be­fürch­te­te ich zu­dem beim Über­gang mei­ner Do­mains von ei­nem zum an­de­ren An­bie­ter, ähn­lich wie beim Wech­sel von Te­le­kom­mu­ni­ka­ti­ons-Dienst­lei­stern kann man da zwi­schen »hat ta­del­los ge­klappt« und »ge­riet zum wo­chen­lan­gen Alb­traum« of­fen­bar al­le Ab­stu­fun­gen er­le­ben.

    Wie auch an­ders­wo im Le­ben wagt man als vor­sich­ti­ger Zeit­ge­nos­se und ge­brann­tes Kind den Wech­sel meist erst dann, wenn der Lei­dens­druck zu hoch ge­wor­den ist. Just je­ner scheint der­zeit aber eher im Sin­ken be­grif­fen zu sein: Heu­te hat­te ich kaum ei­nen Sei­ten­auf­ruf zu ver­zeich­nen, der län­ger als fünf Se­kun­den ge­dau­ert hät­te. Die mei­sten Sei­ten stan­den in 3,x Se­kun­den, ei­ne gan­ze An­zahl (vor al­lem in den Mor­gen­stun­den) so­gar in nur 2,x Se­kun­den voll­stän­dig auf dem Schirm.

    Da­mit kann man le­ben, zu­mal dann, wenn die näch­ste Ver­trags­ver­län­ge­rung (nebst Vor­aus­zah­lung) für ein hal­bes Jahr oh­ne­hin vor der Tür steht und der Wech­sel jetzt und gleich zur dop­pel­ten Mie­te für sechs Mo­na­te füh­ren wür­de. Da­her be­ob­ach­te ich das Ant­wort­zeit­ver­hal­ten noch ei­ne Wei­le, las­se mich viel­leicht so­gar zu ei­nem kon­struk­ti­ven Kun­den­brief an mei­nen bis­he­ri­gen Ho­ster in­spi­rie­ren: Be­vor ich mit den Fü­ßen ab­stim­me, soll er noch ei­ne Chan­ce be­kom­men!

    #11 

  12. zonebattler  •  25. Jul. 2009, 23:09 Uhr

    Heu­te mor­gen bin ich zu­fäl­lig da­hin­ter­ge­kom­men, daß ich im Kon­fi­gu­ra­ti­ons-Backend mei­nes Web­ho­sters Stra­to die ver­wen­de­te PHP-Ver­si­on von 4.nochwas auf 5.x.y.z um­schal­ten kann. Die zar­te Hoff­nung auf spür­ba­ren Ge­schwin­dig­keits­zu­wachs per Knopf­druck wur­de aber jäh ent­täuscht, denn auf ein­mal ging näm­lich gar nichts mehr: Mei­ne Da­ten­bank schien zer­schos­sen, der Ord­ner »uploads« mit all’ den per­sön­li­chen Da­tei­en und auch den Fo­tos drin­nen war auf ein­mal leer...

    Sehr dum­me Sa­che das, aber der zone­batt­ler ist ja pa­ra­no­id pro­fes­sio­nell ge­nug, um nie oh­ne Netz und dop­pel­ten Bo­den zu ar­bei­ten: Nach we­ni­gen Mi­nu­ten wa­ren er­stens ei­ne neue Da­ten­bank an­ge­legt, zwei­tens die vor dem Ex­pe­ri­ment per MySQLDum­per an­ge­leg­te DB-Si­che­rung zu­rück­ge­spielt und drit­tens die sta­ti­schen Word­Press-Da­tei­en per FTP in ei­nen fri­schen Blog-Ord­ner hoch­ge­la­den. Die paar tau­send Bil­der brauch­ten am Schluß et­was län­ger, aber der sta­tus quo an­te war nach ca. ei­ner Stun­de doch voll­stän­dig wie­der her­ge­stellt und das Blog lief wie­der, wenn auch so zäh wie vor­her.

    Jetzt aber ha­be ich ei­ne an­de­re Me­tho­de aus­pro­biert, die PHP-Da­tei­en mei­nes Blogs durch die neue­re Ver­si­on die­ser Skript­spra­che in­ter­pre­tie­ren zu las­sen. Und sie­he, es geht, und das spür­bar schnel­ler! Ei­ne ein­zi­ge Zei­le in ei­ner ein­zi­gen Da­tei ge­än­dert, und schon flutscht es hier wie nie zu­vor. Si­cher, es ist im­mer noch nicht ganz so flott wie man sich es idea­ler­wei­se vor­stel­len wür­de, aber es ist deut­lich, ganz deut­lich bes­ser ge­wor­den! Mal schau­en, ob das auf Dau­er so bleibt, dann wä­re ich wohl tat­säch­lich halb­wegs zu­frie­den mit der Per­for­mance...

    #12 

  13. zonebattler  •  20. Jan. 2010, 12:15 Uhr

    End­lich kann ich hier und heu­te Ent­war­nung ge­ben. Daß ich das noch er­le­ben darf!

    #13 

Kommentar-RSS: RSS-Feed für Kommentare nur zu diesem Beitrag

Eigenen Senf dazugeben: