Cachingverfahren und Proxies Teil 1

Slides:



Advertisements
Ähnliche Präsentationen
Be.as WEB Technologie
Advertisements

1 Multicast Routing in Ad Hoc Netzen.ppt Oliver Finger_ TECHNISCHE UNIVERSITÄT ZU BRAUNSCHWEIG CAROLO-WILHELMINA Institut für Betriebssysteme und.
Routing – Routing Protokolle
Entwicklung UnivIS-Anbindung auf Basis von PHP und DOM-XML
Universität Rostock Fakultät für Informatik und Elektrotechnik Institut für Informatik, Lehrstuhl DBIS Albert-Einstein-Straße 21, D Rostock Putbus,
Aufbau des Internets Überblick Prof. Dr. T. Hildebrandt
Basis-Architekturen für Web-Anwendungen
© 2003 Guido Badertscher Spontane Vernetzung - UPnP 9. Jänner 2004 Spontane Vernetzung Guido Badertscher.
Datenbankzugriff im WWW (Kommerzielle Systeme)
Content Management Systems
Lightweight Directory Access Protocol
NATURAL Web-Integration 1 / 27/28-Feb-98 TST NATURAL Web-Integration Arbeitskreis NATURAL Süd Theo Straeten SAG Systemhaus GmbH Technologieberater Stuttgart.
Effizienz: Indexstrukturen
Simon Georg Pinkel Alice Server Pages Funktionale Programmierung und das Web.
Anfragesprachen – Dipl. Ing. Ulrich Borchert / FH Merseburg1/7 Information Retrieval auf Texten An ihre Grenzen stoßen relationale Datenbanken bei der.
Web 3.0 – Programmierung – Semantic Web / CIDOC CRM
Datenbankanbindung mit ASP Wilhelm-Schickard-Schule Tübingen
1 Linux Paging, Caching und Swapping. 1 Vortragsstruktur Paging – Das Virtuelle Speichermodell –Die Page Table im Detail –Page Allocation und Page Deallocation.
Technik Gestaltung Navigation Daten. Übersicht Client Webbrowser InternetServer.
XML in Client-Server und GRID Architektur
Signalisierung von Benutzeranforderungen zur Anpassung von Videoströmen
Grundlagen von Content Delivery Networks
Routingverfahren in Content Delivery Networks
Content-Server Content Infra- struktur Streams Lösung Johannes Kohlmann, Universität Mannheim Content Server Johannes Kohlmann.
ROUTINGVERFAHREN ZUR LASTVERTEILUNG IN CONTENT-DELIVERY-NETWORKS
Algorithmen zur Unterstützung von Immersive Gaming
1 Thomas Butter Content Delivery Networks Peer-to-Peer Netze Thomas Butter
Datenmanagement in Sensornetzen PRESTO - Feedback gesteuertes Datenmanagement - SS 2007 Sören Wenzlaff.
Einführung in die Technik des Internets
Seite Common Gateway Interface. Konzepte. Übersicht 1Einleitung 2Was ist CGI? 3Wozu wird CGI verwendet? 4Geschichtlicher Überblick 5Grundvoraussetzungen.
Mobile Datenbanken und Informationssysteme
Evaluierung des ITU-T.124 Telekonferenzstandards
von Julia Pfander und Katja Holzapfel E 12/2
Mark Doll – 1/21V3D2 Workshop 2003, Frankfurt/Main 19./ http:// Ansätze für eine Web-basierte Initiierung qualitätsbasierter Kommunikationsdienste.
Gegenstand EDV Thema: Informative Webseiten
Client-Server Modell Advanced IT Basics Nicolas Frings.
Multimedia-Anwendungen und Routing
Web-HMI einbinden SPS-Technik mit Video, Multimedia und Entertainmentsystemen kombinieren I Peter Steib.
Internet: Funktionsweise und Dienste
Weltweite Kommunikation mit Exchange Server über das Internet
Präsentation von: Tamara Nadine Elisa
Video Streaming mit Silverlight
Grundlagen: Client-Server-Modell
Das Client/Server – Modell und die XAMPP-Distribution
Effiziente Algorithmen
Volumenorientierte Modellierung als Grundlage einer vernetzt- kooperativen Planung im konstruktiven Ingenieurbau Antragsteller: Prof. E. Rank, Prof. H.-J.
Entwicklung verteilter Anwendungen II, SS 13 Prof. Dr. Herrad Schmidt SS 13 Kapitel 4 Folie 2 REST Web Services (1)
Replikation und Synchronisation
ICT – Modul Dokumentenverwaltung
Domain Name Service Grundlagen, Implementierung im Active Directory und Integration von Win2k-Domains in bestehende Umgebungen Kay Sander.
Datenbankanbindung in Web-Applikationen
Aufzeichnung von Usability-Daten im www. Client-Side Log : automatisch (maschinell) generiertes Protokoll Client : Rechner mit dem Browser des Users Server:
Client-Server-Modell
W W W - World Wide Web. Das World Wide Web kommt aus dem Englischen und bedeutet ‚Weltweites Netz‘ ist ein über das Internet abrufbares Hypertext-System.
Multimedia Streaming.
->Prinzip ->Systeme ->Peer – to – Peer
Wie funktioniert das Internet?
7.2.4 Klassifikation mobilen Codes Nicht vergessen:  Sowohl das Fernkopieren als auch die Migration von Objekten setzt voraus, daß der Code entweder am.
Fallstudie „intelligentes“ semantisches Netz
Informationen zum Novell-Client Roland Mohl 23. November 2005.
WILLKOMMEN Daniel Matheis Betreuer: Birgitta König-Ries Michael Klein "Dezentrale Realisierung von Gruppendiensten in Peer-to-Peer-Umgebungen" Studienarbeiter:
Das World Wide Web Stephan Becker TIT05BGR SS06. Das World Wide Web Übersicht Hypertext & Hypermedia HTML Dokumentenidentifikation Dokumententransport.
1 2nd Review, 13. Oktober 2000, Dortmund BMBF: IR 803 Erweitertes DSMS Lars-Olof Burchard.
Content Management Systeme. Menü Header ContentSitebar.
Programmiersprachen II Fortsetzung Datenstrukturen Balancierte Bäume 3 Prof. Dr. Reiner Güttler Fachbereich GIS HTW.
Eine komplexe Netzanwendung Webserver und Datenbankserver im Netzwerk in einer Anwendung einrichten.
Spärliche Kodierung von Videos natürlicher Szenen Vortragender: Christian Fischer.
Systeme II 6. Die Anwendungsschicht
Ich brauche eine Web-Seite vom Server im Internet
 Präsentation transkript:

