Ez a cikk egy tükör gépi fordítás, kérjük, kattintson ide, hogy ugorjon az eredeti cikkre.

Nézet: 20310|Válasz: 0

[ASP.NET] ASP.NET aszinkron vezérlőket használunk az MVC-ben

[Linket másol]
Közzétéve 2018. 04. 01. 15:20:59 | | |
Szál medence

Mindig is szerettem volna átírni a projektet aszinkronra, de az ASP.NETMVC3 túl nehézkes az íráshoz, a .NET 4.5 és ASP.NET MVC kód viszonylag egyszerű, az MS mindig is szerette ezt csinálni, minden érett dolgot, több verziót kell fejlesztenie, hogy szabványosítsa magát. ASP.NET miért kell aszinkront használni az MVC-ben, az IIS-nek van egy szálkészlete a felhasználói kérések feldolgozására, azonban amikor új kérés érkezik, a pool szálai időzítve lesznek a kérés feldolgozására, de ha a párhuzamosság magas, a pool szálai már nem tudják kielégíteni a kérést, és minden szál a pool alatt foglalt a kérés feldolgozásakor, a kérést feldolgozó szál blokkolódik, és a szál nem tud szolgáltatást nyújtani egy másik kérésnek, ha a kéréssorban megtel, a web A szerver elutasítja a kérést, és HTTP 503 foglalt állapotban van. Ha nagy késleltetéssel küzdsz, például hálózati műveletekkel, ezek a szálak többsége csak várja az állapotot, és többnyire semmit sem csinál, az ilyen szálak aszinkron programozással is jobban kihasználhatják azt.

Aszinkron feldolgozás

Például, ha egy kérés olyan hálózati hívást generál, amelynek teljesítése két másodpercig tart, akkor a kérés megtörténikKét másodperc alatt egyszerre szinkronban és aszinkronban is végrehajtják。 DeAszinkron hívás során a szerver nem blokkolja a válaszokat más kérésekre, amíg az első kérés befejeződik.。 Ezért, amikor sok kérés hív hosszú ideig futó műveleteket, az aszinkron kérések megakadályozhatják a sorba állást. A .NET 4.5-ben a maximális szálkészlet 5000, és a .NET 4.5-ben is hozzáadták a wait és aszinkron kulcsszavakat az aszinkron programozás egyszerűsítése érdekében.

Szinkron vagy aszinkron (részlet az MSDN-ből)

  • Általában a szinkron pipeline-okat akkor használják, ha a következő feltételek teljesülnek:
  • Egyszerű üzemeltetés vagy rövid futásidő.
  • Az egyszerűség fontosabb, mint a hatékonyság.
  • Ez a művelet elsősorban CPU-s műveletekről szól, nem pedig olyan műveletekről, amelyek nagy lemez- vagy hálózati többletterhelést igényelnek. Az aszinkron működési módszer használata CPU-hoz kötött műveletekhez nem jár előnyt, és több többletterhelést is eredményez.

Általánosságban az aszinkron pipeline-eket akkor használják, ha a következő feltételek teljesülnek:

  • A műveletek hálózathoz vagy I/O-hoz kötöttek, nem CPU-hoz kötöttek.
  • Tesztek kimutatták, hogy a blokkolási műveletek szűk keresztmetszetet jelentenek a helyszín teljesítményében, és aszinkron módszerek alkalmazásával az IIS több kérést tud szolgáltatni.
  • A párhuzamosság fontosabb, mint a kód egyszerűsége.
  • Olyan mechanizmust szeretnél biztosítani, amely lehetővé teszi a felhasználók számára, hogy hosszú ideig tartó kéréseket töröljenek.

ASP.NET aszinkron vezérlőket használunk az MVC-ben






Előző:WPF mvvm framework stylet dokumentumfordítás és tanulási anyagok
Következő:[Windows API] Kódasszisztens C# Query API-hoz [forráskóddal]
Lemondás:
A Code Farmer Network által közzétett összes szoftver, programozási anyag vagy cikk kizárólag tanulási és kutatási célokra szolgál; A fenti tartalmat nem szabad kereskedelmi vagy illegális célokra használni, különben a felhasználók viselik az összes következményet. Az oldalon található információk az internetről származnak, és a szerzői jogi vitáknak semmi köze ehhez az oldalhoz. A fenti tartalmat a letöltés után 24 órán belül teljesen törölni kell a számítógépéről. Ha tetszik a program, kérjük, támogassa a valódi szoftvert, vásároljon regisztrációt, és szerezzen jobb hiteles szolgáltatásokat. Ha bármilyen jogsértés történik, kérjük, vegye fel velünk a kapcsolatot e-mailben.

Mail To:help@itsvse.com