Eksekvering/Otto Knudsen 1 Udrulning Publicering af en web-applikation.

Slides:



Advertisements
Lignende præsentationer
Trehøje-Pigerne Side 1 Vejledning til brug af hjemmesiden Det er slet ikke så vanskeligt – så brug hjemmesiden flittigt… Det er.
Advertisements

Hjemmesidekonstruktion Tjekspørgsmål 1.Hvad er et markup-sprog – hvad bruges det til? 2.Hvad er forskellen mellem et markup-sprog og et scriptsprog? 3.Hvad.
Web 2.0 Teoretisk viden.
Effektive procedurer med integrerede webservices Applikationer til Office - Smart Clients Case: Digitalt Forvaltningstjek hos Erhvervs- og Selskabsstyrelsen.
Maj 2003Introduktion til.NETs komponentmodel ved Henrik Lykke Nielsen1 Introduktion til.NETs komponentmodel Henrik Lykke Nielsen Softwarearkitekt Microsoft.
Introduktion til ASP.NET 2 Michell Cronberg Microsoft MVP, MCAD TechTalks hos Microsoft.
Masterpages/Otto Knudsen 1 Master Pages  Master Pages i ASP.NET 2.0.
1 Test – bl.a. med fokus på sharepoint løsninger Automatisering af deploy og test ifm. VSTS •Kort om build jobs med Team Foundation Server •Support for.
Beskyt din computer og dine data!
Atlas/Otto Knudsen 1 "Atlas"  AJAX Extensions til ASP.NET.
07 – Kort om OO Introduktion.
Mød Microsoft – for udviklere & arkitekter Smart klient som Office-applikation Erik Dibbern Röser Developer & Platform Strategy Group, Microsoft
Sikkerhed/Otto Knudsen 1 Sikkerhed  Sikkerhed i ASP.NET  Autentifikation (Authentication)  Autorisation (Authorization)
Sikkerhed/Otto Knudsen 1 Diagnostics  Debug af web-applikationer.
1 Build jobs med Team Foundation Server Baseret på 3 måneders erfaringer med Windows Mobile Projekter Baggrund – kort præsentation af projektet og mine.
1 Meget kort om Remote Debugger Og ligeså kort demo af Unity.
T1 – OPGAVE 14.2 LINETT & SABRINA Klasse Varer namespace Opgave_14._2 { class Varer { private string vare; private string farve; private double.
Distribueret programmering, specielt.NET Remoting Rasmus D. Lehrmann DM
DotNET Remoting Præsentation. Beskrivelse af arkitekturen i et dot NET program. Hvad er en Proxy. Klient, server og host begreberne. Marshaling. Eventuelt.
ASP.NET Extensions Jakob Tikjøb Andersen
Objekter og klasser Applikationsdesign Code Namespace Value og reference typer Reference type Rasmus D. Lehrmann1.
ASP.NET Cache, State DataGrid og Diagnostics. Agenda – ASP.NET Cache, State og Cookies ( 1 del ) –Cache –Static member –Application State –Session State.
Mød Microsoft – for udviklere & arkitekter Visual Studio, Express og Team System Niels Hilmar Madsen Microsoft
Masterpages/Otto Knudsen 1 Master Pages Master Pages i ASP.NET 2.0.
Introduktion/Otto Knudsen 1 Overblik WebForms ASP.NET.
Webserveren kan afvikle flere applikationer, der hver har deres eget selvstændige ”liv” og hukommelse. Den enkelte applikation består typisk af flere elementer.
Hvorfor trådning? Performance Responsivness. Succeskriterier Forbedring af performance –Opgaverne skal være uafhængige –Jo flere afhængige opgaver, jo.
Programmeringsteknologi
1..NET Arkitektur. 2 Nordjyllands Erhvervakademi Mål “Microsoft.NET is based on the Common Language Runtime (CLR) and an extensive set of Framework.
18 – Java Server Faces. 2 NOEA2009Java-kursus – JSF 2 Web-applikationer - 1 Brugere interagerer med en Web-browser Browseren sender forespørgsler til.
Uddannelse, marts 2007 Søren Vallø Business Development Manager.
Programmering af dynamiske websider pages/tutorials/introducing-aspnet- web-pages-2/intro-to-web-pages- programming.
SDP - Repetition Sockets Trådning Delegater Remoting Sprogteori
CLR (.NET) og JVM 1.NET vs. Java.NET har fokus på sprog-uafhængighed … Java har fokus på platforms-uafhængighed … Windows OS.NET CLR IL kode (.exe,.dll)
1 JavaServer Faces Copyright © Lund & Bendsen A/S JSF Lifecycle.
Programmeringsteknologi
Stig Irming-Pedersen ASP.NET MVC Partner Copenhagen Software.
Globaliseringsredegørelsen 24.mar. 14 Figurer fra Danmark tiltrækker for få udenlandske investeringer i Sådan ligger landet
BlueDoc 2.0 (C) 2003 TMA Components Web-integreret Intranet søgemaskine.
Videregående pc-vejledning Modul 07: Elektronisk post 60+Bornholm.
AJAX/Otto Knudsen 1 AJAX Motivation Definition. AJAX/Otto Knudsen 2 Motivation En typisk web-applikation er synkron klienten sender en forespørgsel og.
MSBuild & Team Build i C#/C++ solutions VSTS ERFA d. 25 November.
1 USB Gennemgang af installering af USB driver til ICT. Er fortaget på Windows XP.
Introduktion til sikkerhed i.NET Mark S. Rasmussen iPaper ApS
1..NET Arkitektur. Mål “Microsoft.NET is based on the Common Language Runtime (CLR) and an extensive set of Framework Class Libraries (FCL). The CLR defines.
Udrulning af Windows klienter via AD & RIS Søren Schimkat, Sys.Adm.
Webserveren kan afvikle flere applikationer, der hver har deres eget selvstændige ”liv” og hukommelse. Den enkelte applikation består typisk af flere elementer.
1..NET Arkitektur. 2 Nordjyllands Erhvervakademi Mål “Microsoft.NET is based on the Common Language Runtime (CLR) and an extensive set of Framework.
Objekter og klasser Rasmus D. Lehrmann DM
1 Team Build med Team Foundation Server 2008 Konfiguration og udvidelse af build jobs Kort præsentation Hvorfor bruge Team Build Afvikling af et build.
Masterpages/Otto Knudsen 1 Navigation på webstedet Kontroller til navigation mellem siderne på webstedet.
Comparable Students German Students Composite Pattern State Pattern Observer Pattern Collections Interfaces Abstrakte klasser Design Patterns.
Internetteknologi (ITNET2) Kort teknisk ASP.NET introduktion Mandag den 19/ Jesper Tørresø.
Internetteknologi (ITNET2) Præsentation 20: ASP.NET Introduktion ”Med Active Server Pages (ASP)”
Fremstilling af Simple WEB steder [ITPL] Foråret 2004
Webserveren kan afvikle flere applikationer, der hver har deres eget selvstændige ”liv” og hukommelse. Den enkelte applikation består typisk af flere elementer.
03 – Udtryk og metoder. 2 NOEA2009Java-kursus – Udtryk og metoder Udtryk i Java Java har standard udtrykene… Værditildeling Subrutiner og funktionskald.
Hvad består en distribueret applikation af ? Processer der kører på hver deres maskine Tråde - 1 eller flere "letvægtsprocesser" per proces Objekter i.
ASP.NET – web site publish. ASP.NET – site-version.
Intro Evaluering De sidste to gange?. HTTP, cookies og sessions Forelæsning nr 10 Tilbage til trafikken mellem server – client Sende HTTP-request og respons.
Masterpages/Otto Knudsen 1 Temaer (Themes) Stylesheets til ASP.NET web-applikationer.
Client / Server teknologi Eksamensteori Anbefaling: Tag notater.
Web Services. OO (C++/ C#/Java) COM DCOM Web Services.
1 | 2011 ASP.NET Framework i et webform/page perspektiv The Framework to a page.
Programmering I Java/C# Datatekniker Dit første projekt.
ISS webserver og web applikationer
WebApi service x.
Simpel test-client (javascript) Session og Application data
Kode til Event på Kontrol
Modul 07, Elektronisk post
Præsentationens transcript:

Eksekvering/Otto Knudsen 1 Udrulning Publicering af en web-applikation

Eksekvering/Otto Knudsen 2 Eksempel Lad os publicere Calculator-applikationen: hvad er en web-applikation helt præcis? hvordan eksekveres web-applikationen? hvor er.NET koden?

Eksekvering/Otto Knudsen 3 Publicering fra Visual Studio Build >> Publish Web Site Man kan publicere direkte til en web-server – eller man kan publicere til et lokalt filsystem og kopiere filerne selv Pga. en fejl i VS 2005, så må URL'en ikke hedde det samme som projektet — derfor publiceres applikationen under "

Eksekvering/Otto Knudsen 4 Hvad sker der rent faktisk? "code-behind"-koden kompileres til en.NET assembly (.dll)

Eksekvering/Otto Knudsen 5 Hvor findes "code-behind"-koden? Web-siden indeholder direktiver til den underliggende.dll.. public partial class _Default : System.Web.UI.Page { protected void cmdAdd_Click(…) { // click event } public partial class _Default : System.Web.UI.Page { protected void cmdAdd_Click(…) { // click event }

Eksekvering/Otto Knudsen 6 ASP.NET Applikationer Hvad præcis er en ASP.NET applikation?

Eksekvering/Otto Knudsen 7 ASP.NET Applikationer En ASP.NET applikation = web-sider +.dll + web.config Web-siderne indeholder HTML markup.dll'en indeholder den kompilerede.NET-kode til web-siderne web.config indeholder konfigurationen (sikkerhed, datakilder, osv.) Web-server ?

Eksekvering/Otto Knudsen 8 Første kald … Hele applikationen er kompileret! Alt indhold af.aspx-filerne er om- dannet til klasseerklæringer klasser er kompileret til en eller flere.dll'er code-behind.dll skyggekopieres, så originalerne kan opdateres kald rederigeres nu til kompilerede assemblies [ kompileringen forklarer tidsforsinkelsen ved første kald til web- siden ] Fuldstændig kompilering øger ydeevnen Ift. server-side scripts (fx klassisk ASP, Perl, PHP, …)

Eksekvering/Otto Knudsen 9 Eksempel Publicér Calculator … Gå til WebCalculator … Web-server.dll request.dll response

Eksekvering/Otto Knudsen 10 Fra.aspx til klasser Code-behind => base class,.aspx => derived class public partial class _Default : System.Web.UI.Page { void btnAdd_Click(object sender, EventArgs e) { int i = int.Parse(txtNumber1.Text);... }. public partial class _Default { protected TextBox tbxNumber1; protected TextBox tbxNumber2; protected Button btnAdd;. } namespace ASP { public class Default_aspx : _Default { void BuildControlTree() { this.AddParsedSubObject(" \r\n"); this.AddParsedSubObject( new HtmlHead() ); this.AddParsedSubObject(" \r\n"); this.AddParsedSubObject( new HtmlForm() ); this.AddParsedSubObject(" \r\n \r\n"); }.

Eksekvering/Otto Knudsen 11 Eksekveringsmodellen Eksekveringen af ASP.NET applikationer

Eksekvering/Otto Knudsen 12 (1) Eksekveringen begynder … Eksekveringen begynder ved en klients første kald … Web-server klient- browser hent "page.aspx" Web- side

Eksekvering/Otto Knudsen 13 (2) Kompilering og load af Web-applikationen … Web-applikationen kompileres – om nødvendigt.dll'erne hentes ind i hukommelsen – om nødvendigt Side-objekterne instantieres og en serie hændelser inditræffer: PreInit, …, Load, …, Render, … Web-server.dll ASP.NET CLR Side

Eksekvering/Otto Knudsen 14 (3) Siden sendes tilbage som HTML … Output fra sidens Render-hændelse sendes tilbage til klienten response… Web-server.dll ASP.NET CLR Side

Eksekvering/Otto Knudsen 15 (4) Næste trin afhænger af klienten … Klienten forespørger måske på en ny side eller POST'er den samme side tilbage post-back Web-server.dll ASP.NET CLR Side

Eksekvering/Otto Knudsen 16 (5) Post-back … Ligesom før instantieres side-objektet og HTML'en dannes Forskelle: UI-objekter udfyldes med klientens værdier (fx indtastningsfelter) UI-hændelser eksekveres efter Load men før Render (fx knaptryk) btnAdd_Click(…) { int i = tbxNumber1.Text;. lblResult.Text =...; } btnAdd_Click(…) { int i = tbxNumber1.Text;. lblResult.Text =...; } Web-server.dll ASP.NET CLR Side

Eksekvering/Otto Knudsen 17 Observationer ASP.NET applikationer er kompilerede ASP.NET applikationer omdannes til HTML ASP.NET er en "server-side"-teknologi som standard sker al kodeeksekvering på serveren Det er ofte nødvendigt at benytte sig af post-back Sider eksekveres forskelligt, alt efter om det er første kald eller post-back det er vigtigt at holde sig for øje, når man programmerer … protected void Page_Load(object sender, EventArgs e) { if (this.IsPostBack) // Drop initialiseringen return; else this.lblDirectory.Text = GetSourceDir(); } protected void Page_Load(object sender, EventArgs e) { if (this.IsPostBack) // Drop initialiseringen return; else this.lblDirectory.Text = GetSourceDir(); }

Eksekvering/Otto Knudsen 18 IIS IIS – Microsofts Web-server

Eksekvering/Otto Knudsen 19 IIS (inetinfo.exe) Internet Information Services (IIS) IIS er Microsofts kommercielle web-server leveres sammen med XP Pro, Windows 2000/2003 og Vista installeres via kontrolpanelet: Tilføj/Fjern Programmer ASP.NET er et IIS plug-in installeres, når Visual Studio eller.NET installeres kører uden for IIS af sikkerhedshensyn ISAPI Extension Manager ASPNET_ISAPI.DLL ASP.NET ISAPI extension HTTP Request ASP.NET worker process (ASPNET_WP.EXE).NET CLR ASP.NET

Eksekvering/Otto Knudsen 20 Calculator-applikationen i IIS'en Alting hentes ind i "worker"-processen ….NET danner en AppDomain (sikkerhedsgrænse) til at indeholde applikationen ved første kald henter ASP.NET dll'erne ASPNET_WP.EXE.NET CLR AppDomain ASP.NET App.dll Side

Eksekvering/Otto Knudsen 21 IIS'en er trådet.NET CLR er trådet for at kunne håndtere flere klienter En side-forespørgsel tilordnes en tråd fra CLR'ens thread pool Konsekvenser? ASP.NET applikationer er trådede ASPNET_WP.EXE.NET CLR AppDomain ASP.NET T1T2T3 Page

Eksekvering/Otto Knudsen 22 Konfiguration af IIS'en IIS er konfigureret automatisk via Visual Studio 2005 Hvis man selv vil konfigurere IIS'en: Kontrolpanel, Administration, Internet Information Services

Eksekvering/Otto Knudsen 23 Hvad så? Øvelse #2

Eksekvering/Otto Knudsen 24 …