Cachingverfahren und Proxies Teil 1 Jan Kästle – Universität Mannheim

Jan Kästle – Universität Mannheim Übersicht Cachen von verschiedenen Webinhalten Statische Webseiten Transaktionen Dynamische Webseiten Streaming Media Grundlegende Cachingverfahren Ersetzungsstrategien Konsistenzerhaltung Proaktives Cachen Prefetching Architekturen von Caches Hierarchisches Caching Verteiltes Caching Cache Location Jan Kästle – Universität Mannheim

Caching von verschiedenen Webinhalten Statische Webseiten HTML-Seiten oder Bilder lassen sich einfach und effizient cachen Transaktionen müssen nach dem ACID Prinzip ausgeführt werden Proxies müssen mit Transaktionsfähigkeiten ausgestattet werden  Verteilte Transaktionen brauchen erheblichen Koordinationsaufwand In existierenden Web Caching Systemen werden nur Leseoperationen auf Ebene des Proxies ausgeführt Jan Kästle – Universität Mannheim

Caching von verschiedenen Webinhalten Dynamische Webseiten zum Beispiel mit der Endung *.jsp oder *.asp werden vom Webserver bei jeder Anfrage neu generiert  Aufteilen der Inhalte in dynamischen und statischen Teil  Aktives Caching – Aufbereiten der Seite mit einem Applet  Auslagern der Präsentationsschicht auf die Caches: Jan Kästle – Universität Mannheim

Caching von verschiedenen Webinhalten Streaming Media Große Audio oder Video Objekte On Demand Streaming:  Prefix Caching  Aufteilen der Media Dateien in Segmente Caches kooperieren, um Useranfrage zu beantworten Live Streaming:  Ausnutzen der Baumstruktur des CDN Jan Kästle – Universität Mannheim

Jan Kästle – Universität Mannheim Übersicht Cachen von verschiedenen Webinhalten Statische Webseiten Transaktionen Dynamische Webseiten Streaming Media Grundlegende Cachingverfahren Ersetzungsstrategien Konsistenzerhaltung Proaktives Cachen Prefetching Architekturen von Caches Hierarchisches Caching Verteiltes Caching Cache Location Jan Kästle – Universität Mannheim

Grundlegende Cachingverfahren Ersetzungsstrategien (1) Ein wichtigstes Performancemaß: Trefferquote = Anzahl der Treffer / Gesamtanzahl der Anfragen an den Cache Ersetzungsstrategien aus dem Bereich der Hauptspeicherverwaltung Least Recently Used (LRU) Least Frequently Used (LFU) Ersetzung anhand bestimmter Merkmale Größe der Objekte Zeit das Objekt wieder vom Webserver zu beziehen Jan Kästle – Universität Mannheim

