Aplicatii distribuite

Orice aplicatie care presupune interactiunea cu un utilizator are ca parti principale o parte de prezentare (interfata cu utilizatorul), o parte de logica a aplicatiei (calculele si cursul aplicatiei) si o parte de date (datele necesare partii de logica). Aceste parti pot fi implementate de un singur program (aplicatie monolitica) sau pot fi implementate pe mai multe nivele. Aceasta ultima varianta se imparte, la randul ei, in doua variante de implementare:

  • Aplicatii two-tier (aplicatii pe doua nivele). Aceste aplicatii grupeaza partea de prezentare si partea de logica a aplicatiei pe o masina client in timp ce partea de date este situata pe o masina server, tipul de aplicatii two-tier reprezentand de altfel modelul clasic client–server.
  • Aplicatii three-tier (aplicatii pe trei nivele). In cazul aplicatiilor de tip three-tier, cele trei parti sunt separate conceptual, ele putand fi situate fiecare pe un calculator diferit. Aceasta varianta permite o flexibilitate mai mare a aplicatiilor deoarece clientul poate apela la serviciile mai multor servere pentru a satisface o cerere, iar serverul la randul sau poate apela serviciile altei componente server.

Arhitectura sistemului prezentat in acest site este de tip 3-tier. Pe nivelul unu se afla baza de date, pe nivelul doi se afla un serviciu .Net care ruleaza pe un Server IIS capabil sa serveasca pagini Web, iar pe nivelul trei se afla aplicatia instalata pe PDA (capabila sa utilizeze ,“sa consume”, serviciile oferite de nivelul doi). In curand vom oferi (suntem in teste) pentru nivelul unu si doi o varianta care functioneaza pe sisteme de operare Linux, avand in spate o baza de date Postgres si doua variante de servere web open source (una foloseste SOAP peste PHP sub un server Apache clasic, iar cealalta expune sevicii web sub un server Apache Tomcat).

Cei interesati pot observa ca modelul de lucru ales permite prin natura lui interconectarea cu alte aplicatii folosind tehnologiile cele mai recente pe care le avem la indemana.