Asynchronous ASP.NET Programming

Jeff Prosise
Cofounder, Wintellect (www.wintellect.com)

Asynchrone ASP.NET

Det finns två olika sätt att göra sina aspx-sidor asynchrona men den som har mest möjligheter är AsyncTask. Anledningen till att man vill göra sinaaspx-sidor asynchrona är för att annars kan det inträffa att man får 503: Server Cannot responde-fel vid hög belastning eftersom arbetstrådarna i IIS’en tar slut. Många gånger när dessa tar slut så är det enda de flesta av trådarna gör är vänta på att en kommunikation med en extern källa ska bli klar. Därför ska man alltid se till att programmera så att all kommunikation med externa källor som t.ex. databaser och webbservicer är asynchrona.

Det går att skapa egna HTTP-Handles för att effektivisera när man t.ex. vill hämta upp bilder dynamiskt från databas eller webbservice. Dessa handles går också att göra asynchrona. Jag såg inget direkt behov av detta hos oss eftersom vi har alla våra bilder på hårddisk, men absolut något att titta på om man har lite tid över för man kan alltid hitta något användningsområde.

Det går också att bygga egna HTTP-Modules och stoppa in i IIS’en. En IIS-Module är en modul som bearbetar ett request innan det går vidare till själva http-handle’n och aspx-sidan. Här kan man lägga till egna moduler för att t.ex. kolla efter sql-injections försök och hindra dessa request innan de ens når webbsidorna. Det går även att t.ex. göra sin egen loggning om man vill det. Här ser jag lite användningsområden för oss och det är dels för att filtrera bort skit-request som är hackningsförsök samt att göra en extremt snabb loggning av ljudet så att det alltid går att säga vilket ljud som är det mest lyssnade på och liknande.

Kommentera

Fyll i dina uppgifter nedan eller klicka på en ikon för att logga in:

WordPress.com Logo

Du kommenterar med ditt WordPress.com-konto. Logga ut / Ändra )

Twitter-bild

Du kommenterar med ditt Twitter-konto. Logga ut / Ändra )

Facebook-foto

Du kommenterar med ditt Facebook-konto. Logga ut / Ändra )

Google+ photo

Du kommenterar med ditt Google+-konto. Logga ut / Ändra )

Ansluter till %s


%d bloggare gillar detta: