Jump to content
php.lv forumi

Storing values in memory - performance


Roze

Recommended Posts

Sveiki gribeeju paintereseeties vai kaads ir kaut ko dariijis (jeb varbuut ir kaads cits jauks variants) ar datu glabaashanu atminjaa jebshu datiem / mainiigajiem kurus var padot visa servera robezhaas (ne tikai individuaala lietotaaja / sesijas).

 

Proti ideja ir taada ka ir zinaams kvantums datu kas visiem apmekleetaajiem ir vienaadi (tai pashaa laikaa visas lapas caching mehaanisms iisti nedarbojas jo nemainiigi ir tikai kaut kaadi objekti (piemeeram preces nosaukums / u.c. parametri), bet to izveitojums un pozicijas var mainiities dinamiski) liidz ar to pie liela liela vienlaiciiga apmekletaaju skaita ir liela noslodze DB (SQL) serverim (sheit vairs neiet runa pat par db servera tuningu jo pat ar to rezultaats iipashi neuzlabojas).

 

Tika izveidots viens risinaajums ar MMCache (mmcache_put() mmcache_get()) tachu radaas tieshi taada pati probleema: ar maz lietotaajiem lapa protams "lidoja" - bet liidzko paraleelo pieprasiijumu skaits palielinaajaas serveris saaka riistiities. Aciimredzot katram lietotaajam iekshs shared memory ielasiitie dati tikuntaa tiek ielasiiti veelreiz proti ja glabaajam 10Mb tad vinji netiek acceseeti tieshi bet briidii kad tik nolasiiti tiek iemesti atminjaa veelreiz pirms lapa tiek uzbuildota..

 

Tagad ir variants pameegjinaat ar shmop http://lv.php.net/shmop tachu ir nelabas aizdomas ka rezultaats buus analogs.

 

Peedeejaa iespeeja ir ar kaadu background procesinju gruuzt datus uz diska (kaa speed improvmentu vareetu izmantot particiju kas izveidota uz rama) failos un taisiit to nolasiishanu / apstraadi.

Link to comment
Share on other sites

(kaut kā no darba www.php.lv velkās)

 

Par shmop īsti nepateikšu, bet bija darāms kaut kas līdzīgs ar delphiem (pirmā progas instance apstrādāja failus un eksportēja "resursus" ramā, nākamās versijas to vienkārši nolasīja no turienes). Lielas problēmas ar adresēšanu, php vēl nāk klāt tas, ka tos resursus viņš ieglabā "raw" veidā. Problēmas pēc tam to nolasīt no citas progr., ja tai vajadzīgs uzreiz "tipizēts" pointeris e.g. (TStream, kuram ir savs "datu" apraksts).

Bet man interesanti, kas tev tāds sarežģīts, ka katram klientam vajag tik daudz vienas un tās pašas info atrādīt?

Edited by Venom
Link to comment
Share on other sites

×
×
  • Create New...