A Subscription rendszer egy olyan központosított feliratkozó rendszer, ahol minden e-mail küldő rendszer fiókja és listái egy rendszeren belül kezelhető. A Subscription Center platform szükségességét az ügyfelünk rendszereinek sokfélesége tette elengedhetetlenné. A különböző site-ok különböző email listáinak kezelése és a felhasználók feliratkoztatása igen körülményes és nehézkes volt. A helyzetet tovább bonyolította, hogy több e-mail küldő rendszerrel kellett együtt dolgozni, többek között a Sales Force és a Sendgrid rendszerének valós idejű szinkronizációját kellett megoldani. A kaotikus helyzet megoldására készült el egy olyan központosított feliratkozó rendszer, ahol minden e-mail küldő rendszer fiókja és listái egy rendszeren belül kezelhetővé váltak. Egy központi rendszer, ami hidat képez a felhasználók és szolgáltatások között, és ahol minden beállítás egyszerűen és egy helyen kezelhető.
A platformokra úgynevezett feliratkoztató widgetek is létrehozhatóak, melyeket beillesztve egyszerűen és azonnal kerülhet be a feliratkozás bármely weboldalba, microsite-ba vagy egyéb kampányba. A platformok teljeskörű kiszolgálására SDK és API is rendelkezésre áll. A rendszer előnye – és egyben megtérülését is garantálja – hogy a folyamatosan fejlődő, változó levélküldő szolgáltatást nem kell minden összekötött alkalmazásban időről-időre frissiteni, csupán ezen az egy központi helyen.
A Subscription Center fejlesztésekor elsődleges szempont volt a kódbázis gyors és hatékony futása, mivel a felhasználók is azonnali reakciót várnak egy gomb megnyomásakor, a rendszerben pedig rengeteg egyidejű kérés fut be a szerverhez, ami feldolgozza a fel-, illetve leiratkozásokat. A kódbázis hatékonysága mellett szükség volt a megfelelő szerver infrastruktúra kialakítására és a szolgáltatások beágyazására. Jelenleg már több mint 3 millió felhasználó feliratkozását kezeli a platform, egyidejűleg két marketing rendszer felé, ami szükségessé tette az adatbázis szétosztását, shardolását, így a lekérdezések sebessége is megnőtt.
Az egyre több külső rendszerbe való integrálás miatt bevezettünk egy olyan Amazon Web Services (AWS) szolgáltatást is, amivel a feldolgozó szervert tehermentesítjük, mert először ebbe a queue-ba kerülnek be a kérések, majd ezeket a rekordokat first-in-first-out (FIFO) dolgozzuk fel. A terheléstől függően a feldolgozó script párhuzamosítható, így megnövekedett igénybevétel esetén több független feldolgozás indítható. Az SQS szolgáltatás további előnye, hogy ha bármilyen szerver oldali kimaradás keletkezik, akkor a beérkező kérések nem vesznek el, később is feldolgozhatóak maradnak.
Véleményünk szerint minden olyan nagyvállalatnál szükség lenne egy hasonló szolgáltatásra, ahol számos alkalmazás integrálja a vállalat levélküldő rendszerét vagy több, egymástól független rendszer kezeli a rekordokat és az adatbázis karbantartása, frissítése értékes munkaórákat égetve manuálisan történik.
Felhasznált technológiák: PHP, MySQL, iOS, Android, Sendgrid, SalesForce, RESTful API, AWS – Amazon Web Services, SQS, CodeIgniter