ugrás a tartalomhoz

Link katalógus és PageRank

Blintux · 2011. Ápr. 28. (Cs), 14.35
Üdvözletem!

Elméleti tanácsot szeretnék kérni.

Egy link katalógust programozok, ami többek között rendelkezik Google PageRank lekérdezéssel is a linkekhez. Ezek megjelennek a linkek mellet, hogy milyen erős is az adott oldal.
Amit viszont nem tudok eldönteni, az a PR frissítés mikéntje.
Az alábbiakra gondoltam, mint lehetőségekre:

  • Ha valaki megnézi a link lapját, akkor lekérdezi újra a PR-t. Ebben az esetben lehet, hogy lenne olyan link, aminek hónapokig nem frissül a PR-je.
  • Kategóriák böngészése közben frissül minden, az oldalon látható link PR-je. Ebben az esetben már jobb a helyzet, mert frissülhet olyan link is, amit lehet a kutya sem néz meg.
  • Írok egy, a katalógus oldaltól független (admin) oldalt, ahol bizonyos időközönként egy gombnyomásra frissíttetem a PR-eket. Itt viszont nem tudom, hogy ha az adatbázis már több ezer linket tartalmaz, akkor azt hogy fogja bírni a frissítő ciklus.
  • Az utóbbi kettő keveréke: Kategória böngészés közben frissítés. Bizonyos időközönként manuális frissítés, ami ekkor csak azokat kérdezné le újra, amik jó ideje nem voltak frissítve.
  • A serveren futna egy frissítő program, amit bizonyos időközönként lefuttatna a Cron.


Ti mit tanácsolnátok PR frissítési megoldásként, ami viszonylag gyors és hatékony?

Előre is köszönöm a válaszokat!
 
1

attól függ

Ifju · 2011. Ápr. 28. (Cs), 16.19
Szia!

Attól függ, hogy milyen igényeid vannak.

Mindenesetre, ha folyamatosan karbantartott adatokra van szükséged, akkor én a cron használatát javaslom.

Egyre növekvő listáknál érdemes olyan feldolgozó scriptet írni, ami a script egy lefutására csak a rendelkezésre álló rekordok egy részével dolgozik csak, pl 1000 rekordot dolgoz fel.

Azt egy timestamp-ben eltárolhatod a rekordokban, hogy mikor foglalkozott a scripted utoljára az adott rekorddal, és így könnyedén lekérdezheted azokat a rekordokat, amiket a legrégebben frissítettél az adatbázisban, főleg ha teszel a timestamp mezőre egy indexet. Arra kell ilyen megoldás esetén figyelni, hogy mindig csak egy példány fusson a karbantartó scriptből.

Innen kezdve akkor lehet csak probléma, ha már annyira sok rekordot kezelsz, hogy nem tudod elég gyakran frissíteni a PR-t az egyes rekordoknál, és szükség van a rekordok több szálon való feldolgozására. Ilyenkor esetben szükség lehet arra, hogy mielőtt elkezdenéd a feldolgozást, meg kell jelölni azokat a rekordokat, amelyeket frissíteni fogsz, hogy a párhuzamosan futó többi script-példány csak olyan rekordokkal foglalkozzon, ami épp nincs feldolgozás alatt.