Grundlegende Cachingverfahren Ersetzungsstrategien (2) Fortgeschrittenere Ersetzungsstrategien beruhen auf Simulationen, um Effizienz zu steigern Abwandlung des LRU Algorithmus, der die Größe miteinbezieht: Size Adjusted LRU (SLRU) Idee: Große Objekte auf die länger nicht zugegriffen wurde beim Ersetzen vorziehen. Admission Control Soll Objekt überhaupt in den Cache aufgenommen werden ? Beitrag des neuen Objekts zur Trefferquote im Vergleich zum Beitrag der zu ersetzenden Objekte Jan Kästle – Universität Mannheim

Grundlegende Cachingverfahren Konsistenz (1) client-basierte Verfahren verwenden Time to Live (TTL) Informationen aus dem HTTP Header z.B. max-age, expires Felder Validieren mittels If-Modified-Since Feld periodisches Validieren oder auf User Anfrage keine zuverlässige TTL Information? HTTP 1.1 bietet explizite Unterstützung fürs Caching z.B. must-revalidate oder no-cache Felder Jan Kästle – Universität Mannheim

Grundlegende Cachingverfahren Konsistenz (2) server-basierte Ansätze Callback Promise Bei Abfrage eines Objekts vom Webserver erhält der Client ein Callback Promise. Wenn sich das Objekt ändert, informiert der Server den Client. Leases Versprechen des Servers dem Proxy eine Invalidierungsnachricht zu schicken, wenn sich das Objekt in einer festgelegte Zeit ändert. Sowohl die hiergenannten client-basierten als auch die server-basierten Ansätze nutzen die Struktur eines Content Delivery Netzwerks nicht, da Daten auf Unicast Basis versendet werden. Jan Kästle – Universität Mannheim

Grundlegende Cachingverfahren Konsistenz (3) Push-Caching (pre-population) Der Inhalt wird bei einer Änderung (oder wenn ein neues Objekt hinzukommt) automatisch an die Caches verteilt. Push Caching statt dem traditionellen Pull Caching Caches brauchen Objekte nicht mehr auf Gültigkeit prüfen Verteilen des Content über Multicast Baum (auf Anwendungsebene) Nachteil: wenn Objekte öfter geändert werden, als auf sie zugegriffen wird.  Kombination aus Push-Caching und Callback Promise Jan Kästle – Universität Mannheim

Grundlegende Cachingverfahren Prefetching Greift ein Anwender vor allem auf neue Seiten zu, profitiert er nicht vom Caching.  Vorhersage zukünftiger Seitenzugriffe und cachen dieser Seiten Rückschlüsse aus Struktur der abgerufenen Webseiten z.B. Links in den Dokumenten Top10 Algorithmus verwendet Liste der beliebtesten Zugriffe auf einen Webserver in der Vergangenheit. Jan Kästle – Universität Mannheim

Jan Kästle – Universität Mannheim Übersicht Cachen von verschiedenen Webinhalten Statische Webseiten Transaktionen Dynamische Webseiten Streaming Media Grundlegende Cachingverfahren Ersetzungsstrategien Konsistenzerhaltung Proaktives Cachen Prefetching Architekturen von Caches Verteiltes Caching Hierarchisches Caching Cache Location Jan Kästle – Universität Mannheim

Architekturen von Caches Verteiltes Caching Caches arbeiten auf derselben Ebene zusammen Caches befinden sich alle an den Rändern der Netzwerke Kommunikation mit dem Inter Cache Protocol (ICP) Durch Koordination kommt es zum Kommunikationsoverhead  Hash-basiertes Cachen  Zusammenfassung (digest) oder Content Directory ICP ICP Jan Kästle – Universität Mannheim

Architekturen von Caches Hierarchisches Cachen Caches sind in Form einer Baumstrukur aufgebaut Einfache Struktur, geringer Koordinationsaufwand Nachteile: - Jede Ebene von Caches vergrößert das Delay - Auf verschiedenen Ebenen werden identische Kopien der Objekte gespeichert - Caches die nahe der Wurzel liegen können leicht zu Engpässen werden Jan Kästle – Universität Mannheim

Architekturen von Caches Cache Location an den Rändern der Netzwerke idealerweise im Netz des Users oder seines ISPs Algorithmen zum Bestimmen der Standorte Ziel ist es, entweder die Wartezeit der User zu minimieren oder unter einer gegebenen Wartezeit die Kosten der Infrastrukur zu minimieren Beschränkungen sind Systemressourcen und Kapazitäten  Formulieren als Mixed Integer Linear Problem (MILP) und lösen mit MILP Solver  Greedy Algorithmen Jan Kästle – Universität Mannheim

Jan Kästle – Universität Mannheim Ende Noch Fragen? Jan Kästle – Universität Mannheim