magazin JAVA Mag Groovy für Swing uck JavaFX Tutorial Apache Axis2 Object Caching mit AOP CD-INHALT » 34 » 25 » 48 » 14 » 54 » 65

Größe: px
Ab Seite anzeigen:

Download "magazin JAVA Mag Groovy für Swing uck JavaFX Tutorial Apache Axis2 Object Caching mit AOP CD-INHALT » 34 » 25 » 48 » 14 » 54 » 65"

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 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

Mehr

Inhalt. 1 Einleitung AUTOMATISCHE DATENSICHERUNG AUF EINEN CLOUDSPEICHER

Inhalt. 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...

Mehr

Lizenzen auschecken. Was ist zu tun?

Lizenzen 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.

Mehr

Version smarter mobile(zu finden unter Einstellungen, Siehe Bild) : Gerät/Typ(z.B. Panasonic Toughbook, Ipad Air, Handy Samsung S1):

Version 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

Mehr

icloud nicht neu, aber doch irgendwie anders

icloud 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

Mehr

Einstellungen 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 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

Mehr

Datensicherung. Beschreibung der Datensicherung

Datensicherung. 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 Ü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

Mehr

Live Update (Auto Update)

Live 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

Mehr

Einrichtung des Cisco VPN Clients (IPSEC) in Windows7

Einrichtung 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

Mehr

Web-Kürzel. Krishna Tateneni Yves Arrouye Deutsche Übersetzung: Stefan Winter

Web-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.........................................

Mehr

Informationen zum neuen Studmail häufige Fragen

Informationen 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:

Mehr

Diese Ansicht erhalten Sie nach der erfolgreichen Anmeldung bei Wordpress.

Diese 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,

Mehr

Stellen Sie bitte den Cursor in die Spalte B2 und rufen die Funktion Sverweis auf. Es öffnet sich folgendes Dialogfenster

Stellen 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.

Mehr

L10N-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 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

Mehr

So die eigene WEB-Seite von Pinterest verifizieren lassen!

So 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

Mehr

Was man mit dem Computer alles machen kann

Was 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

Mehr

40-Tage-Wunder- Kurs. Umarme, was Du nicht ändern kannst.

40-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

Mehr

Anleitung über den Umgang mit Schildern

Anleitung ü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

Mehr

Ist 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? 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,

Mehr

Speicher in der Cloud

Speicher 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

Mehr

Lineargleichungssysteme: Additions-/ Subtraktionsverfahren

Lineargleichungssysteme: Additions-/ Subtraktionsverfahren Lineargleichungssysteme: Additions-/ Subtraktionsverfahren W. Kippels 22. Februar 2014 Inhaltsverzeichnis 1 Einleitung 2 2 Lineargleichungssysteme zweiten Grades 2 3 Lineargleichungssysteme höheren als

Mehr

Fotostammtisch-Schaumburg

Fotostammtisch-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

Mehr

GeoPilot (Android) die App

