Diplomitöö: ASP.NET veebirakenduse optimeermine meediaorganisatsiooni näitel
Siin lehel kirjutan oma diplomitööd. Alustan 19.märtsil probleemi kirjeldusega.
1. Probleemi kirjeldus
1.1 Olemasolev lahendus
Meediaorganisatsiooni näitena kasutatakse Eesti Rahvusringhäälingut, mis tegutseb internetimeedia turul ja haldab enam kui kahtekümment portaali ja milledest hetkel kaheksa kasutab .NET platvormi. Need on sisuliselt erinevad, kuid kõikide näol on tegemist põhimõtteliselt eelkõige uudiste portaaliga. Ainus erand on otse, mis võimaldab kasutajatel vaadata veebist internetiülekandeid. Kuna ettevõtte eesmärgiks on turul laieneda ja kasutusele võtta igal pool ühtne platvorm, siis kasutavad osad portaalid juba .NET tehnoloogiat. Samal ajal tuuakse ka teisi portaale aktiivselt .NET raamistikule.
Hetkel arendatakse uusi portaale .NET 4 raamistikule. Samuti on säilinud vanast ajast .NET 2 raamistikul töötavaid portaale, mida püütakse vastavalt ressursivõimalikusele tuua üle uuema raamistiku peale.
Loodud rakendused kasutavad enamus Visual Basic ja C# programeerimiskeelt.
.NET portaalide haldamiseks on hetkel kasutada ainult üks server ning täiendavad investeeringud riistvarale on välistatud.
Andmebaasi platvormina hakati hiljuti kasutama SQL Server 2008 R2 Standard väljaanet. Enne seda oli kasutusel piiratud võimalustega Express versioon.
1.2 Probleem
Teise põlvkonna portaalide jaoks loodud lahendus valmis kiirustades, kuna seda oli vaja kiiresti ja programmeerijaid vähe. See tõttu puudus oodatava süsteemi kohta analüüs. Rakenduse loomiseks kasutati võtteid, mis kiirendasid küll selle valmimise kiirust, kuid paratamatult kannatas selle all jõudlus. Enne ametlikku kasutuselevõttu ei olnud võimalik teha süsteemile korraliku jõudlustesti, mis näidanuks tema toimimist suure koormuse korral. Sellel hetkel kasutas seda lahendust üks portaal ja .NET lahendusi oli vähem.
Poole aasta jooksul on lisandunud uusi .NET portaale, milledest enamus kasub eelpool mainitud lahendust. Viimasel ajal on esinenud suurte koormuste korral märgatavaid jõudlusprobleeme. Üheks põhjuseks on kindlasti asjaolu, et kõiki .NET portaalide haldamiseks on kasutada ainult üks server. Ehk kui üks portaal hakkab kasutama väga palju ressursse, siis mõjutab see ka teiste portaalide tööd. See on kindlasti ka üheks turvanõrkuseks - leides ühel leheküljel ressursinõudliku protseduuri, saab seda kasutada kõikide .NET portaalide töö häirimiseks. Halvimal juhul lõpeb see serveri töö seiskumisega. Täiendavad investeeringud riistvarasse on aga välistatud, et kasvatada serveripargi jõudlust. Kuna organisatsioon tegutseb internetimeedia turul ja laieneb sellel pidevalt, siis häired veebirakenduste töös mõjuvad mainele negatiivselt ning on oht kaotada külastajaid.
Lähiajal on lisandumas antud serverile veel kaks täiesti uut portaali. Lisaks peavad hakkama mõned esimese põlvkonna portaalid kasutama hakkama ka "uut mootorit". Kuna juba praegu esineb jõudlusprobleeme, tuleb enne seda parandada olemasolevate portaalide jõudlust. Selle tõttu on vaja olemasolevaid rakendusi optimeerida. Lisaks ei pruugi riistvara soetamine alati olla ka lahendus nagu seda näitavad ka meie digiretsept või valimistulemustesüsteem.
Tegemist on tänapäeval väga aktuaalse probleemiga, mis ei puuduta ainult näitena toodud organisatsiooni. Kasutades optimeerimist ei tööta veebirakendused mitte ainult kiirendusi, vaid võib ära hoida ka täiendavaid lisakulutusi riistvara soetamiseks, millega loodetakse nii probleeme lahendada.