Преглед садржаја
Направите асинхрони контролер
Традиционално ток веб апликације је синхроно, то јест, шаљемо захтјев серверу и заустављамо се док чекамо одговор, до прије отприлике 5 година овај модел је био важећи, међутим с новим захтјевима и новим алатима већ нам је потребно нешто динамичније.
Асинхрона апликацијаАсинхрона апликација је она која нам омогућава да извршавамо различите активности које се међусобно не ометају, а свака се консултује са другим делом у односу на сервер, при чему спремајући документ можемо да се обратимо другом, без чекања на одговор, пример ове врсте апликација је Гмаил, где приликом слања е -поште можемо видети пријемно сандуче.
У овом одељку ћемо видети шта је асинхрони контролер и како га изградити помоћу АСП.НЕТ МВЦ.
Једна од најважнијих компоненти наших апликација су контролери, у АСП.НЕТ МВЦ можемо их натерати да раде асинхроно са овим можемо спречити да се процеси сруше док радимо упит.
Закључавање навојаИако је већина времена ова блокада толико мала да се чини да се неколико ствари ради истовремено, постоје случајеви када морамо припремити много тежи процес и он би блокирао радну нит на такав начин да процес гладовање, односно процеси који чекају нит толико дуго да умиру.
То се догађа зато што сервер почиње слагати процесе чекања и долази до тачке у којој се простор који може користити преплављује, при чему ћемо видети тако популарну 503 грешку услуге која није доступна, да бисмо то избегли можемо створити асинхрони контролер, што не скраћује време које ће процес трајати, али ослобађа нит обраде тако да га други процеси могу користити.
Да би наш контролер био асинхрони, морамо се придржавати основне структуре његових акција, на овај начин можемо постићи циљ, за то морамо следити неке конвенције утврђене оквиром. Да видимо шта нам треба:
Асинхрона акцијаМорамо створити акцију унутар нашег контролера која има реч Асинц у његово име тако по конвенцији АСП.НЕТ МВЦ знаћете шта је асинхрони процес. Пример може бити СеарцхБооксАсинц, додатно ова радња или метода мора ретурн воид.
Акција је завршенаЗатим морамо креирати акцију коју можемо позвати након што је асинхрони процес завршен, за то морамо створити радњу која може да поднесе повратак АцтионРесулт, за ово морамо створити метод са речју Цомплетед у ваше име, као што су: СеарцхБооксЦомплетед, са овим ћемо већ имати потребне основне елементе.
Као што видимо, не треба нам много за креирање асинхроног контролера, пре свега је потребно разрадити логику и мало следити конвенције како би оквир могао да одреди шта градимо у апликацији. Основе асинхроног програмирања у АСП.НЕТ МВЦ Они уопште нису сложени, у другом делу овог водича видећемо потпунији пример како створити асинхрони контролер поред других важних концепата.
Претходнастраница 1 од 2Следећи