GeoPilot (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

Mehr

Professionelle Seminare im Bereich MS-Office

Professionelle 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

Mehr

Partitionieren in Vista und Windows 7/8

Partitionieren 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".

Mehr

EasyWk DAS Schwimmwettkampfprogramm

EasyWk 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

Mehr

Albert HAYR Linux, IT and Open Source Expert and Solution Architect. Open Source professionell einsetzen

Albert 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.

Mehr

COMPUTER MULTIMEDIA SERVICE

COMPUTER 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

Mehr

Bedienungsanleitung für den SecureCourier

Bedienungsanleitung 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

Mehr

Der Kalender im ipad

Der 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,

Mehr

In dem unterem Feld können Sie Ihre E-Mail eintragen, wenn sie im System hinterlegt wurde. Dann wird Ihnen Ihr Passwort noch einmal zugeschickt.

In 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

Mehr

Novell 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. 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

Mehr

Um zu prüfen welche Version auf dem betroffenen Client enthalten ist, gehen Sie bitte wie folgt vor:

Um 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

Mehr

Leichte-Sprache-Bilder

Leichte-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

Mehr

Ein mobiler Electronic Program Guide

Ein 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

Mehr

Professionelle Seminare im Bereich MS-Office

Professionelle 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

Mehr

robotron*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 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 !"# $ " %& 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

Mehr

Universal Dashboard auf ewon Alarmübersicht auf ewon eigener HTML Seite.

Universal 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

Mehr

Facebook I-Frame Tabs mit Papoo Plugin erstellen und verwalten

Facebook 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

Mehr

Sie werden sehen, dass Sie für uns nur noch den direkten PDF-Export benötigen. Warum?

Sie 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

Mehr

Java Script für die Nutzung unseres Online-Bestellsystems

Java 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,

Mehr

Logics App-Designer V3.1 Schnellstart

Logics 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...

Mehr

Wo finde ich die Software? - Jedem ProLiant Server liegt eine Management CD bei. - Über die Internetseite http://www.hp.

Wo 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

Mehr

Dokumentation IBIS Monitor

Dokumentation 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

Mehr

SMS/ MMS Multimedia Center

SMS/ 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

Mehr

Durchführung der Datenübernahme nach Reisekosten 2011

Durchfü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,

Mehr

Herzlich Willkommen bei der nfon GmbH

Herzlich 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

Mehr

CSS-Grundlagen. Etwas über Browser. Kapitel. Die Vorbereitung

CSS-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

Mehr

5.2 Neue Projekte erstellen

5.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

Mehr

Zwischenablage (Bilder, Texte,...)

Zwischenablage (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

Mehr

Handbuch für Redakteure

Handbuch 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

Mehr

Adminer: Installationsanleitung

Adminer: 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

Mehr

Schü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 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

Mehr

Installation des Authorware Webplayers für den Internet Explorer unter Windows Vista

Installation 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

Mehr

Erklärung zu den Internet-Seiten von www.bmas.de

Erklä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

Mehr

Lokale Installation von DotNetNuke 4 ohne IIS

Lokale 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

Mehr

Agile Vorgehensmodelle in der Softwareentwicklung: Scrum

Agile 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

Mehr

Benutzerhandbuch. Leitfaden zur Benutzung der Anwendung für sicheren Dateitransfer.

Benutzerhandbuch. 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

Mehr

SEMINAR Modifikation für die Nutzung des Community Builders

SEMINAR 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

Mehr

Internationales Altkatholisches Laienforum

Internationales 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

Mehr

Guide DynDNS und Portforwarding

Guide 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

Mehr

Fachbericht zum Thema: Anforderungen an ein Datenbanksystem

Fachbericht 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

Mehr

mysql - Clients MySQL - Abfragen eine serverbasierenden Datenbank

mysql - 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

Mehr

Schritt 1: Starten Sie Hidemyass, wählen Sie "IP: Port Proxies"

Schritt 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

Mehr

Task: Nmap Skripte ausführen

Task: 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

Mehr

Er musste so eingerichtet werden, dass das D-Laufwerk auf das E-Laufwerk gespiegelt

Er 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

Mehr

Anleitung zum erfassen von Last Minute Angeboten und Stellenangebote

Anleitung 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

Mehr

www.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 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

Mehr

Anleitung öffentlicher Zugang einrichten

Anleitung ö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...

Mehr

Tipps und Tricks zu Netop Vision und Vision Pro

Tipps 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

Mehr

Anleitung für die Registrierung und das Einstellen von Angeboten

Anleitung 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

Mehr

Downloadfehler in DEHSt-VPSMail. Workaround zum Umgang mit einem Downloadfehler

Downloadfehler 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

Mehr

etermin Einbindung in Outlook

etermin 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

Mehr

Handbuch für Redakteure

Handbuch 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...

Mehr

Tipps & Tricks Neuerungen Nr. 5/ 2015. Externe Web-Shops im UniKat für Laborverbrauchsmaterial & Chemikalien

Tipps & 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...

Mehr

ICS-Addin. Benutzerhandbuch. Version: 1.0

ICS-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...

Mehr

FuxMedia Programm im Netzwerk einrichten am Beispiel von Windows 7

FuxMedia 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

Mehr

Einrichten eines Postfachs mit Outlook Express / Outlook bis Version 2000

Einrichten 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 .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

Mehr

Installation der SAS Foundation Software auf Windows

Installation 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

Mehr

2. Einrichtung der ODBC-Schnittstelle aus orgamax (für 32-bit-Anwendungen)

2. 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

Mehr

Mit der Maus im Menü links auf den Menüpunkt 'Seiten' gehen und auf 'Erstellen klicken.

Mit 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

Mehr

Berechtigungen 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 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

Mehr

Kurzanleitung zu. von Daniel Jettka 18.11.2008

Kurzanleitung 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

Mehr

Ihre Interessentendatensätze bei inobroker. 1. Interessentendatensätze

Ihre 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

Mehr

GEVITAS Farben-Reaktionstest

GEVITAS 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

Mehr

Eine eigene Seite auf Facebook-Fanseiten einbinden und mit einem Tab verbinden.

Eine 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

Mehr

KURZANLEITUNG CLOUD OBJECT STORAGE

KURZANLEITUNG 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

Mehr

Nach der Anmeldung im Backend Bereich landen Sie im Kontrollzentrum, welches so aussieht:

Nach 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

Mehr

Layoutmodelle. Steffen Schwientek Große Klostergasse 5 61169 Friedberg Email:schwientek@web.de Web :schlaukopp.org

Layoutmodelle. 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

Mehr

S/W mit PhotoLine. Inhaltsverzeichnis. PhotoLine

S/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

Mehr

Abamsoft Finos im Zusammenspiel mit shop to date von DATA BECKER

Abamsoft 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

Mehr

Konfiguration VLAN's. Konfiguration VLAN's IACBOX.COM. Version 2.0.1 Deutsch 01.07.2014

Konfiguration 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...

Mehr

Sie wollen Was heißt das? Grundvoraussetzung ist ein Bild oder mehrere Bilder vom Wechseldatenträger

Sie 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

Mehr

Anleitung zum Login. über die Mediteam- Homepage und zur Pflege von Praxisnachrichten

Anleitung 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.

Mehr

Grundfunktionen und Bedienung

Grundfunktionen 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-

Mehr

Software Engineering Klassendiagramme Assoziationen

Software 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

Mehr

Kurzanleitung. MEYTON Aufbau einer Internetverbindung. 1 Von 11

Kurzanleitung. 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