magazin JAVA Mag Groovy für Swing uck JavaFX Tutorial Apache Axis2 Object Caching mit AOP CD-INHALT » 34 » 25 » 48 » 14 » 54 » 65
|
|
- Hilko Bieber
- vor 8 Jahren
- Abrufe
Transkript
1 inkl. JAVA Mag CD Stellenmarkt» 54 JavaScript-Performance» magazin Java Architekturen SOA Agile CD-INHALT Busy Java Developer s Guide to Scala von Ted Neward DIE HIGHLIGHTS JBoss jbpm 4 ehealth Framework Java Process Engine mit neuer Version 98 Open-Source-Plattform für das Gesundheitswesen 80»» Alle Infos zur Konferenz siehe Beihefter WICKET Endlich komponentenbasierte Web Apps Apache Wicket im Praxistest» 41 GUIdancer 3.1 Apache Axis2/Java 1.5 Groovy für Swing uck r d r e Griffon: Heiliger Gral für Swing-Entwickler? d n So a codecen»tric der Firm JavaFX Tutorial Apache Wicket 1.4 Pimp up my Twitter Alle CD-Infos ab Seite 3 Apache Axis2 Automatisierte Funktionstests auf Eclipse-Basis 86 WEITERE INHALTE Griffon 0.1.2» 25 Rundflug durch das Axis2-Universum» 48 Object Caching mit AOP Algorithmen optimieren» 14» 34
2 Ajax, JSON, XHR Diesmal verlassen wir unseren heimischen Java-Boden und begeben uns in die Welt von Ajax-Anwendungen. Im letzten Artikel haben wir uns mit generellen serverseitigen Performance- und Skalierbarkeitsproblemen beschäftigt. Die Performance von JavaScript, dessen Konzepte und Ausführungsumgebungen stehen dieses Mal im Vordergrund der Betrachtungen. von Alois Reitbauer und Fabian Lange is vor wenigen Jahren galt JavaScript noch als Spielerei und vor allem durch einige Kompatibilitätsprobleme als wenig wartbar. Unter dem Begriff Ajax gelang dann in den letzten Jahren der Durchbruch für JavaScript. Ein Grund hierfür ist sicherlich der Fortschritt im Umfeld von verfügbaren Bibliotheken und die bessere Unterstützung in allen gängigen Browsern. Zu den bekannteren Frameworks zählen hier z. B. Prototype oder JQuery, die die Browserkompatibilitätsprobleme zentral lösen. In diesem Artikel werden wir auf drei Hauptbereiche von JavaScript- Performance eingehen. Verteilte Kommunikation ein Hauptbestandteil von Ajax kann helfen, übertragene Datenmengen zu reduzieren. Gleichzeitig ist Kommunikation in verteilten Systemen auch eine der größten Quellen für Performanceprobleme. Ein zweiter Punkt sind JavaScript-basierte Erweiterungen, die den Browser im Hinblick auf Usability zu den klassischen Rich Clients aufholen lassen. Verschiedene JavaScript- Frameworks bieten mit teilweise vielen Tricks, die Timer, viele DOM-Objekte und viel JavaScript-Code benötigen, schöne visuelle Effekte. So kann es aber sein, dass ein Aufklappeffekt, der die Seiten nur verschönern soll, zu schlechterer Benutzbarkeit führen kann, da er den Arbeitsablauf um Sekunden verzögert. Last but not least werden wir uns dem Thema Memory Leaks zuwenden. Grundsätzlich gilt, dass die Konzepte im JavaScript- Umfeld dem Java-Bereich sehr ähnlich sind. Einige spezielle Probleme ergeben sich hier im Laufzeitverhalten von JavaScript. Hinzu kommt, dass die Garbage Collectors nicht so ausgereift sind wie in Java-Umgebungen. Viele Probleme sind hier auch vom verwendeten Browser abhängig. Glücklicherweise entschärft die korrekte Verwendung eines JavaScript- Frameworks viele dieser Unannehmlichkeiten. Spätestens aber, wenn man selbst beginnt, JavaScript-Code zu schreiben, sollte man sich der möglichen Probleme bewusst sein. Ajax = DOM + JavaScript + XHR Schauen wir etwas hinter die Kulissen einer modernen Ajax-Webanwendung. Abbildung 1 zeigt den grundsätzlichen Aufbau schematisch. Das Herz einer jeden Webseite ist HTML, aber im Ajax- Umfeld spricht man vorrangig vom DOM (Document Object Model). Dieses enthält die hierarchische Struktur der angezeigten Website und ist mit dem Aufbau eines XML vergleichbar. Das lesende und schreibende Bearbeiten des DOM ist ein zentrales Konzept in Ajax. Genau wie bei herkömmlichen Benutzerschnittstellen können hier Controls hinzugefügt oder Event Listener registriert werden. Wie viel vom DOM durch HTML deklarativ und wie viel zur Laufzeit erzeugt wird, hängt stark vom verwendeten Framework ab. Natürlich sind diese Aspekte für die Anwendungsperformance wesentlich. Neben dem DOM existiert die JavaScript Engine. Diese ist für das Ausführen des Codes verantwortlich und im Unterschied zu einer JVM Single-threaded implementiert. Das bedeutet, dass sich alle Aktionen in der Anwendung einen Thread teilen. Speziell auf die Responsiveness der Anwendung kann das große Auswirkungen haben. Sehr häufig wird mittels der Timer versucht, Pseudoparal- 2 javamagazin Software & Support Verlag GmbH
3 lelisierung zu erreichen. Bei der Verwendung von Frameworks muss man sich um diese Details oft nicht oder nur am Rande kümmern. Im Interaktionsdesign der Anwendung sollte man aber auf jeden Fall darauf Rücksicht nehmen und zu lange Verarbeitungsroutinen vermeiden. Speziell JavaScript-Anwendungsframeworks wie Google Web Toolkit (GWT) erlauben es, sehr komplexen und langlaufenden Code in JavaScript zu implementieren. Das XMLHTTPRequest-(XHR-) Objekt ist das Kernstück jeder Ajax-Anwendung. Es erlaubt uns, mit dem Server zu kommunizieren. Die Kommunikation ist asynchron implementiert, beim Absetzen einer Abfrage wird ein Callback registriert, um auf Events wie die verfügbare Antwort reagieren zu können. Bei der Kommunikation im Browser gilt es, eine wichtige Limitierung zu beachten: die Anzahl der verfügbaren Netzwerkverbindungen. Die HTTP/1.1-Spezifikation [1] definiert, dass ein Client nicht mehr als zwei persistente Verbindungen zu einem Server halten soll. Glücklicherweise erlauben fast alle Browser mindestens vier. Diese werden verwendet, um alle Netzwerkanfragen abzuarbeiten, also auch JavaScript-Dateien, Bilder usw. Hier haben wir es mit einem klassischen Bottleneck zu tun. Obwohl uns Frameworks ebenfalls helfen, ist doch Vorsicht geboten. Laden wir z. B. sehr viele große Bilder zur Laufzeit und wollen gleichzeitig Ajax- Abfragen absetzen, wird sich das massiv auf die Performance unserer Anwendung auswirken. Welche Limitierungen in speziellen Browsern bestehen, lässt sich sehr einfach mittels des UA-Profilers [2] testen. Da die Verbindungen pro Host begrenzt sind, sollte man daher erwägen, Bilder auf einen zweiten Host auszulagern. Der nächste Teil einer Ajax-Anwendung sind CSS-Stylesheets. In vielen Fällen sind diese nicht performancerelevant, speziell aber, wenn diese komplexe, relative Positionierungsanweisungen enthalten, kann das zu langen Renderzeiten führen. Andere Ressourcen und Bilder sind in Bezug auf Größe und Downloadhäufigkeit performancerelevant. Ajax Nomen est omen? Vertraut man dem Namen, so handelt es sich bei Ajax Asynchronous JavaScript Abb. 1: Schematische Darstellung einer Ajax-Anwendung and XML um ein Protokoll zur asynchronen, verteilten Kommunikation mittels XML. Ajax ist allerdings kein Protokoll, sondern beschreibt das Konzept der Kommunikation. Als Transportmedium wird fast ausschließlich HTTP verwendet. Alternativen wie WebSockets sind aber schon am Horizont zu sehen. Zum Beispiel bietet Kaazing [3] schon eine WebSockets-Implementierung an. Das X in Ajax steht entgegen vieler Erwartungen sehr oft nicht für XML. JSON (JavaScript Object Notation) ist bequemer zu nutzen als XML und wird deshalb auch häufiger verwendet. Da JSON bereits gültigen JavaScript-Code darstellt, kann er einfach mittels eines eval-aufrufs ausgeführt werden. Vereinfacht handelt es sich dabei um in JavaScript definierte Objekt-Arrays oder -Maps aus Name und Wert. Durch den Einsatz einer JSON-fähigen Bibliothek wie Jettison [4] oder JSONTools [5] können JavaScript-Objekte einfach in Java geschrieben und gelesen werden. Damit sind wir aber noch nicht am Ende der Möglichkeiten. Die Antwort eines Ajax- Aufrufs kann beliebiger Text sein (letztendlich ist XML und JSON ja auch genau das). Einige Frameworks schicken auch direkt HTML-Code als Antwort zurück. Dieser wird dann über das DOM-API mittels innerhtml direkt gesetzt. Das macht dann Sinn, wenn XML sowieso wieder in HTML umgewandelt werden soll. Ein Beispiel wären Kontendaten in XML, die dann in einer HTML-Tabelle angezeigt werden. Hier kann serverseitig sofort HTML generiert werden. Einige mögen jetzt aufschreien, dass damit eine Trennung à la Model View Controller verletzt wird, das ist dann eben Geschmackssache. Für manche JavaScript- Entwickler ist das ein sehr pragmatischer Weg, HTML auszutauschen, und abhängig vom verwendeten Framework ist die Einflussnahme des Programmierers nur bedingt möglich. Zuletzt kann man die Antwort als ausführbaren JavaScript-Code senden. Warum das Sinn macht? Nehmen wir als Beispiel eine Wettanwendung. Während aktuelle Spiele konstant bleiben, werden sich die Quoten laufend ändern. Egal, ob wir XML oder HTML verwenden, um Quoten zu aktualisieren, wir senden viel zu viele Daten. Pro Spiel ändert sich nur die Quote, die anderen Werte bleiben gleich. Mittels JavaScript kann man hier Code zurückschicken, der genau nur diese Werte ändert. Man kann das Ganze natürlich auch mit JSON und JavaScript realisieren, der Unterschied liegt lediglich in der Verantwortlichkeit für die Daten. In dem einen Fall wird die Anweisung, was mit den Daten zu tun ist, gleich mit gesendet, im anderen Fall enthält die Ursprungsseite Code, der mit den Rohdaten umgehen kann. Um herauszufinden, welche Daten verschickt werden, kann man einerseits auf Diagnosewerkzeuge zurückgreifen oder einen einfachen HTTP Proxy wie Fiddler [6] verwenden. Who Bayeux so you are french? Webanwendungen basieren auf dem Request/Response Pattern von HTTP. Das gibt dem Server keine Möglichkeit, Daten an den Client zu schicken, wenn dieser sie nicht zuvor angefordert hat. Das Bayeux-Protokoll [7] bietet hierfür eine Antwort, die auch als Server- Push-Kommunikation bekannt ist. Das Bayeux-Protokoll schreibt die Implementierung mittels so genanntem Long-Polling vor. Das bedeutet ein HTTP-Request wird vom Client abgesetzt, der Server wartet dann so lange, bis er diese Anfrage beantworten kann und sendet dann die Antwort. Auf diese Weise können sehr einfach Chat- oder Ticker-Anwendungen realisiert werden. Mit einem Konzept ähnlich zu JMS Software & Support Verlag GmbH javamagazin
4 Topics kann zusätzlich ein Publish-/ Subscribe-Protokoll implementiert werden. Server implementierungen müssen, um eine effiziente Implementierung zu gewährleisten, mittels Non-blocking IO (NIO) realisiert werden. Dabei wird die Anwendung mittels Events benachrichtigt, wenn neue Daten bereitstehen. Hierfür existieren Implementierungen in Tomcat 6, Jetty sowie kommerziellen Server von Oracle und IBM. Ein Beispiel der serverseitigen Implementierung findet sich in der Tomcat-Dokumentation [8]. Wie schon Eingangs angesprochen, ist die Anzahl der maximalen Verbindungen pro Host in Browsern beschränkt. Wie viele Verbindungen tatsächlich gehalten werden können, hängt aber nicht nur vom Server, sondern auch von eventuellen Proxies ab. Es empfiehlt sich also, von maximal zwei Verbindungen auszugehen. Das bedeutet, dass mit Verbindungen sehr sparsam umgegangen werden muss, da ansonsten keine weiteren Daten mehr geladen werden können. Als generelles Design konzept sollte hier Open late close early verwendet werden. Ich sehe was, was du nicht siehst Was sieht man als Anwender einer Webanwendung? Eine grafische Darstellung der Objekte im DOM, die anhand Layoutanweisung von der Rendering Engine erstellt wird. Doch der DOM enthält bei JavaScript-Anwendungen wesentlich mehr, als man sieht. Neben den JavaScript-Knoten, die durch die JavaScript Engine gelesen werden müssen, finden sich viele versteckte Elemente, die z. B. für Effekte genutzt werden. Dabei ist es prinzipiell egal, ob der DOM-Baum durch die initial geladenen Daten komplex ist oder erst durch das Einfügen mittels Ajax nachgeladener Daten komplex gemacht wird. In JavaScript verwendet man CSS-Selektoren, um das Element im Baum zu finden, mit dem man arbeiten möchte. Bei großen DOM-Bäumen benötigen diese aber für komplexere Operationen entsprechend mehr Zeit. Zwar versuchen alle JavaScript-Frameworks diese Selektoren zu optimieren, jedoch bergen Selektoren wie Finde alle Absätze in Tabellenzellen im Content-Bereich, die auf die erste rote Überschrift folgen (#content td:fist-child h1[class~= red ]+p) potenziell Performancegefahren und sind möglichst zu vereinfachen. Mehr Als generelles Designkonzept sollte Open late close early verwendet werden. Informationen über die möglichen CSS-Selektoren finden sich in der Dokumentation des jeweiligen Frameworks oder in der Spezifikation des W3C [9]. Doch noch mehr Fallen lauern in großen DOM-Bäumen. So führt jede Manipulation zu Veränderungen, die neu gerendert werden müssen. Je nach verwendetem CSS kann es sogar erforderlich sein, den Inhalt des gesamten DOM-Baums neu zu rendern, wenn z. B. die Position und Größe eines Elements stark von den umgebenden Elementen abhängt. Werden nicht nur Elemente hinzugefügt oder gelöscht, sondern Inhalte mittels innerhtml geschrieben, so ist sogar ein erneutes Parsing des resultierenden HTMLs notwendig. Memory Leaks auch im Browser Früher, als JavaScript wenig genutzt wurde, waren die Engines gut genug. Durch die intensivere Nutzung ergeben sich neue Anforderungen. Das zeigt auch die Entwicklung der V8 Engine in Google Chrome, die neben Performance viele andere Aspekte behandelt. Ein gutes Beispiel hierfür ist der Garbage Collector. JavaScript Garbage Col lectors sind, wie bereits erwähnt, ihrem Äquivalent in Java technisch noch unterlegen. Das führt dazu, dass teilweise auch auf Grund der Implementierung Memory Leaks entstehen können. Das wohl bekannteste Beispiel ist ein Memory Leak im Internet Explorer, älter als Version 8. Hier wird Reference Counting als Garbage-Collection-Strategie verwendet. Dieser Ansatz hat das Problem, zirkuläre Referenzen also Referenzen, die letztendlich wieder zum Ausgangsobjekt zurückführen nicht auflösen zu können. Ein spezielles Problem waren hier Referenzen aus der JavaScript-Welt in die DOM-Welt und zurück. Diese können sehr einfach entstehen, wenn eine JavaScript-Funktion als EventHandler auf einen DOM-Knoten registriert wird und selbst eine Referenz auf diesen hält. Dieses Problem kann in der Praxis oft einfach umgangen werden [10]. Wenn man Einfluss auf den verwendeten Browser hat, z. B. bei Intranetanwendungen, sollte man diesen entsprechend dieser Probleme auswählen. Plant man also, eine Client/Serveranwendung durch eine Ajax- Anwendung zu ersetzen, so ist auch die Auswahl des Browsers Teil der Entwicklungsaufgaben. Da mit der zunehmenden Verbreitung von Ajax hier immer potenzielle neue Probleme auftreten können, empfiehlt es sich, Anwendungen immer auf Memory Leaks in allen verwendeten Browsern zu testen. Don t Closure your Eyes! Eine spezielle Form vom Memory Leaks sind Leaks auf Grund falsch verwendeter Closures. Diese sind spezifisch für JavaScript, da dieses Konzept in Java noch nicht existiert eine Implementierung in Java gibt es voraussichtlich mit Java 7 [11]. Jede Funktion in JavaScript verfügt über einen Execution Scope, dieser beinhaltet alle Variablen der aufrufenden Methoden und den eigenen. Soweit unterscheidet sich das Modell nicht von Java. Sehen wir uns aber das Beispiel an: function dostuff (AJAX response){ } var myelems = // newly created Element in dom for // iterate over elements } myelem.onclick= function (){ // do something if someone clicks Dieser Code sieht eigentlich ganz in Ordnung aus, das Problem ist aber, dass der Execution Scope unserer anonymen doclick-funktion eine Referenz auf die Variablen von dostuff hält. Das inkludiert auf die Ajax Response und schlimmer noch das Array aller erzeugten DOM-Elemente. Solange auch 4 javamagazin Software & Support Verlag GmbH
5 nur ein Element noch existiert und der Even Handler definiert bleibt, wird hier kein Speicher mehr freigegeben. Dieses Prob lem lässt sich aber einfach lösen. Wir definieren die Funktion vorab und nicht mehr inline. Dadurch lösen wir unser erstes Scope-Problem. Zweitens rufen wir explizit ein delete auf myelems auf (oder setzen es auf null). Dadurch wird das Array und die Referenzen freigegeben. Pseudo-Leaks Ein Pseudo-Memory-Leak sind falsch eingesetzte CSS Sprites [12]. Das Konzept hinter CSS-Sprites stammt aus den Urzeiten der Spieleentwicklung: Anstelle viele Bilder einzeln zu laden, wird ein großes zusammengesetztes Bild geladen und der relevante Ausschnitt gezeigt. Durch die Bildkomprimierung ist das zusammengesetzte Bild häufig sogar kleiner als die Summe der Einzelbilder. Das Problem ist nur, dass es Sprites gibt, von denen ein Großteil nicht benutzt wird, weil die Fläche frei bleibt oder die dort gespeicherten Bilder nicht genutzt werden. Der Browser muss aber das gesamte Bild zur Anzeige im Speicher halten und zwar in der anzeigbaren, unkomprimierten Form mit Byte pro Bildpunkt. Ein weiteres Pseudo-Leak tritt bei einigen Server-side-Push-Frameworks auf. Wie schon beschrieben, senden diese permanent Daten an den Client. Einige Implementierungen verwenden hierzu versteckte Frames und der Server verwendet Partial-Content-Antworten, d. h. er sendet von Zeit zu Zeit neue Daten, oft JavaScript. Die Seite des Frames wächst also permanent weiter, je mehr Daten gesendet werden. Läuft eine Anwendung einen ganzen Arbeitstag lang, kann dies schon zu massiven Memory Leaks führen. Die Anwendung muss dann natürlich neu gestartet werden. Neuere Frameworks bieten hierfür hoffentlich passende Lösungen an. Speziell wenn man am Beginn eines Projekts steht, sollten man sich mit dem Wie von Push-Ansätzen auseinandersetzen. Antipattern Zu viele Daten XHR sollte nur die benötigten Daten transportieren. Auch wenn auf der Java- Seite Serialisierung in XML schnell genug sein sollte, ist die Verarbeitung in JavaScript wesentlich langsamer. Durch die Verwendung von JSON ist die Deserialisierung in JavaScript schneller und einfacher. Zusätzlich spart man bei der Serialisierung Zeit, wenn nur die wirklich verwendeten Attribute von Objekten serialisiert werden. Besonders gut lässt sich XHR betrachten und die mit ihnen transportierten Daten in Firebug. Übrigens gilt das zu viele Daten -Antipattern auch auf dem Hinweg. Die HTTP-Spezifikation fordert, dass vorhandene Cookies bei jedem Request mitgesendet werden müssen. Das ist auch bei Ajax Requests der Fall, auch wenn die Cookies für die Bearbeitung gar nicht notwendig sind. Sogar bei Requests für Bilder oder CSS werden Cookies mitgeschickt, weswegen auch die Yahoo Performance Rules empfehlen, für diese Requests eine Domain oder Subdomain zu verwenden, in der keine Cookies verwendet und damit auch nicht übertragen werden. Antipattern Alles oder alles Ajax ist sehr gut geeignet, um Daten dynamisch nachzuladen, jedoch ist das richtig zu machen. Eine Tabelle mittels eines JavaScript Widgets leer anzuzeigen und 1000 Zeilen dann per Ajax nachzuladen, funktioniert zwar, führt aber mit Sicherheit zu Performanceproblemen. Sinnvoll wäre es n+2 Lazy Loading anzuwenden. Beim initialen Anzeigen der Seite ist der sichtbare Teil der Tabelle (z. B. 10 Einträge) bereits gerendert. Ein Satz weiterer Einträge (in diesem Fall also weitere 10) befindet sich ebenfalls auf der Seite, wird aber durch die Tabelle nicht angezeigt. Blättert oder scrollt der Benutzer nun zum zweiten Satz, kann man mittels Ajax den nächsten bereits nachladen, aber weiter versteckt halten. Für Datensätze, durch die der Benutzer schneller durchblättert, kann entsprechend weiter vorgeladen werden. Dabei ist auch darauf zu achten, alte Sätze wieder aus der Seite zu entfernen. Dieses intelligentere Lazy Loading löst auch das Problem der fachlichen Synchronität, da der Benutzer nicht auf seine Aktion warten muss. Andere Bezeichnungen sind auch Prefetching oder Preloading. Yahoo nutzt eine ähnliche Strategie, um z. B. Bilder und CSS der Suchergebnisseite zu laden, nachdem der Benutzer mit dem Eingeben des Suchbegriffs angefangen hat [13]. Antipattern Interaktivitätsüberdosis Ein oft angeführter Anwendungsfall für JavaScript und Ajax ist das Laden von Autovervollständigungen. Diese sollten aber nicht bei jedem keyup-event vom Server nachgeladen werden, sondern idealerweise erst ms, nachdem der Benutzer aufgehört hat, zu tippen. Insbesondere problematisch ist, dass die Reihenfolge der Antworten nicht bestimmbar ist. So könnten die Vorschläge für zwei getippte Buchstaben nach denen für drei kommen. Einige Frameworks stellen zur Synchronisation mehrerer Anfragen bereits Lösungen zur Verfügung, so gibt es in RichFaces die Ajax Event Queue oder in JQuery das Ajax Queue Plug-in. Für häufig genutzte Felder ist auch ein Hybrid-Ansatz möglich: Eine Auswahl der häufigsten Autovervollständigungen muss nicht nachgeladen werden, sondern ist direkt vorrätig und kann direkt angezeigt werden. Eine weitere Ursache für starke Auslastung der CPU können viele Timer sein. Da JavaScript in nur einem Thread ausgeführt Feedback und Fragen zum Thema Performance Im Rahmen der Performanceserie laden wir Sie ein, Fragen und Feeback an uns zu richten. Wir werden versuchen, diese in den folgenden Artikeln einzubauen oder Antworten online zu posten, um den Inhalt auch anderen Lesern zugänglich zu machen. Erfahrungsberichte aus dem Entwickleralltag sind ebenfalls willkommen. Kontaktieren Sie uns unter performance@javamagazin.de. Mehr zum Thema Einen ausführlichen Artikel zum Java Garbage Collector finden Sie unter artikel/ Software & Support Verlag GmbH javamagazin
6 wird, werden viele Timer eingesetzt, um Nebenläufigkeit zu produzieren. Viele verschiedene Timer erzeugen aber einen großen Overhead. Die JavaScript Engine kann durch die Verwendung weniger einheitlicher Timer, die dann für verschiedene Zwecke genutzt werden, wesentlich entlastet werden. Antipattern Unterschätzen der Netzwerkslatenz Verteilte Kommunikation ist eines der zentralen Gründe für Performanceund Skalierbarkeitsprobleme. Im Ajax- Umfeld muss umso mehr auf effiziente Kommunikation geachtet werden. Der Roundtrip eines Requests startet im Browser des Benutzers, passiert verschiedenste Netzwerke, Proxies und Gateways und landet erst dann beim Server, der die Antwort auf ähnlichem Weg zurücksendet. Zwar werden die Requests technisch gesehen asynchron ausgeführt, von der Benutzersicht her ist das aber häufig ein synchroner Vorgang, auf dessen Ergebnis gewartet werden Alois Reitbauer ist Technology Strategist bei dynatrace Software. In seiner Rolle beeinflusst er aktiv die dynatrace-produktstrategie und unterstützt Topunternehmen bei der Einführung von Performance-Management-Lösungen. muss. Die Verwendung von Ajax ändert die fachliche Synchronität nicht. Wie im Umfeld von Remoting bereits angesprochen, gibt es einige Dinge, die für effiziente Netzwerkkommunikation beachtet werden müssen. Ein wesentlicher Punkt ist hierbei die übertragene Datenmenge. Diese sollte so gering wie möglich gehalten werden. Hierbei ist auch auf der Serverseite darauf zu achten, dass Datenmengen effizient eingeschränkt werden können. Das kann bei Abfragen z. B. durch die Angabe von Anzahl der Datensätze bzw. Offsets in Daten erreicht werden. Abhängig vom Inhalt, sollten Ajax- Anfragen, wenn möglich, auch gecached werden idealerweise natürlich schon im Browser. Das ist aber leider nicht so trivial. Browser cachen häufig zu viel und verhindern identische Anfragen an den Server. Frameworks haben daher ausgereifte Mechanismen, um Caching zu verhindern, damit Anfragen tatsächlich immer bis zum Server durchdringen. Es empfiehlt sich, in der Dokumentation des eingesetzten Frameworks die Caching-Optionen nachzulesen. Fazit Performanceprobleme existieren in Ajax-Anwendungen, genauso wie in herkömmlichen Webanwendungen. Die Problemquellen liegen in der Kommunikation und Datenübertragung, komplexen DOM-Interaktionen und Speicherproblemen. Auch die Browser selbst kämpfen oft noch mit Performanceproblemen, jedoch entwickeln sich diese und ihre Engines rasant voran. Deshalb lohnen sich Mikrooptimierungen für Anwendungsentwickler im Browser nicht. Die richtigen Patterns und Konzepte schützen davor, in klassische Rich Client Antipattern zu fallen. Im Fall von Performanceproblemen kann man auch auf eine Reihe von frei verfügbaren Tools wie YSlow oder Firebug zurückgreifen, die zwar nicht erlauben, das Laufzeitverhalten genau zu messen, aber dennoch viele brauchbare Kennwerte liefern. Speziell für Performanceoptimierung und für den Internet Explorer bietet dynatrace mit Browser Diagnostics ein frei verfügbares Werkzeug an. Fabian Lange ist Senior IT Consultant bei der codecentric GmbH und Autor des Buchs Eclipse Rich Ajax Platform. Seine Schwerpunkte liegen im Bereich Java-Web-Frameworks, Performance und dem Open Web. Links & Literatur [1] HTTP/1.1 RFC 2616: [2] UA-Profiler: [3] Kaazing Enterprise Gateway: [4] Jettison-JSON-StAX-Implementierung: [5] JSON-Tools: [6] Fiddler Proxy: [7] Das Bayeux-Protokoll: [8] Tomcat 6 Comet Support: [9] W3C Selector Specifiication: [10] Understanding and Solving IE-Leak-Patterns: library/bb250448%28vs.85%29.aspx [11] A Re-Introduction to JavaScript: [12] Erläuterung zu CSS-Sprites: [13] Yahoo Contextual Precaching: [14] dynatrace Browser Diagnostics: codecentric GmbH Merscheider Straße Solingen Ansprechpartner: Tim van Baars +49 (0) vanbaars@codecentric.de 6 javamagazin Software & Support Verlag GmbH
Wordpress: Blogbeiträge richtig löschen, archivieren und weiterleiten
Wordpress: Blogbeiträge richtig löschen, archivieren und weiterleiten Version 1.0 Wordpress: Blogbeiträge richtig löschen, archivieren und weiterleiten In unserer Anleitung zeigen wir Dir, wie Du Blogbeiträge
MehrInhalt. 1 Einleitung AUTOMATISCHE DATENSICHERUNG AUF EINEN CLOUDSPEICHER
AUTOMATISCHE DATENSICHERUNG AUF EINEN CLOUDSPEICHER Inhalt 1 Einleitung... 1 2 Einrichtung der Aufgabe für die automatische Sicherung... 2 2.1 Die Aufgabenplanung... 2 2.2 Der erste Testlauf... 9 3 Problembehebung...
MehrLizenzen auschecken. Was ist zu tun?
Use case Lizenzen auschecken Ihr Unternehmen hat eine Netzwerk-Commuterlizenz mit beispielsweise 4 Lizenzen. Am Freitag wollen Sie Ihren Laptop mit nach Hause nehmen, um dort am Wochenende weiter zu arbeiten.
MehrVersion smarter mobile(zu finden unter Einstellungen, Siehe Bild) : Gerät/Typ(z.B. Panasonic Toughbook, Ipad Air, Handy Samsung S1):
Supportanfrage ESN Bitte füllen Sie zu jeder Supportanfrage diese Vorlage aus. Sie helfen uns damit, Ihre Anfrage kompetent und schnell beantworten zu können. Verwenden Sie für jedes einzelne Thema jeweils
Mehricloud nicht neu, aber doch irgendwie anders
Kapitel 6 In diesem Kapitel zeigen wir Ihnen, welche Dienste die icloud beim Abgleich von Dateien und Informationen anbietet. Sie lernen icloud Drive kennen, den Fotostream, den icloud-schlüsselbund und
MehrEinstellungen im Internet-Explorer (IE) (Stand 11/2013) für die Arbeit mit IOS2000 und DIALOG
Einstellungen im Internet-Explorer (IE) (Stand 11/2013) für die Arbeit mit IOS2000 und DIALOG Um mit IOS2000/DIALOG arbeiten zu können, benötigen Sie einen Webbrowser. Zurzeit unterstützen wir ausschließlich
MehrDatensicherung. Beschreibung der Datensicherung
Datensicherung Mit dem Datensicherungsprogramm können Sie Ihre persönlichen Daten problemlos Sichern. Es ist möglich eine komplette Datensicherung durchzuführen, aber auch nur die neuen und geänderten
MehrÜbung: Verwendung von Java-Threads
Übung: Verwendung von Java-Threads Ziel der Übung: Diese Übung dient dazu, den Umgang mit Threads in der Programmiersprache Java kennenzulernen. Ein einfaches Java-Programm, das Threads nutzt, soll zum
MehrLive Update (Auto Update)
Live Update (Auto Update) Mit der Version 44.20.00 wurde moveit@iss+ um die Funktion des Live Updates (in anderen Programmen auch als Auto Update bekannt) für Programm Updates erweitert. Damit Sie auch
MehrEinrichtung des Cisco VPN Clients (IPSEC) in Windows7
Einrichtung des Cisco VPN Clients (IPSEC) in Windows7 Diese Verbindung muss einmalig eingerichtet werden und wird benötigt, um den Zugriff vom privaten Rechner oder der Workstation im Home Office über
MehrWeb-Kürzel. Krishna Tateneni Yves Arrouye Deutsche Übersetzung: Stefan Winter
Krishna Tateneni Yves Arrouye Deutsche Übersetzung: Stefan Winter 2 Inhaltsverzeichnis 1 Web-Kürzel 4 1.1 Einführung.......................................... 4 1.2 Web-Kürzel.........................................
MehrInformationen zum neuen Studmail häufige Fragen
1 Stand: 15.01.2013 Informationen zum neuen Studmail häufige Fragen (Dokument wird bei Bedarf laufend erweitert) Problem: Einloggen funktioniert, aber der Browser lädt dann ewig und zeigt nichts an Lösung:
MehrDiese Ansicht erhalten Sie nach der erfolgreichen Anmeldung bei Wordpress.
Anmeldung http://www.ihredomain.de/wp-admin Dashboard Diese Ansicht erhalten Sie nach der erfolgreichen Anmeldung bei Wordpress. Das Dashboard gibt Ihnen eine kurze Übersicht, z.b. Anzahl der Beiträge,
MehrStellen Sie bitte den Cursor in die Spalte B2 und rufen die Funktion Sverweis auf. Es öffnet sich folgendes Dialogfenster
Es gibt in Excel unter anderem die so genannten Suchfunktionen / Matrixfunktionen Damit können Sie Werte innerhalb eines bestimmten Bereichs suchen. Als Beispiel möchte ich die Funktion Sverweis zeigen.
MehrL10N-Manager 3. Netzwerktreffen der Hochschulübersetzer/i nnen Mannheim 10. Mai 2016
L10N-Manager 3. Netzwerktreffen der Hochschulübersetzer/i nnen Mannheim 10. Mai 2016 Referentin: Dr. Kelly Neudorfer Universität Hohenheim Was wir jetzt besprechen werden ist eine Frage, mit denen viele
MehrSo die eigene WEB-Seite von Pinterest verifizieren lassen!
So die eigene WEB-Seite von Pinterest verifizieren lassen! Quelle: www.rohinie.eu Die eigene Seite auf Pinterest verifizieren Es ist offiziell. Vielleicht haben auch Sie in den vergangenen Wochen die Informationen
MehrWas man mit dem Computer alles machen kann
Was man mit dem Computer alles machen kann Wie komme ich ins Internet? Wenn Sie einen Computer zu Hause haben. Wenn Sie das Internet benutzen möchten, dann brauchen Sie ein eigenes Programm dafür. Dieses
Mehr40-Tage-Wunder- Kurs. Umarme, was Du nicht ändern kannst.
40-Tage-Wunder- Kurs Umarme, was Du nicht ändern kannst. Das sagt Wikipedia: Als Wunder (griechisch thauma) gilt umgangssprachlich ein Ereignis, dessen Zustandekommen man sich nicht erklären kann, so dass
MehrAnleitung über den Umgang mit Schildern
Anleitung über den Umgang mit Schildern -Vorwort -Wo bekommt man Schilder? -Wo und wie speichert man die Schilder? -Wie füge ich die Schilder in meinen Track ein? -Welche Bauteile kann man noch für Schilder
MehrIst Excel das richtige Tool für FMEA? Steve Murphy, Marc Schaeffers
Ist Excel das richtige Tool für FMEA? Steve Murphy, Marc Schaeffers Ist Excel das richtige Tool für FMEA? Einleitung Wenn in einem Unternehmen FMEA eingeführt wird, fangen die meisten sofort damit an,
MehrSpeicher in der Cloud
Speicher in der Cloud Kostenbremse, Sicherheitsrisiko oder Basis für die unternehmensweite Kollaboration? von Cornelius Höchel-Winter 2013 ComConsult Research GmbH, Aachen 3 SYNCHRONISATION TEUFELSZEUG
MehrLineargleichungssysteme: Additions-/ Subtraktionsverfahren
Lineargleichungssysteme: Additions-/ Subtraktionsverfahren W. Kippels 22. Februar 2014 Inhaltsverzeichnis 1 Einleitung 2 2 Lineargleichungssysteme zweiten Grades 2 3 Lineargleichungssysteme höheren als
MehrFotostammtisch-Schaumburg
Der Anfang zur Benutzung der Web Seite! Alles ums Anmelden und Registrieren 1. Startseite 2. Registrieren 2.1 Registrieren als Mitglied unser Stammtischseite Wie im Bild markiert jetzt auf das Rote Register
MehrGeoPilot (Android) die App
GeoPilot (Android) die App Mit der neuen Rademacher GeoPilot App machen Sie Ihr Android Smartphone zum Sensor und steuern beliebige Szenen über den HomePilot. Die App beinhaltet zwei Funktionen, zum einen
MehrProfessionelle Seminare im Bereich MS-Office
Der Name BEREICH.VERSCHIEBEN() ist etwas unglücklich gewählt. Man kann mit der Funktion Bereiche zwar verschieben, man kann Bereiche aber auch verkleinern oder vergrößern. Besser wäre es, die Funktion
MehrPartitionieren in Vista und Windows 7/8
Partitionieren in Vista und Windows 7/8 Windows Vista und Windows 7 können von Haus aus Festplatten partitionieren. Doch die Funktion ist etwas schwer zu entdecken, denn sie heißt "Volume verkleinern".
MehrEasyWk DAS Schwimmwettkampfprogramm
EasyWk DAS Schwimmwettkampfprogramm Arbeiten mit OMEGA ARES 21 EasyWk - DAS Schwimmwettkampfprogramm 1 Einleitung Diese Präsentation dient zur Darstellung der Zusammenarbeit zwischen EasyWk und der Zeitmessanlage
MehrAlbert HAYR Linux, IT and Open Source Expert and Solution Architect. Open Source professionell einsetzen
Open Source professionell einsetzen 1 Mein Background Ich bin überzeugt von Open Source. Ich verwende fast nur Open Source privat und beruflich. Ich arbeite seit mehr als 10 Jahren mit Linux und Open Source.
MehrCOMPUTER MULTIMEDIA SERVICE
Umgang mit Web-Zertifikaten Was ist ein Web-Zertifikat? Alle Webseiten, welche mit https (statt http) beginnen, benötigen zwingend ein Zertifikat, welches vom Internet-Browser eingelesen wird. Ein Web
MehrBedienungsanleitung für den SecureCourier
Bedienungsanleitung für den SecureCourier Wo kann ich den SecureCourier nach der Installation auf meinem Computer finden? Den SecureCourier finden Sie dort, wo Sie mit Dateien umgehen und arbeiten. Bei
MehrDer Kalender im ipad
Der Kalender im ipad Wir haben im ipad, dem ipod Touch und dem iphone, sowie auf dem PC in der Cloud einen Kalender. Die App ist voreingestellt, man braucht sie nicht laden. So macht es das ipad leicht,
MehrIn dem unterem Feld können Sie Ihre E-Mail eintragen, wenn sie im System hinterlegt wurde. Dann wird Ihnen Ihr Passwort noch einmal zugeschickt.
Wyhdata Hilfe Login: www.n-21online.de (Login Formular) Ihr Login-Name: Hier tragen Sie Redak1 bis Redak6 ein, der Chefredakteur bekommt ein eigenes Login. Ihr Passwort: Eine Zahlenkombination, die vom
MehrNovell Client. Anleitung. zur Verfügung gestellt durch: ZID Dezentrale Systeme. Februar 2015. ZID Dezentrale Systeme
Novell Client Anleitung zur Verfügung gestellt durch: ZID Dezentrale Systeme Februar 2015 Seite 2 von 8 Mit der Einführung von Windows 7 hat sich die Novell-Anmeldung sehr stark verändert. Der Novell Client
MehrUm zu prüfen welche Version auf dem betroffenen Client enthalten ist, gehen Sie bitte wie folgt vor:
Client-Installation ec@ros2 ASP-Server 1. Allgemeine Informationen Für den Einsatz von ec@ros2 ist auf den Clients die Software Java Webstart (enthalten im Java Runtime Environment (JRE)) notwendig. Wir
MehrLeichte-Sprache-Bilder
Leichte-Sprache-Bilder Reinhild Kassing Information - So geht es 1. Bilder gucken 2. anmelden für Probe-Bilder 3. Bilder bestellen 4. Rechnung bezahlen 5. Bilder runterladen 6. neue Bilder vorschlagen
MehrEin mobiler Electronic Program Guide
Whitepaper Telekommunikation Ein mobiler Electronic Program Guide Ein iphone Prototyp auf Basis von Web-Technologien 2011 SYRACOM AG 1 Einleitung Apps Anwendungen für mobile Geräte sind derzeit in aller
MehrProfessionelle Seminare im Bereich MS-Office
Serienbrief aus Outlook heraus Schritt 1 Zuerst sollten Sie die Kontakte einblenden, damit Ihnen der Seriendruck zur Verfügung steht. Schritt 2 Danach wählen Sie bitte Gerhard Grünholz 1 Schritt 3 Es öffnet
Mehrrobotron*e count robotron*e sales robotron*e collect Anmeldung Webkomponente Anwenderdokumentation Version: 2.0 Stand: 28.05.2014
robotron*e count robotron*e sales robotron*e collect Anwenderdokumentation Version: 2.0 Stand: 28.05.2014 Seite 2 von 5 Alle Rechte dieser Dokumentation unterliegen dem deutschen Urheberrecht. Die Vervielfältigung,
Mehr! " # $ " % & Nicki Wruck worldwidewruck 08.02.2006
!"# $ " %& Nicki Wruck worldwidewruck 08.02.2006 Wer kennt die Problematik nicht? Die.pst Datei von Outlook wird unübersichtlich groß, das Starten und Beenden dauert immer länger. Hat man dann noch die.pst
MehrUniversal Dashboard auf ewon Alarmübersicht auf ewon eigener HTML Seite.
ewon - Technical Note Nr. 003 Version 1.2 Universal Dashboard auf ewon Alarmübersicht auf ewon eigener HTML Seite. Übersicht 1. Thema 2. Benötigte Komponenten 3. Downloaden der Seiten und aufspielen auf
MehrFacebook I-Frame Tabs mit Papoo Plugin erstellen und verwalten
Facebook I-Frame Tabs mit Papoo Plugin erstellen und verwalten Seit Anfang Juni 2012 hat Facebook die Static FBML Reiter deaktiviert, so wird es relativ schwierig für Firmenseiten eigene Impressumsreiter
MehrSie werden sehen, dass Sie für uns nur noch den direkten PDF-Export benötigen. Warum?
Leitfaden zur Druckdatenerstellung Inhalt: 1. Download und Installation der ECI-Profile 2. Farbeinstellungen der Adobe Creative Suite Bitte beachten! In diesem kleinen Leitfaden möchten wir auf die Druckdatenerstellung
MehrJava Script für die Nutzung unseres Online-Bestellsystems
Es erreichen uns immer wieder Anfragen bzgl. Java Script in Bezug auf unser Online-Bestell-System und unser Homepage. Mit dieser Anleitung möchten wir Ihnen einige Informationen, und Erklärungen geben,
MehrLogics App-Designer V3.1 Schnellstart
Logics App-Designer V3.1 Schnellstart Stand 2012-09-07 Logics Software GmbH Tel: +49/89/552404-0 Schwanthalerstraße 9 http://www.logics.de/apps D-80336 München mailto:apps@logics.de Inhalt Ihr Logics Zugang...
MehrWo finde ich die Software? - Jedem ProLiant Server liegt eine Management CD bei. - Über die Internetseite http://www.hp.
Erfahrungen mit dem Insight Manager von HP Dipl. Ing. Elektrotechnik (FH) - Automatisierungs- / Regelungstechnik DV-Spezialist Landesbank Rheinland-Pfalz Abteilung 2-351 Große Bleiche 54-56 55098 Mainz
MehrDokumentation IBIS Monitor
Dokumentation IBIS Monitor Seite 1 von 16 11.01.06 Inhaltsverzeichnis 1. Allgemein 2. Installation und Programm starten 3. Programmkonfiguration 4. Aufzeichnung 4.1 Aufzeichnung mitschneiden 4.1.1 Inhalt
MehrSMS/ MMS Multimedia Center
SMS/ MMS Multimedia Center der BEYOND THE NET GmbH BEYOND THE NET GmbH Seite 1 Unser Multimedia Center ist eine WEB basierende Anwendung, die es ermöglicht von einer Zentrale aus, viele Mitarbeiter zu
MehrDurchführung der Datenübernahme nach Reisekosten 2011
Durchführung der Datenübernahme nach Reisekosten 2011 1. Starten Sie QuickSteuer Deluxe 2010. Rufen Sie anschließend über den Menüpunkt /Extras/Reisekosten Rechner den QuickSteuer Deluxe 2010 Reisekosten-Rechner,
MehrHerzlich Willkommen bei der nfon GmbH
efax Handbuch Herzlich Willkommen bei der nfon GmbH Wir freuen uns, Ihnen unser efax vorstellen zu dürfen. Mit dem efax können Sie zu jeder Zeit mit Ihrem Rechner Faxe empfangen. Sie bekommen diese dann
MehrCSS-Grundlagen. Etwas über Browser. Kapitel. Die Vorbereitung
Kapitel 1 Die Vorbereitung Vorgängerversionen. Bald darauf folgte dann schon die Version 4, die mit einer kleinen Bearbeitung bis vor Kurzem 15 Jahre unverändert gültig war. All das, was du die letzten
Mehr5.2 Neue Projekte erstellen
5.2 Neue Projekte erstellen Das Bearbeiten von bestehenden Projekten und Objekten ist ja nicht schlecht wie aber können Sie neue Objekte hinzufügen oder gar völlig neue Projekte erstellen? Die Antwort
MehrZwischenablage (Bilder, Texte,...)
Zwischenablage was ist das? Informationen über. die Bedeutung der Windows-Zwischenablage Kopieren und Einfügen mit der Zwischenablage Vermeiden von Fehlern beim Arbeiten mit der Zwischenablage Bei diesen
MehrHandbuch für Redakteure
Handbuch für Redakteure Erste Schritte... 1 Artikel erstellen... 2 Artikelinhalt bearbeiten... 3 Artikel bearbeiten... 3 Grunddaten ändern... 5 Weitere Artikeleigenschaften... 5 Der WYSIWYG-Editor... 6
MehrAdminer: Installationsanleitung
Adminer: Installationsanleitung phpmyadmin ist bei uns mit dem Kundenmenüpasswort geschützt. Wer einer dritten Person Zugriff auf die Datenbankverwaltung, aber nicht auf das Kundenmenü geben möchte, kann
MehrSchüler-E-Tutorial für mobile Endgeräte. Ein Folgeprojekt des Netzwerks Informationskompetenz Berlin/Brandenburg mit der HdM
Schüler-E-Tutorial für mobile Endgeräte Ein Folgeprojekt des Netzwerks Informationskompetenz Berlin/Brandenburg mit der HdM Von der Themenwahl bis zur Hausarbeit Studierende der HdM Stuttgart Studiengang
MehrInstallation des Authorware Webplayers für den Internet Explorer unter Windows Vista
Installation des Authorware Webplayers für den Internet Explorer unter Windows Vista Allgemeines: Bitte lesen Sie sich diese Anleitung zuerst einmal komplett durch. Am Besten, Sie drucken sich diese Anleitung
MehrErklärung zu den Internet-Seiten von www.bmas.de
Erklärung zu den Internet-Seiten von www.bmas.de Herzlich willkommen! Sie sind auf der Internet-Seite vom Bundes-Ministerium für Arbeit und Soziales. Die Abkürzung ist: BMAS. Darum heißt die Seite auch
MehrLokale Installation von DotNetNuke 4 ohne IIS
Lokale Installation von DotNetNuke 4 ohne IIS ITM GmbH Wankelstr. 14 70563 Stuttgart http://www.itm-consulting.de Benjamin Hermann hermann@itm-consulting.de 12.12.2006 Agenda Benötigte Komponenten Installation
MehrAgile Vorgehensmodelle in der Softwareentwicklung: Scrum
C A R L V O N O S S I E T Z K Y Agile Vorgehensmodelle in der Softwareentwicklung: Scrum Johannes Diemke Vortrag im Rahmen der Projektgruppe Oldenburger Robot Soccer Team im Wintersemester 2009/2010 Was
MehrBenutzerhandbuch. Leitfaden zur Benutzung der Anwendung für sicheren Dateitransfer.
Benutzerhandbuch Leitfaden zur Benutzung der Anwendung für sicheren Dateitransfer. 1 Startseite Wenn Sie die Anwendung starten, können Sie zwischen zwei Möglichkeiten wählen 1) Sie können eine Datei für
MehrSEMINAR Modifikation für die Nutzung des Community Builders
20.04.2010 SEMINAR Modifikation für die Nutzung des Community Builders Step by Step Anleitung ecktion SEMINAR Modifikation für die Nutzung des Community Builders Step by Step Anleitung Bevor Sie loslegen
MehrInternationales Altkatholisches Laienforum
Internationales Altkatholisches Laienforum Schritt für Schritt Anleitung für die Einrichtung eines Accounts auf admin.laienforum.info Hier erklären wir, wie ein Account im registrierten Bereich eingerichtet
MehrGuide DynDNS und Portforwarding
Guide DynDNS und Portforwarding Allgemein Um Geräte im lokalen Netzwerk von überall aus über das Internet erreichen zu können, kommt man um die Themen Dynamik DNS (kurz DynDNS) und Portweiterleitung(auch
MehrFachbericht zum Thema: Anforderungen an ein Datenbanksystem
Fachbericht zum Thema: Anforderungen an ein Datenbanksystem von André Franken 1 Inhaltsverzeichnis 1 Inhaltsverzeichnis 1 2 Einführung 2 2.1 Gründe für den Einsatz von DB-Systemen 2 2.2 Definition: Datenbank
Mehrmysql - Clients MySQL - Abfragen eine serverbasierenden Datenbank
mysql - Clients MySQL - Abfragen eine serverbasierenden Datenbank In den ersten beiden Abschnitten (rbanken1.pdf und rbanken2.pdf) haben wir uns mit am Ende mysql beschäftigt und kennengelernt, wie man
MehrSchritt 1: Starten Sie Hidemyass, wählen Sie "IP: Port Proxies"
Gesperrtes YouTube Video Der Frust surft mit: Wir sorgen dafür, dass Sie den Bildschirm "Dieses Video ist in deinem Land nicht verfügbar" nie wieder sehen müssen. Wir zeigen Ihnen, wie Sie händisch einen
MehrTask: Nmap Skripte ausführen
Task: Nmap Skripte ausführen Inhalt Einfache Netzwerkscans mit NSE Ausführen des Scans Anpassung der Parameter Einleitung Copyright 2009-2015 Greenbone Networks GmbH Herkunft und aktuellste Version dieses
MehrEr musste so eingerichtet werden, dass das D-Laufwerk auf das E-Laufwerk gespiegelt
Inhaltsverzeichnis Aufgabe... 1 Allgemein... 1 Active Directory... 1 Konfiguration... 2 Benutzer erstellen... 3 Eigenes Verzeichnis erstellen... 3 Benutzerkonto erstellen... 3 Profil einrichten... 5 Berechtigungen
MehrAnleitung zum erfassen von Last Minute Angeboten und Stellenangebote
Anleitung zum erfassen von Last Minute Angeboten und Stellenangebote Zweck dieser Anleitung ist es einen kleinen Überblick über die Funktion Last Minute auf Swisshotelportal zu erhalten. Für das erstellen
Mehrwww.computeria-olten.ch Monatstreff für Menschen ab 50 Temporäre Dateien / Browserverlauf löschen / Cookies
www.computeria-olten.ch Monatstreff für Menschen ab 50 Merkblatt 42 Temporäre Dateien / Browserverlauf löschen / Cookies Im Internet-Explorer Extras / Browserverlauf löschen Jetzt entscheiden, was man
MehrAnleitung öffentlicher Zugang einrichten
TRK-DashBoard Anleitung öffentlicher Zugang einrichten Manual für Kunden VERSION DATUM AUTOR DATEINAME 1.0 8. SEPTEMBER 2011 HRR ANLEITUNG_OEFFENTLICHER_ZUGANG_DASHBOARD_V10 INHALT 1 ALLGEMEINE INFORMATIONEN...
MehrTipps und Tricks zu Netop Vision und Vision Pro
Tipps und Tricks zu Netop Vision und Vision Pro Zulassen, filtern, sperren: Das Internet im Unterricht gezielt einsetzen Das Internet ist ein dynamisches Gebilde, das viel Potenzial für den Unterricht
MehrAnleitung für die Registrierung und das Einstellen von Angeboten
Anleitung für die Registrierung und das Einstellen von Angeboten Das FRROOTS Logo zeigt Ihnen in den Abbildungen die wichtigsten Tipps und Klicks. 1. Aufrufen der Seite Rufen Sie zunächst in Ihrem Browser
MehrDownloadfehler in DEHSt-VPSMail. Workaround zum Umgang mit einem Downloadfehler
Downloadfehler in DEHSt-VPSMail Workaround zum Umgang mit einem Downloadfehler Downloadfehler bremen online services GmbH & Co. KG Seite 2 Inhaltsverzeichnis Vorwort...3 1 Fehlermeldung...4 2 Fehlerbeseitigung...5
Mehretermin Einbindung in Outlook
etermin Einbindung in Outlook 1. Einführung Über etermin gebuchte Termine können bei Bedarf auch mit externen Terminkalendern, wie zum Beispiel Outlook, ical oder Google synchronisiert werden. Dieses Dokument
MehrHandbuch für Redakteure
Handbuch für Redakteure Erste Schritte... 1 Artikel erstellen... 2 Artikelinhalt bearbeiten... 3 Artikel bearbeiten... 3 Trennen der Druck- und der Online-Version.. 4 Grunddaten ändern... 5 Weitere Artikel-eigenschaften...
MehrTipps & Tricks Neuerungen Nr. 5/ 2015. Externe Web-Shops im UniKat für Laborverbrauchsmaterial & Chemikalien
Tipps & Tricks Neuerungen Nr. 5/ 2015 V01 08-06-2015 Externe Web-Shops im UniKat für Laborverbrauchsmaterial & Chemikalien Inhalt Einleitung... 2 Externe Web-Shops auswählen... 3 Artikelsuche und Artikelauswahl...
MehrICS-Addin. Benutzerhandbuch. Version: 1.0
ICS-Addin Benutzerhandbuch Version: 1.0 SecureGUARD GmbH, 2011 Inhalt: 1. Was ist ICS?... 3 2. ICS-Addin im Dashboard... 3 3. ICS einrichten... 4 4. ICS deaktivieren... 5 5. Adapter-Details am Server speichern...
MehrFuxMedia Programm im Netzwerk einrichten am Beispiel von Windows 7
FuxMedia Programm im Netzwerk einrichten am Beispiel von Windows 7 Die Installation der FuxMedia Software erfolgt erst NACH Einrichtung des Netzlaufwerks! Menüleiste einblenden, falls nicht vorhanden Die
MehrEinrichten eines Postfachs mit Outlook Express / Outlook bis Version 2000
Folgende Anleitung beschreibt, wie Sie ein bestehendes Postfach in Outlook Express, bzw. Microsoft Outlook bis Version 2000 einrichten können. 1. Öffnen Sie im Menü die Punkte Extras und anschließend Konten
Mehr.htaccess HOWTO. zum Schutz von Dateien und Verzeichnissen mittels Passwortabfrage
.htaccess HOWTO zum Schutz von Dateien und Verzeichnissen mittels Passwortabfrage Stand: 21.06.2015 Inhaltsverzeichnis 1. Vorwort...3 2. Verwendung...4 2.1 Allgemeines...4 2.1 Das Aussehen der.htaccess
MehrInstallation der SAS Foundation Software auf Windows
Installation der SAS Foundation Software auf Windows Der installierende Benutzer unter Windows muss Mitglied der lokalen Gruppe Administratoren / Administrators sein und damit das Recht besitzen, Software
Mehr2. Einrichtung der ODBC-Schnittstelle aus orgamax (für 32-bit-Anwendungen)
1. Einführung: Über den ODBC-Zugriff können Sie bestimmte Daten aus Ihren orgamax-mandanten in anderen Anwendungen (beispielsweise Microsoft Excel oder Microsoft Access) einlesen. Dies bietet sich beispielsweise
MehrMit der Maus im Menü links auf den Menüpunkt 'Seiten' gehen und auf 'Erstellen klicken.
Seite erstellen Mit der Maus im Menü links auf den Menüpunkt 'Seiten' gehen und auf 'Erstellen klicken. Es öffnet sich die Eingabe Seite um eine neue Seite zu erstellen. Seiten Titel festlegen Den neuen
MehrBerechtigungen im Kalender Anleitung für die Rechtevergabe im Outlook Kalender 2010. FHNW, Services, ICT
Berechtigungen im Kalender Anleitung für die Rechtevergabe im Outlook Kalender 2010 FHNW, Services, ICT Windisch, März 2013 Berechtigungen im Kalender 1 1 Gruppen 3 1.1 Die Gruppe/der Benutzer Standard
MehrKurzanleitung zu. von Daniel Jettka 18.11.2008
Kurzanleitung zu Tigris.org Open Source Software Engineering Tools von Daniel Jettka 18.11.2008 Inhaltsverzeichnis 1.Einführung...1 2.Das Projektarchivs...3 2.1.Anlegen des Projektarchivs...3 2.2.Organisation
MehrIhre Interessentendatensätze bei inobroker. 1. Interessentendatensätze
Ihre Interessentendatensätze bei inobroker Wenn Sie oder Ihre Kunden die Prozesse von inobroker nutzen, werden Interessentendatensätze erzeugt. Diese können Sie direkt über inobroker bearbeiten oder mit
MehrGEVITAS Farben-Reaktionstest
GEVITAS Farben-Reaktionstest GEVITAS Farben-Reaktionstest Inhalt 1. Allgemeines... 1 2. Funktionsweise der Tests... 2 3. Die Ruhetaste und die Auslösetaste... 2 4. Starten der App Hauptmenü... 3 5. Auswahl
MehrEine eigene Seite auf Facebook-Fanseiten einbinden und mit einem Tab verbinden.
Eine eigene Seite auf Facebook-Fanseiten einbinden und mit einem Tab verbinden. Nach den Änderungen die Facebook vorgenommen hat ist es einfacher und auch schwerer geworden eigene Seiten einzubinden und
MehrKURZANLEITUNG CLOUD OBJECT STORAGE
KURZANLEITUNG CLOUD OBJECT STORAGE Version 1.12 01.07.2014 SEITE _ 2 INHALTSVERZEICHNIS 1. Einleitung... Seite 03 2. Anmelden am Cloud&Heat Dashboard... Seite 04 3. Anlegen eines Containers... Seite 05
MehrNach der Anmeldung im Backend Bereich landen Sie im Kontrollzentrum, welches so aussieht:
Beiträge erstellen in Joomla Nach der Anmeldung im Backend Bereich landen Sie im Kontrollzentrum, welches so aussieht: Abbildung 1 - Kontrollzentrum Von hier aus kann man zu verschiedene Einstellungen
MehrLayoutmodelle. Steffen Schwientek Große Klostergasse 5 61169 Friedberg Email:schwientek@web.de Web :schlaukopp.org
Layoutmodelle HTML wurde von ihren Erfindern nicht als Layoutsprache entworfen, sondern zur Informationsübermittlung entworfen Es gab verschiedene Modelle, welche das Web populär machten und. Bei Erstellung
MehrS/W mit PhotoLine. Inhaltsverzeichnis. PhotoLine
PhotoLine S/W mit PhotoLine Erstellt mit Version 16.11 Ich liebe Schwarzweiß-Bilder und schaue mir neidisch die Meisterwerke an, die andere Fotografen zustande bringen. Schon lange versuche ich, auch so
MehrAbamsoft Finos im Zusammenspiel mit shop to date von DATA BECKER
Abamsoft Finos im Zusammenspiel mit shop to date von DATA BECKER Abamsoft Finos in Verbindung mit der Webshopanbindung wurde speziell auf die Shop-Software shop to date von DATA BECKER abgestimmt. Mit
MehrKonfiguration VLAN's. Konfiguration VLAN's IACBOX.COM. Version 2.0.1 Deutsch 01.07.2014
Konfiguration VLAN's Version 2.0.1 Deutsch 01.07.2014 In diesem HOWTO wird die Konfiguration der VLAN's für das Surf-LAN der IAC-BOX beschrieben. Konfiguration VLAN's TITEL Inhaltsverzeichnis Inhaltsverzeichnis...
MehrSie wollen Was heißt das? Grundvoraussetzung ist ein Bild oder mehrere Bilder vom Wechseldatenträger
Den Speicherplatz wechseln oder eine Sicherungskopie erstellen. Es lässt sich nicht verhindern. Manche Sachen liegen am falschen Platz, können gelöscht werden oder man will vor der Bearbeitung eine Sicherungskopie
MehrAnleitung zum Login. über die Mediteam- Homepage und zur Pflege von Praxisnachrichten
Anleitung zum Login über die Mediteam- Homepage und zur Pflege von Praxisnachrichten Stand: 18.Dezember 2013 1. Was ist der Mediteam-Login? Alle Mediteam-Mitglieder können kostenfrei einen Login beantragen.
MehrGrundfunktionen und Bedienung
Kapitel 13 Mit der App Health ist eine neue Anwendung in ios 8 enthalten, die von vorangegangenen Betriebssystemen bislang nicht geboten wurde. Health fungiert dabei als Aggregator für die Daten von Fitness-
MehrSoftware Engineering Klassendiagramme Assoziationen
Software Engineering Klassendiagramme Assoziationen Prof. Adrian A. Müller, PMP, PSM 1, CSM Fachbereich Informatik und Mikrosystemtechnik 1 Lesen von Multiplizitäten (1) Multiplizitäten werden folgendermaßen
MehrKurzanleitung. MEYTON Aufbau einer Internetverbindung. 1 Von 11
Kurzanleitung MEYTON Aufbau einer Internetverbindung 1 Von 11 Inhaltsverzeichnis Installation eines Internetzugangs...3 Ist mein Router bereits im MEYTON Netzwerk?...3 Start des YAST Programms...4 Auswahl
Mehr