Loading…

Flash Player 9 (or above) is needed to view presentations.
We have detected that you do not have it on your computer. To install it, go here.

Like this presentation? Why not share!

WCF Einführung

on

  • 2,461 views

Erwerbung von Grundkenntnissen in der Anwendungsentwicklung mit der Windows Communication Foundation

Erwerbung von Grundkenntnissen in der Anwendungsentwicklung mit der Windows Communication Foundation

Statistics

Views

Total Views
2,461
Slideshare-icon Views on SlideShare
2,110
Embed Views
351

Actions

Likes
0
Downloads
18
Comments
0

2 Embeds 351

http://blog.johanneshoppe.de 350
http://static.slideshare.net 1

Accessibility

Categories

Upload Details

Uploaded via as Microsoft PowerPoint

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

    WCF Einführung WCF Einführung Presentation Transcript

    • SRH Hochschule Heidelberg
      Fachbereich Informatik
    • MSP – WCF Vorlesung
      25.03.2009
      90 Minuten, 8 Teilnehmer
    • 3
      Vorlesungsinhalt
      Ziel des praktischen Teils:
      Erwerbung von Grundkenntnissen in der Anwendungsentwicklung mit der Windows Communication Foundation
      Vorraussetzungen
      C# 3.0 / .NET 3.0 Grundkenntisse
      Microsoft Visual Studio 2005 / 2008
      Vertriebssysteme / CRM
    • 4
      Einführung
      Windows Communication Foundation (WCF):
      • Laufzeitumgebung
      • erlaubt es .NET CLR Typen für eine verteilte Kommunikation zu veröffentlichen (d.h. als Service zu agieren)
      • andere Services wie Applikations-eigene .NET CLR Typen zu konsumieren
       SOAP
      Vertriebssysteme / CRM
    • 5
      Einführung
      Windows Communication Foundation (WCF):
      • Vorgänger:
      • Enterprise Services“ (Namespace: System.EnterpriseServices),
      • „.NET Remoting“ (Namespace: SystemRuntime.‌Remoting)
      • ASP.NET Web Services (Namespace: System.Web.Services)
      • MSMQ (Microsoft Message Queuing – Namespace: System.Messaging)
      • unterstützt eine Vielzahl von Protokollen und bleibt so zu älteren Systemen abwärtskompatibel!
      Vertriebssysteme / CRM
    • 6
      Einführung
      Vertriebssysteme / CRM
    • 7
      Endpunkte
      • das Prinzip des Endpunkts
      • Endpunkt: „Anfang oder das Ende eines Nachrichtenaustauschs zwischen zwei verteilten Anwendungen“
      Vertriebssysteme / CRM
    • 8
      Endpunkte
      • Endpunkt beschreibt drei grundlegende Aspekte
      den Ort
      die Art und
      den inhaltlichen Rahmen der Kommunikation
      Vertriebssysteme / CRM
      A – Address (Adresse)
      B – Binding (Anbindung)
      C – Contract (Vertrag)
    • 9
      Kommunikationsmuster
      • Auch Message Exchange Patterns, „MEP“s
      1. Request-Reply
      2. Einweg
      3. Duplex
      Request-Reply
      Vertriebssysteme / CRM
    • 10
      Kommunikationsmuster
      Einweg
      Duplex
      Vertriebssysteme / CRM
    • 11
      Hosting und Instanzen
      Hosting:
      • innerhalb einer eigenen Anwendung (Self-Hosting)
      • Webserver „IIS“ / Service Host in einer ASP.NET Anwendung
      • IIS-Dienst „Windows Activation Service“ (WAS)
      Vertriebssysteme / CRM
    • 12
      Instanzen
      Per-Session Service:
      Standardeinstellungen von WCF
      Client und Server treten in eine Session (Sitzung)
      Jede Sitzung verbleibt bis zum zu ihrem Ende im Arbeitsspeicher
      Pro Sitzung gibt es eine spezielle Service-Instanz die sich in einem eigenen Context (Gültigkeitsbereich) befindet.
      [ServiceBehavior(InstanceContextMode = InstanceContextMode.PerSession)]
      Vertriebssysteme / CRM
    • 13
      Instanzen
      Per-Session Service:
      Vertriebssysteme / CRM
    • 14
      Instanzen
      Per-Call Service:
      auf Sitzungen verzichten.
      Statt der Beibehaltung der Daten im Arbeitsspeicher wird für jeden Methodenaufruf eine Service-Instanz erzeugt
      Der Arbeitsspeicher wird aufgeräumt, alle normalen Member-Variablen gehen wieder verloren
      Consumer merkt nichts von der verworfenen Instanz: Service Host lässt alle Verbindungen über einen Proxy bestehe
       Peformance-Empfehlung
      [ServiceBehavior(InstanceContextMode = InstanceContextMode.PerCall)]
      Vertriebssysteme / CRM
    • 15
      Instanzen
      Per-Call Service:
      auf Sitzungen verzichten.
      Statt der Beibehaltung der Daten im Arbeitsspeicher wird für jeden Methodenaufruf eine Service-Instanz erzeugt
      Der Arbeitsspeicher wird aufgeräumt, alle normalen Member-Variablen gehen wieder verloren
      Consumer merkt nichts von der verworfenen Instanz: Service Host lässt alle Verbindungen über einen Proxy bestehe
       Peformance-Empfehlung
      [ServiceBehavior(InstanceContextMode = InstanceContextMode.PerSession)]
      Vertriebssysteme / CRM
    • 16
      Instanzen
      Per-Call Service:
      • parallel ablaufende Per-Call Services:
      [ServiceBehavior(ConcurrencyMode = ConcurrencyMode.Multiple)]
      • Vorsicht: Zugriff auf gemeinsam genutzte Variablen
      • Locks notwendig
       Deadlocks können entstehen
      Vertriebssysteme / CRM
    • 17
      Instanzen
      Singleton Service:
      exakt eine Service-Instanz, die für alle Anfragen verwendet wird
      Bleibt bis zur Beendung des Service Host aktiv
      sind prinzipiell nicht skalierbar
      sollten nur in begründeten Fällen eingesetzt werden!
      z.B. Windows Dienst  Tray Applikation (muss nicht skalieren)
      [ServiceBehavior(InstanceContextMode = InstanceContextMode.Single)]
      Vertriebssysteme / CRM
    • 18
      Los geht’s!
      Vertriebssysteme / CRM
      Wir bauen uns einen Webservice mit Consumer!
    • Vielen Dank für eure Aufmerksamkeit!
      ENDE