Utilizarea bazelor de date in Internet. Arhitecturi pentrut accesarea bazelor de date n Intranet/Internet
1. Introducere
Paginile Web dinamice sunt folosite atunci cand se doreste modificarea dinamica, a continutului paginilor Web. Paginile Web realizate in limbajul HTML au dezavantajul ca sunt statice, continutul lor neputand fi modificat odata ce au fost încarcate pe un server decat aducandu-le înapoi pentru a fi editate. Acest lucru este o problema serioasa avand in vedere ca operatia este mare consumatoare de timp. in plus, lucrul cu baze de date nu este posibil in cazul paginilor statice.
Spre exemplu daca avem un site de Web format doar din pagini HTML care afiseaza notele si mediile studentilor pe serii si pe grupe si vrem sa mai adaugam înca un student va trebui sa modificam atat pagina grupei cat si pagina seriei 23123b18x precum si pe cele de medii. Acest fapt este neplacut si îngreuneaza foarte mult munca.
Solutia care se adopta in astfel de situatii este plasarea informatiilor într-o baza de date si accesarea lor ori de cate ori se cere acest lucru de cineva. Mai exact in loc sa se creeze 3-4 pagini Web in HTML care sa fie modificate ori de cate ori apare o schimbare, se va crea o baza de date si cateva scripturi pe partea de server prin care vor construi dinamic, paginile HTML care vor fi afisate. Schimbarile se vor face doar la nivelul bazei de date ceea ce e mult mai simplu.
Paginile Web se clasifica in functie de natura continutului in pagini statice si pagini dinamice
Principalele caracteristici ale paginile Web statice sunt:
Paginile Web dinamice se caracterizeaza prin urmatoarele:
In functie de locul in care este evidentiat caracterul dinamic al paginilor exista pagini dinamice pe parte de client si pagini dinamice pe partea de server.
1.Pagini dinamice pe partea client
Exista mai multe tehnologii care permit realizarea de pagini dinamice pe partea de client. Dintre acestea se enumera:
scripturi pe partea de client (client side scripts) -JavaScript
DHTML (Dynamic HTML)
Applet-uri Java
Controale ActiveX
Elemente multimedia
Scripturile pe partea de client (client side scripts) sunt secvente de program incluse in pagina HTML care se executa de catre navigator. Secventele de program sunt incluse prin marcatorul <SCRIPT> sau in proprietatile anumitor componente HTML ca raspuns la diferite evenimente.
Limbajele utilizate pentru a realiza scripturi pe partea de client sunt JavaScript, Jscript si VBScript. Secventele de program scrise folosind aceste scripturi nu ofera acces la resursele sistemului local (fisiere, retea).
Scripturile pe partea de client sunt utilizate pentru asigurarea interactivitatii (meniuri), pentru validarea formularelor, pentru a crea diferite efecte, pentru efectuarea de calcule, diverse elemente de animatie etc.
DHTML (Dynamic HTML) este o tehnologie dezvoltata de Microsoft care combina HTML, foi de stiluri (CSS) si script-uri pentru a realiza pagini Web dinamice sau interactive. Permite utilizatorilor sa interactioneze cu pagina fara a retrimite o cerere la serverul Web. Applet-uri Java reprezinta aplicatii de dimensiune redusa, scrise in limbajul Java. Codul binar al aplicatie este descarcat pe masina client de pe server si executat local, in masina virtuala Java (JVM). Aproape toate calculatoarele permit executia applet-urilor, însa pentru functionarea acestora este necesara instalarea unei masini virtuale Java. În cadrul paginii HTML applet-urile sunt incluse prin intermediul marcatorilor <APPLET> sau <OBJECT>. Din applet-urile Java nu este permis accesul la sistemul local de fisiere si la retea, astfel riscul ca aceste aplicatii sa contina cod malitios sunt reduse.
Controalele ActiveX sunt componente binare incluse in paginile Web pentru a oferi interactivitate. Sunt asemanatoare applet-urilor, însa spre deosebire de acestea ruleaza pe platforma Windows si au fost dezvoltate in special pentru Internet Explorer.
Controalele ActiveX sunt incluse in cadrul paginii Web print intermediul marcatorului <OBJECT>.
Spre deosebire de scripturile pe partea de client, nu au restrictii in ceea ce priveste accesul la disc, ceea ce face ca anumite componente de acest tip sa fie susceptibile de cod rauvoitor, asemanator virusilor, viermilor sau cailor troieni. De aceea, in cazul in care o pagina contine controale ActiveX, navigatorul printr-o fereastra de dialog cere confirmarea utilizatorului pentru instalarea si rularea acestora.
Elemente multimedia sunt dezvoltate in general folosind produsul Macromedia Flash. Acestea se prezinta sub forma de fisiere SWF multimedia si sunt incluse in pagina Web prin intermediul marcatorului <OBJECT>. Pentru a putea rula pe partea de client aceste fisiere este necesara instalarea unui plug-in denumit Macromedia Shockwave Player.
Fisierele multimedia Flash se realizeaza sub forma unor filme, care sunt proiectate cadru cu cadru. Acestea ofera diverse efecte multimedia (animatie, sunet) si permit interactivitatea cu utilizatorul. Sunt utilizate pentru meniuri, jocuri, filme de animatie etc. Ele permit si programare prin intermediul limbajului Action Script.
2. Pagini dinamice generate pe partea server
Interpretorul de scripturi tip server-side are rolul de a executa scripturi la cererea serverului de Web, de cele mai multe ori de a prelua rezultatul unor interogari la nivelul bazelor de date si de a trimite spre serverul Web rezultatul executiei scripturilor sub forma de continut HTML pentru a putea fi afisat de catre navigator. In momentul în care serverului Web i se solicita rularea unui script, acesta identifica in functie de extensia fisierului care din compilatoare trebuie sa ruleze scriptul respectiv.
Fiecarui interpretor de scripturi se asociaza unui limbaj de server-side scripting. Limbajele populare ale momentului sunt: PHP (Personal Home Pages, acum Hypertext Preprocessor), ASP (Active Server Pages), ASP.NET si JSP (Java Server Pages). La acestea se mai adauga si o serie de alte tehnologii de interes mai restrans.
Caracteristicile generate ale paginilor Web dinamice generate pe partea de server, indiferent de limbajul de scripting folosit sunt:
Accesarea bazelor de date. Baze de date on-line
2.1 Principii de functionare.
Plasarea pe Internet a unor colectii complexe de informatii presupune stocarea acestora in baze de date care pot fi apoi accesate online de catre utilizatori. Termenul de baza de date poate fi usor înselator deoarece în realitate sistemul care face vizibila aceasta baza de date pe Internet este mult mai complex.
Orice
baza de date care ofera informatii utilizatorilor de servicii Internet trebuie
stocata pe un server care este vizibil pe Internet si sa
foloseasca o tehnologie de scripting. Informatiile din
baza de date trebuie extrase in conformitate cu nevoile specifice ale
utilizatorului si apoi formatate astfel meat sa fie
corect afisate. Spre exemplu, cand cineva scrie cuvantul "
Arhitectura serverului WEB cu suport de scripting
Dupa cum se observa din figura de mai sus arhitectura sistemului este structurata pe mai multe nivele. în momentul in care utilizatorul extern doreste sa acceseze informatii situate pe server, el va folosi un navigator Internet pentru a se conecta la acesta. Accesarea serverul se face prin intermediul unui URL.
Elementele principale care intra in componenta arhitecturii serverului sunt: serverul Web, interpretorul de scripturi tip server-side, driverele de acces la baza de date, baza de date si colectiile de fisiere.
Serverul Web care este o aplicatie complexa responsabila pentru comunicarea cu navigatoarele externe. Practic serverul de Web asculta portul HTTP (implicit 80) al masinii pe care este instalat. În momentul in care soseste o cerere pe acest port, serverul de Web o interpreteaza pentru a vedea ce informatii au fost solicitate. Informatiile solicitate de la server sunt de fapt fisiere care se afla pe hard-disc. Serverul de Web are rolul de a împacheta aceste fisiere astfel încât ele sa poata fi trimise mai departe. Fisierele solicitate pot fi împartite in doua categorii:
Rolul interpretorului de scripturi tip server-side a fost descris anterior. In cazul in care un script are nevoie de înregistrari dintr-o baza de date acesta va interactiona cu acesta prin intermediul unui driver. El va executa in SQL o cerere la nivelul bazei de date, in urma executiei acestei cereri i se returneaza un cursor. Prelucrand acest cursor se genereaza cod HTML care odata ajuns la un navigator determina afisarea datelor dorite.
Driverele de acces la baza de date au menirea de a mijloci interactiunea dintre interpretorul de scripturi si baza de date propriu-zisa. Ele sunt instrumente software foarte specializate care de obicei nu sunt vizibile nici programatorului nici utilizatorului. Driverele sunt importante deoarece alegerea lor eronata afecteaza semnificativ performance sistemului.
Baza de date consta dintr-un SGBD (sistem de gestiune a bazelor de date) relational care este fie instalat pe masina pe care se afla serverul Web, fie este accesibil prin retea sau Internet, fund pe alta masina. Teoretic orice SGBD relational poate fi folosit pentru a stoca datele necesare unui server de Web. Practic, s-a observat ca SGBD-urile simple cum ar fi Fox Pro sau Access nu se preteaza pentru site-uri Web care sunt folosite intens. Pentru aplicatiile Web de dimensiune mare este nevoie de SGBD-uri de mare performanta capabile sa ruleze multe cereri simultan. Pentru siteuri cu accesari putine se pot folosi Access sau Vfoxpro, solutie nerecomandata. Totusi, principalele SGBD-uri folosite in aplicatiile Web sunt: mySQL, SQL Server si Oracle.
Colectiile de fisiere sunt informatii cu caracter static care sunt trimise utilizatorilor la cerere.
|