2011. július 11., hétfő

Oracle-ből vissza a service-nek

Ez a bejegyzés nem olyan mint a többi megszokott, nem egy végigszopott valamit írok le, hanem megoldást keresek egy problémára, ami nem túl egyszerű.

Röviden:
Van egy oracle adatbázis, sok tábla lesz benne, amiből sokat be lehet cache-elni a service ÉS kliens oldalon egyaránt.
Feladat: a cache-eket valahogy invalidálni kellene, és kikényszeríteni, hogy ha változik alatta az adat.
A periodikus ránézegetést kerülni kellene, így is van elég baja az adatbázisnak.

Lehetséges megoldások:
Két megoldás létezik a fejekben most, egyik az oracle ún. Alert cucca, ami arra van, hogy tud szólni aszinkron valakinek bizonyos eseményekről (is), mint pl insert, update, delete. Ez egyelőre parkolópályán, mert nem erre találták ki, hanem inkább dba-knak való, hogy bizonyos eseményekről küldjön emailt. Éppen ezért alert a neve.

Másik megoldás, hogy egy after* triggerből hívunk egy job-ot, ami aszinkron, na de ennek valószínűleg egy web service-t kellene meghívni (ahogy az első megoldásnak is), amivel ki tudjuk ütni a cache-t.
Ez nem olyan nehéz, triggert írni, ami egy job-ot hív, ami egy web service-nek szól. De a bonyodalom kezdődik, mert ez egy cert-es net.tcp-s wcf service, wsse authentikációval, tehát a cert mellé kellene még küldeni folyton username jelszó párost, ezt összekonfigolni előre láthatóan sok nap szopás.

A kérdés tehát:
Tud valaki valamilyen jó megoldást arra, hogy oracle-ből hogyan szóljunk "fel" egy service-nek, hogy helló, ezt a cache-t ki kellene üríteni, és frissíteni, mert változott?

Jó megoldás jöhet balaton szeletért pl... vagy köszönömért.

Nincsenek megjegyzések:

Megjegyzés küldése