Možnosti hostování v technologii ASP.NET (C#)
ASP.NET webové aplikace se obvykle navrhují, vytvářejí a testují v místním vývojovém prostředí a jakmile budou připravené k vydání, je potřeba je nasadit do produkčního prostředí. Tento kurz poskytuje základní přehled procesu nasazení a slouží jako úvod k této sérii kurzů.
Úvod
Webové aplikace se obvykle navrhují, vytvářejí a testují ve vývojovém prostředí, které je přístupné pouze programátorům pracujícím na webu. Jakmile je aplikace připravená k vydání, přesune se do produkčního prostředí, kde k webu může přistupovat kdokoli z internetu. Tento proces nasazení přináší řadu výzev:
- Produkční prostředí musí existovat a musí být správně nastaveno před nasazením aplikace ASP.NET; Produkční prostředí navíc musí být aktuální s nejnovějšími opravami zabezpečení.
- Správná sada souborů značek, souborů kódu a podpůrných souborů se musí zkopírovat z vývojového prostředí do produkčního prostředí. U aplikací řízených daty to může vyžadovat také kopírování schématu databáze a/nebo dat.
- Mezi těmito dvěma prostředími můžou být rozdíly v konfiguraci. Připojovací řetězec databáze nebo e-mailový server použitý ve vývojovém prostředí se pravděpodobně bude lišit od produkčního prostředí. A co víc, chování aplikace může záviset na prostředí. Pokud například při vývoji dojde k chybě, podrobnosti o chybě se můžou zobrazit na obrazovce, ale když dojde k chybě v produkčním prostředí, měla by se místo toho zobrazit uživatelsky přívětivá chybová stránka a podrobnosti o chybě se pošle e-mailem vývojářům.
Aby se vymešil první úkol – nastavení a údržba produkčního prostředí – mnoho jednotlivců a firem outsourcuje své produkční prostředí poskytovatelům webhostingu. Poskytovatel webhostingu je společnost, která spravuje produkční prostředí vaším jménem. Existuje bezpočet poskytovatelů webových hostitelů, z nichž každý má různé ceny a úrovně služeb; Tipy k vyhledání takového poskytovatele služeb najdete v části "Vyhledání poskytovatele webového hostitele".
Toto je první z řady kurzů, které se zabývají postupem nasazení webové aplikace ASP.NET do produkčního prostředí spravovaného poskytovatelem webového hostitele. V průběhu těchto kurzů prozkoumáme:
- Jaké soubory je potřeba nasadit u poskytovatele webového hostitele.
- Nástroje pro zjednodušení procesu nasazení
- Postup nasazení databáze
- Tipy pro nasazení databáze, která používá zprostředkovatele členství a rolí založeného na SQL, spolu se způsoby, jak napodobit nástroj pro správu webu v produkčním prostředí.
- Strategie pro bezproblémovou aktualizaci databáze v produkčním prostředí pomocí změn provedených během vývoje
- Techniky protokolování chyb, ke kterým dochází v produkčním prostředí, a způsoby, jak upozornit vývojáře, když dojde k chybě.
Tyto kurzy jsou zaměřené na stručné a poskytují podrobné pokyny s velkým množstvím snímků obrazovky, které vás vizuálně provedou procesem. Tento úvodní kurz poskytuje přehled procesu nasazení ASP.NET a rady k vyhledání poskytovatele webhostingu. Pusťme se do toho.
Přehled procesu nasazení ASP.NET
Stručně řečeno, nasazení aplikace ASP.NET zahrnuje následující tři kroky:
- Nakonfigurujte webovou aplikaci, webový server a databázi v produkčním prostředí.
- Synchronizujte stránky ASP.NET, soubory kódu, sestavení ve
Bin
složce a podpůrné soubory související s HTML, jako jsou soubory CSS a JavaScript. - Synchronizujte schéma databáze nebo data.
Informace o konfiguraci webové aplikace se obvykle nacházejí v Web.config
souboru a zahrnují databázové připojovací řetězce, kritéria zpracování chyb, pravidla přepisu adres URL a informace o e-mailovém serveru. Tyto informace se často liší pro aplikaci ve vývoji a stejnou aplikaci v produkčním prostředí. Například při vývoji aplikace je nejlepší použít vývojovou databázi, abyste nettestování s produkční databází. V důsledku toho se připojovací řetězce databáze obvykle liší mezi vývojovými a produkčními aplikacemi. Vzhledem k těmto rozdílům zahrnuje část nasazení změny konfiguračních informací webové aplikace.
Kromě změn konfigurace webových aplikací může krok 1 zahrnovat také konfiguraci webového serveru a databáze. Pokud například ASP.NET stránka vytvoří nebo odstraní soubory z adresáře na webovém serveru, musí být webový server nakonfigurován tak, aby umožňoval tyto úpravy systému souborů. Podobně může existovat nastavení oprávnění nebo ověřování, které je potřeba provést v databázi.
Krok 2 zahrnuje synchronizaci sady základních ASP.NET stránek a podpůrných souborů mezi vývojovými a produkčními prostředími. Konkrétní sada souborů souvisejících s ASP.NET, které je potřeba synchronizovat mezi dvěma prostředími, závisí na typu projektu, který jste vytvořili v sadě Visual Studio, a jedná se o diskuzi v dalším kurzu Určení souborů , které je potřeba nasadit. Třetí a čtvrtý kurz nasazení webu pomocí ftp a nasazení webu pomocí sady Visual Studio prozkoumá různé nástroje a techniky pro synchronizaci těchto souborů.
Při vytváření aplikací řízených daty se obvykle používají dvě databáze: jedna pro vývoj a jedna v produkčním prostředí. Během vývoje může být schéma vývojové databáze změněno tak, aby zahrnovalo nové tabulky, sloupce, uložené procedury a triggery, nebo může být upraveno tak, aby odebralo nebo přejmenovalo existující databázové objekty. Mezi časem provedení těchto změn a nasazením aplikace do produkčního prostředí jsou vývojové a produkční databáze nesynchronní. Tuto asynchronii je potřeba opravit během procesu nasazení. Tyto výzvy budou prozkoumány v budoucích kurzech.
Vyhledání zprostředkovatele webového hostitele
ASP.NET aplikace lze nasadit na libovolný webový server s nainstalovaným rozhraním .NET Framework a Internetovou informační službou (IIS). Web můžete hostovat z osobního počítače za předpokladu, že máte širokopásmové připojení k internetu a víte, jak nakonfigurovat směrovač tak, aby povoloval příchozí webové požadavky. Stejně jako mnoho společností můžete hostovat web z počítače v intranetu. Cílem těchto kurzů je však hostování webu u poskytovatele webového hostitele.
Poznámka
SLUŽBA IIS je webový server Microsoftu na podnikové úrovni. Dodává se s edicemi Systému Windows, které nejsou home, například Windows Server 2008 a některé edice systému Windows Vista. Službu IIS není nutné instalovat, aby bylo ASP.NET aplikací ve vývojovém prostředí, protože sada Visual Studio obsahuje webový server pro vývoj ASP.NET. Webový server pro vývoj ASP.NET však přijímá pouze místní připojení, a proto ho nelze použít v produkčním prostředí.
Před nasazením webu na poskytovatele webového hostitele musíte nejprve rozhodnout, s jakou společností se bude obchodovat. Na marketplace je bezpočet webhostingových společností; hledání "webhostingová společnost" vrátí více než pět milionů výsledků. Jak najdeš ten, který je pro tebe ten pravý? Váš oblíbený vyhledávací web je dobrým výchozím místem, stejně jako weby jako TopHosts a HostCritique, které porovnávají a kontrastují různé hostingové služby. Také doporučuji požádat vaše kolegy a spolupracovníky o všechna doporučení; můžete také požádat o doporučení na hosting otevřené fórum zde na ASP.NET fóra.
Webhostingové společnosti obvykle nabízejí sdílené hostingové plány a vyhrazené hostingové plány. Při sdíleném hostování jeden webový server hostuje desítky, ne-li stovky různých webů. S vyhrazeným hostingem si pronajmete počítač od společnosti, která obsluhuje váš web a váš web sám. Sdílený plán hostování může zahrnovat podporu ASP.NET stránek, schopnost pracovat s databázemi Microsoft Accessu, 5 GB místa na disku a 100 GB měsíčního provozu šířky pásma za 9,95 USD za měsíc. Další sdílený plán hostování může zahrnovat podporu ASP.NET stránek, přístup k databázovému serveru Microsoft SQL Server 2008, 10 GB místa na disku a 250 GB měsíčního provozu šířky pásma za 19,95 USD za měsíc. Vyhrazené hostingové plány jsou obvykle mnohem dražší, stojí několik stovek dolarů měsíčně, ale nabízejí lepší výkon a větší kontrolu než možnosti sdíleného hostování. Jaký plán zvolíte, závisí na vašem rozpočtu, na tom, kolik provozu váš web přijímá, a na funkcích, které očekáváte, že budete potřebovat.
Při výběru poskytovatele webového hostitele je potřeba vzít v úvahu dva důležité aspekty: služby zákazníkům a kvalita služeb. Pokud máte dotaz nebo problém s konfigurací, jak dlouho trvá odeslání problému do helpdesku webového hostitele, než dostanete odpověď? Jak spolehlivé jsou služby společnosti? Dochází u nich často k výpadkům databáze? Jak často přejde jejich e-mailový server do offline režimu? Vždy můžete požádat společnost o poskytnutí podrobností o její době provozu a dotazování se na její zásady zákaznických služeb, ale jistější způsob, jak požádat o zpětnou vazbu od současných a minulých zákazníků, což můžete udělat prostřednictvím online fór, diskusních skupin a e-mailových seznamůserv.
Poznámka
Některé webhostingové společnosti se zaměřují na konkrétní technologii, jako je .NET nebo LAMP (L inux, A pache, M ySQL a P HP), takže se ujistěte, že vybraná společnost hostuje ASP.NET aplikace. Zkontrolujte také, jestli podporují verzi ASP.NET, kterou používáte k sestavení aplikace. A pokud vytváříte aplikaci řízenou daty, ujistěte se, že webový hostitel nabízí stejný databázový server a stejnou verzi, jakou používáte.
Souhrn
ASP.NET webové aplikace se obvykle navrhují, vytvářejí a testují v místním vývojovém prostředí. Jakmile je verze připravená k vydání, přesune se do produkčního prostředí. I když je možné hostovat ASP.NET weby na osobním počítači nebo na serverech v rámci vaší společnosti, mnoho firem a jednotlivců se rozhodne outsourcovat svůj hosting u poskytovatele webového hostitele.
Tato série kurzů se zabývá postupem nasazení aplikace ASP.NET do poskytovatele webového hostitele a zkoumá běžné výzvy. Tento kurz nabídl základní přehled procesu nasazení ASP.NET a tipy pro vyhledání vhodného poskytovatele webového hostitele. V dalším kurzu se dozvíte, jaké soubory související s ASP.NET je potřeba při nasazování webu zkopírovat do produkčního prostředí.
Šťastné programování!
Zvláštní díky...
Tato série kurzů byla zkontrolována mnoha užitečnými recenzenty. Hlavní revidující pro tento kurz byla Teresa Murphy. Chcete si projít moje nadcházející články na WEBU MSDN? Pokud ano, dejte mi čáru na mitchell@4GuysFromRolla.comadresu .