Zuhause Unternehmen Anwendungsbeschleunigung: Schnellere Leistung für Endbenutzer

Anwendungsbeschleunigung: Schnellere Leistung für Endbenutzer

Anonim

Von Techopedia Staff, 2. November 2016

Imbiss: Der Moderator Eric Kavanagh erläutert mit Dr. Robin Bloor, Dez Blanchfield und Bill Ellis von IDERA die Anwendungsleistung und Möglichkeiten zur Effizienzsteigerung.

Du bist derzeit nicht angemeldet. Bitte melde dich an oder registriere dich, um das Video zu sehen.

Eric Kavanagh: Sehr geehrte Damen und Herren, hallo und herzlich willkommen bei Hot Technologies. Ja in der Tat! Mein Name ist Eric Kavanagh, ich werde heute Ihr Gastgeber für einen weiteren Webcast in dieser wirklich lustigen, aufregenden Serie sein, die wir als Kompliment zu unserer Briefing Room-Serie haben. Der Titel lautet "Anwendungsbeschleunigung: Schnellere Leistung für Endbenutzer". Leute, wer will das nicht? Wenn ich der Typ bin, der Ihrer Anwendung hilft, schneller zu laufen, denke ich, dass ich der Typ bin, der mir nach der Arbeit an der Bar Bier kauft. Es muss eine ziemlich coole Sache sein, reinzugehen und die Bewerbung von jedem zu beschleunigen.

Es gibt eine Folie über Ihre wirklich, schlagen Sie mich auf Twitter @Eric_Kavanagh. Ich versuche immer, zurück zu folgen und ich twittere immer wieder, wenn Sie mich erwähnen, also zögern Sie nicht, mich zu erwähnen.

Der ganze Zweck dieser Show ist es, sich auf verschiedene Aspekte der Unternehmenstechnologie zu konzentrieren und dabei zu helfen, bestimmte Disziplinen oder bestimmte Gesichter zu definieren, wenn Sie so wollen. Häufig greifen Anbieter bestimmte Marketingbegriffe auf und sprechen darüber, wie sie dies oder jenes oder etwas anderes tun. Diese Show sollte unserem Publikum wirklich helfen, zu verstehen, was ein Software-Tool benötigt, um führend in seinem Bereich zu sein. Das Format hierfür sind zwei Analysten. Jeder geht zuerst, im Gegensatz zum Briefing Room, in dem der Verkäufer zuerst geht. Jeder gibt seine Meinung dazu ab, was er für wichtig hält, damit Sie über eine bestimmte Art von Technologie Bescheid wissen.

Heute sprechen wir über Anwendungsbeschleunigung. Wir werden von Dez Blanchfield und Doktor Robin Bloor hören - wir sind heute auf der ganzen Welt - und dann wählt sich Bill Ellis aus dem Großraum Virginia ein. Damit übergebe ich es unserem ersten Moderator, Dr. Bloor. Wir haben übrigens den Hashtag von #podcast getwittert, also zögern Sie nicht zu twittern. Nimm es weg.

Dr. Robin Bloor: Okay, danke für diese Einführung. Anwendungsleistung und Servicelevel - das ist eine Art Bereich, in dem ich im Laufe der Jahre viel gearbeitet habe, in dem Sinne, dass ich tatsächlich sehr viel Arbeit in der Leistungsüberwachung und in einem Bereich geleistet habe Auf die eine oder andere Weise, wie man versucht, diese Ebenen zu berechnen. Es muss gesagt werden, dass bis - wir diese Ära hatten, in der Menschen Systeme in Silos bauten. Grundsätzlich ist die Menge an Arbeit, die sie tatsächlich leisten müssen, damit ein System eine vernünftige Leistung erbringt, wenn es sich in einem Silo befindet, nicht allzu schwer, da nur sehr wenige Variablen berücksichtigt werden müssen. Sobald wir richtig vernetzt waren, kam die interaktive und serviceorientierte Ausrichtung ins Spiel. Es wurde ein bisschen schwierig. Leistung kann eindimensional sein. Wenn Sie nur daran denken, dass eine Anwendung einen bestimmten Codepfad wiederholt ausführt, fühlt sich dies vernünftigerweise wie eine eindimensionale Sache an. Sobald Sie anfangen, über Service-Levels zu sprechen, sprechen Sie tatsächlich über mehrere Dinge, die um Computerressourcen konkurrieren. Es wird sehr schnell mehrdimensional. Wenn Sie anfangen, über Geschäftsprozesse zu sprechen, können Geschäftsprozesse aus mehreren Anwendungen zusammengeführt werden. Wenn Sie von einer serviceorientierten Architektur sprechen, kann eine bestimmte Anwendung tatsächlich auf die Funktionen mehrerer Anwendungen zugreifen. Dann wird es eine sehr komplizierte Sache.

Ich habe es mir angesehen - vor langer Zeit habe ich dieses Diagramm gezeichnet. Dieses Diagramm ist mindestens 20 Jahre alt. Im Grunde nenne ich es das Diagramm von Allem, weil es eine Möglichkeit ist, alles zu betrachten, was in der IT-Umgebung existiert. Es sind wirklich nur vier Teile: Benutzer, Daten, Software und Hardware. Natürlich ändern sie sich im Laufe der Zeit, aber Sie erkennen tatsächlich, wenn Sie dies betrachten, dass es eine hierarchische Explosion von jedem dieser Stücke gibt. Eine Hardware ja, eine Hardware kann ein Server sein, aber ein Server besteht möglicherweise aus mehreren CPUs, Netzwerktechnologie und Speicher, und das ist eine Menge von Controllern, wie es passiert. Wenn man sich das anschaut, zerfällt alles in Stücke. Wenn Sie tatsächlich darüber nachdenken, all dies in Bezug auf Daten zu orchestrieren, die sich ändern, und die Leistung der Software ändert, weil sich die Hardware ändert, und so weiter, dann sehen Sie tatsächlich eine unglaublich schwierige Situation mit vielen Variationen. Dies ist die Komplexitätskurve. Natürlich ist es eine Komplexitätskurve für so ziemlich alles, aber ich habe sie immer wieder gezeichnet gesehen, wenn ich über Computer gesprochen habe. Wenn Sie Knoten auf einer Achse und die wichtigen Verbindungen auf der anderen Achse platzieren, erhalten Sie im Grunde eine Komplexitätskurve. Es spielt fast keine Rolle, welche Knoten und Verbindungen vorhanden sind, und dies ist hilfreich, wenn Sie das Volumenwachstum im Telefonnetz darstellen möchten.

Tatsächlich sprechen Sie, wenn Sie über Knoten in der Computerumgebung sprechen, über einzelne Dinge, die sich gegenseitig interessieren. Es stellt sich heraus, dass Komplexität eine Frage der Sortenstruktur und der verschiedenen Einschränkungen ist, denen Sie gehorchen möchten. Auch die Zahlen. Wenn die Zahlen steigen, werden sie verrückt. Ich hatte gestern einen interessanten Chat, ich habe mit jemandem gesprochen - ich kann nicht sagen, wer er war, aber es ist nicht wirklich wichtig - sie sprachen über eine Site mit 40.000 - das sind vier-null, 40.000 - Instanzen von Datenbanken auf der Website. Denken Sie nur daran - 40.000 verschiedene Datenbanken. Natürlich das einzige, was wir hatten - sie hatten offensichtlich viele, viele tausend Anwendungen. Wir sprechen über eine sehr große Organisation, aber ich kann es nicht nennen. Sie sehen sich das tatsächlich an und Sie versuchen tatsächlich auf die eine oder andere Weise, Service-Levels zu erhalten, die auf der ganzen Linie für mehrere Benutzer mit mehreren unterschiedlichen, wenn Sie möchten, Erwartungen angemessen sind. Es ist eine komplexe Situation, und das Einzige, was ich wirklich sage, ist, dass dieses Zeug komplex ist. Die Zahlen nehmen immer zu. Die Einschränkungen werden durch Geschäftsprozesse und Geschäftsziele bestimmt. Sie werden bemerkt haben, dass sich die Erwartungen geändert haben.

Ich erinnere mich, dass, sobald Gmail, Yahoo Mail und Hotmail, all diese Mail-Systeme auftauchten, die Leute anfingen zu erwarten, dass ihre internen Mail-Systeme innerhalb des Unternehmens die Servicelevels dieser riesigen Operationen mit riesigen Serverfarmen außerhalb verdienen würden die Organisation und begann unter Druck gesetzt zu werden, um all diese Dinge zu ermöglichen. Eigentlich sind Vereinbarungen zum Servicelevel eine Sache, aber Erwartungen sind eine andere Sache und sie bekämpfen sich innerhalb einer Organisation, eine unangenehme Sache. Hier ist nur eine Geschäftsperspektive. In einigen Systemen beträgt die optimale Reaktionszeit ein Zehntel der menschlichen Reaktionszeit. Eine Zehntelsekunde ist die Zeit, die eine Kobra benötigt, um Sie zu beißen. Wenn du vor einer Kobra stehst und sie dich beißt, ist es zu spät, weil du nicht in einer Zehntelsekunde antworten kannst. Eine Zehntelsekunde ist ungefähr die Zeit, die der Ball benötigt, um die Hand des Werfers zu verlassen und den Mann mit dem Schläger zu erreichen. Grundsätzlich muss er, wenn er den Ball werfen sieht, genau zu diesem Zeitpunkt reagieren. Menschliche Reaktion, eine interessante Sache. Software-to-Software kann natürlich eine höhere Erwartung haben.

Dann geraten Sie in einige Situationen, von denen ich denke, dass sie Marktsituationen sind, in denen der Geschäftswert in erster Linie liegt. Wenn Sie beispielsweise eine bestimmte Aktie an der Börse verkaufen möchten, ist dies wahrscheinlich weniger, da Sie denken, dass sie sinkt, und viele andere Leute denken, dass sie sinkt, erhalten Sie den besten Preis, wenn Sie zuerst auf den Markt kommen. Es gibt viele Situationen, Anzeigenschaltung und ähnliche Situationen. Sie haben diese Bewegung in Bezug auf die Service-Level-Erwartung. Sie haben eine Sache, die eine Art Glasdecke für die menschliche Reaktion ist. Sobald es sich um Software-zu-Software handelt und Sie diese Obergrenze erreicht haben, gibt es kein Best-Service-Level. Schneller als alle anderen ist das Beste.

Okay, dies ist, denke ich, die letzte Folie, die ich gemacht habe, aber dies soll Ihnen nur einen Überblick über die Komplexität geben, wenn Sie sich die Anforderungen eines Unternehmens, den Service, einmal genauer ansehen. Wenn Sie auf der linken Seite nach oben gehen, haben Sie Systemverwaltung. Dies ist eine Reihe von Software, die zur Verwaltung von Diensten dient und versucht, ein Servicelevel zu verwalten. Darüber hinaus haben Sie Business Performance Management. Wenn Sie hier im Bereich der Service-Management-Automatisierung nach unten schauen, haben Sie fragmentierte Services, die sich zu standardisierten Services entwickeln, wenn Sie tatsächlich in solche Dinge investieren möchten, die sich zu integrierten Services entwickeln, die sich zu optimierten Services entwickeln . Das meiste, was die Leute getan haben, ist, nur in der unteren linken Ecke davon. Vielleicht ein bisschen Service-Management. Business Performance Management, sehr selten. Fragmentiert, fast alles. Eine perfekte Welt würde dieses Gitter füllen. Instrumentierung - Ich erwähnte ein Suboptimierungsproblem. Sie können Teile eines Systems optimieren und es ist nicht gut für das gesamte System. Wenn Sie das Herz optimal machen, zirkuliert Ihr Blut möglicherweise zu schnell für den Rest Ihrer Organe. Das ist ein Problem bei großen Organisationen und Service-Levels. Ohne ausgefeilte Tools ist eindeutig nichts zu erreichen, da die Variablen gerade erst hinzugekommen sind. Nun, es gibt zu viele Variablen, um sie zu optimieren.

Nachdem das gesagt ist, werde ich an Dez weiterleiten, der hoffentlich über etwas ganz anderes spricht.

Dez Blanchfield: Danke, Robin. Wie Dr. Robin Bloor habe ich viel zu viele Jahre damit verbracht, über die Leistung sehr komplexer Systeme in sehr großem Maßstab nachzudenken. Wahrscheinlich nicht ganz so umfangreich wie Robin, aber Leistung ist ein tägliches Thema und es gehört zu unserer DNA, Leistung zu wollen, um das Beste aus allem herauszuholen. Tatsächlich habe ich eine Grafik von einer meiner Lieblingssachen in der Welt verwendet, Formel-I-Autorennen, bei denen der gesamte Planet eine Weile stillsteht und die Autos sehr schnell im Kreis fahren. In keinem Aspekt der Formel I geht es speziell darum, Leistung zu erzielen. Viele Leute poo-poo den Sport, weil sie denken, es ist eine Verschwendung von Geld. Es stellt sich heraus, dass das Auto, mit dem wir jeden Tag fahren, um die Kinder an den Wochenenden zum Fußball zu bringen, und an den anderen Tagen zur Schule, aus leistungsorientierter Entwicklung und Forschung stammt. Es ist eine Art Leben des Formel-I-Rennens. Die alltägliche Technologie, die alltägliche Wissenschaft, kommt oft von etwas, das sich ausschließlich auf hohe Leistung konzentriert.

Die Realität ist jedoch, dass unsere neue "Always-on" -Welt, die eine 100-prozentige Verfügbarkeit erfordert - wie Robin bereits erwähnte -, mit Dingen wie der Einführung von Webmail und anderen Diensten, die wir im Dauerbetrieb für selbstverständlich halten, und wir erwarten dies nun in unser Unternehmen und Arbeitsumfeld. Die Realität ist, dass Wachsein nicht immer bedeutet, dass Sie Ihre Vereinbarung zum Servicelevel einhalten. Ich gehe davon aus, dass die Verwaltung der Anwendungsleistung und der Verfügbarkeit von Service-Level-Agreements im letzten Jahrzehnt einen grundlegenden Wandel erfahren hat. Wir bemühen uns nicht mehr nur um die Leistung eines Systems. Wenn die Welt ein bisschen einfacher wäre, könnten wir eine Situation haben, in der ein einzelner Server, auf dem mehrere Dienste ausgeführt werden, live überwacht werden kann und die Unterstützung relativ unkompliziert war. Wir könnten - und hier ist meine kleine, die Dinge, über die wir uns Sorgen gemacht haben, als ich zum Beispiel vor vielen Jahren ein Systemadministrator war - wir würden uns umschauen, ist der Service normalerweise in Betrieb und reagiert? Kann ich mich zum Beispiel in ein Terminal einloggen? Reagiert das Betriebssystem und kann ich Befehle eingeben? Sind die Anwendungen in Betrieb? Kann ich Prozesse und Speicher bei der Ausführung von Dingen und E / A im Netzwerk usw. erkennen? In den Mainframe-Tagen konnte man hören, wie Bänder von Reißverschluss zu Reißverschluss gingen und Papier herausfiel.

Reagieren die Apps und können wir uns anmelden und Dinge auf ihnen tun? Können die Benutzer eine Verbindung zu einigen dieser Server herstellen? Es geht weiter. Sie sind ziemlich grundlegend, wissen Sie. Dann ein paar lustige - ist der Helpdesk grün? Denn wenn nicht, läuft alles gut und wer holt die Donuts? Das Leben war damals wirklich einfach. Sogar damals, und dann spreche ich mit vor 20 bis 30 Jahren, war die Komplexität noch sehr hoch. Wir könnten auf relativ einfache Weise Vereinbarungen zum Servicelevel verwalten und die Leistung im Auge behalten. Wir können es nicht mehr von Hand machen, wie Robin angedeutet hat. Die Herausforderung ist zu groß. Tatsache ist, dass einige gute Apps, Administratoren, Systemnetzwerke und Datenbanken die SLAs überwachen und einhalten können. SLAs sind jetzt so weit weg, dass ich letzte Nacht Probleme hatte, als ich meine letzten Notizen zusammenstellte, um überhaupt an das Jahr zu denken, in dem ich es das letzte Mal geschafft hatte, ein System mit einem sehr komplexen Stapel zu betrachten, es zu verstehen und sogar zu verstehen, was es war Ich gehe unter der Haube weiter und komme aus einer zutiefst technischen Umgebung. Ich kann mir nicht vorstellen, wie es ist, heute auf administrativer Ebene im Alltag damit umzugehen.

Was ist passiert? Nun, 1996 wurden datenbankgesteuerte Apps mit dem Internetboom transformiert. Viele von uns haben das durchgemacht. Auch wenn Sie sich nicht gerade mit dem Internetboom befasst haben, können Sie sich einfach umsehen und feststellen, dass wir im täglichen Leben jetzt alles mit dem Internet verbinden. Ich glaube, wir haben einen Toaster, der anscheinend die Möglichkeit bietet, auf WLAN zuzugreifen, was lächerlich ist, weil ich meinen Toaster nicht mit dem Internet verbunden brauche. In den 2000er Jahren, insbesondere zu Beginn der 2000er Jahre, mussten wir uns mit diesem massiven Anstieg der Komplexität auseinandersetzen, um im Dot-Com-Boom Serviceleistungen zu erbringen. Dann ein weiterer lächerlicher, unangenehmer Funke im Web 2.0, bei dem Smartphones entstanden und jetzt Anwendungen rund um die Uhr in unseren Händen waren und immer in Betrieb waren.

Es ist 2016, wir stehen vor einem weiteren Sumpf in Form von Cloud, Big Data und Mobilität. Dies sind Systeme, die nur so groß sind, dass es oft schwierig ist, sie zu verstehen und im Klartext zu formulieren. Wenn wir an die Tatsache denken, dass einige der großen Einhörner, von denen wir sprechen, zehntausende Petabyte an Daten haben. Dies ist der gesamte Speicherplatz auf der Festplatte, auf dem sich Ihre E-Mails, Bilder und sozialen Medien befinden. Oder in einigen Fällen, in der Transport- und Versandlogistik, ist alles im Bankgeschäft, dort, wo sich Ihr Geld befindet, wo sich Ihre Post befindet oder wo sich das, was Sie bei eBay gekauft haben, befindet. Die nächste große Welle, der wir uns gegenübersehen, ist diese sehr große Herausforderung des Internets der Dinge.

Wenn das nicht schlimm genug wäre, werden wir künstliche Intelligenz und kognitives Computing in so gut wie alles einbauen. Wir sprechen heutzutage mit Siri und Google Engines. Ich weiß, Amazon hat eine eigene. Baidu hat eines dieser Geräte, mit denen Sie sprechen können. Sie konvertieren es in Text, der in ein normales System umgewandelt wird. Die Datenbank führt eine Abfrage durch und kehrt zurück und kehrt den Prozess um. Denken Sie an die Komplexität, die damit einhergeht. Die Realität ist, dass die Komplexität des heutigen Standardanwendungsstapels die menschlichen Fähigkeiten bei weitem übersteigt. Wenn Sie über alles nachdenken, was passiert, wenn Sie einen Knopf auf Ihrem Smartphone oder Tablet drücken, sprechen Sie mit ihm, wandeln das in Text um, führen den gesamten Weg zum Internet zu einem Back-End-System, das ein Front-End empfängt Das bedeutet, es wird in eine Abfrage konvertiert, die Abfrage wird über einen Anwendungsstapel ausgeführt, eine Datenbank wird durchsucht, der Datenträger wird aufgerufen, es wird wieder ausgegeben, und in der Mitte befindet sich ein Carrier-Netzwerk und ein Statuscenter für lokale Netzwerke. Die Komplexität ist verrückt.

Wir behaupten dies effektiv als Hyperskala. Die Komplexität und Geschwindigkeit von Hyperscale ist nur Tränen in den Augen. Anwendungen und Datenbanken sind so umfangreich und komplex geworden, dass die Verwaltung der Leistung eine Wissenschaft für sich ist. Viele bezeichnen es als Raketenwissenschaft. Wir haben Vor-Ort-Technologie, wir haben Offsite-Technologie, wir haben eine Reihe von Rechenzentrumsoptionen; physisch und virtuell. Wir haben physische und virtuelle Server, wir haben Cloud, wir haben Infrastruktur als Service und Plattform als Service und Software als Service ist eine Selbstverständlichkeit. Letzteres, Software as a Service, wurde vor einigen Jahren für eine Weile beängstigend, als CFOs und Teile des Unternehmens erkannten, dass sie ihre Kreditkarte abholen und einfach selbst einkaufen und den CIO umgehen konnten, und wir nannten dies effektiv „Schatten“ IT “und die CIOs versuchen nun, dies zurückzudrehen und die Kontrolle wieder zurückzugewinnen.

In der Infrastruktur gibt es softwaredefiniertes Networking und Virtualisierung von Netzwerkfunktionen. Darunter befinden sich wahrscheinlich jetzt Mikrodienste und Apps für aktive Dienste. Wenn Sie auf eine URL klicken, befindet sich am Ende dieser URL eine Reihe von Geschäftslogiken, die beschreiben, was für die tatsächliche Bereitstellung erforderlich ist. Es muss nicht unbedingt eine vorgefertigte Logik darauf warten. Auf der einen Seite gibt es traditionelle Datenbanken, die sehr, sehr groß skaliert werden. Wir haben Hadoop-Infrastrukturen und -Ökosysteme im anderen Spektrum, die so groß sind, dass, wie ich bereits sagte, die Leute jetzt über Hunderte von Petabytes an Daten sprechen. Wir verfügen über eine komplexe Mobilität in Bezug auf mobile Geräte, Laptops, Telefone und Tablets.

Wir haben BYOD in einigen geschlossenen Umgebungen und zunehmend jetzt, da die erfahrenen Leute der Generation Y ihre eigenen Geräte mitbringen. Wir lassen sie nur über Web-Interfaces mit ihnen reden. Entweder über das Internet oder über WLAN haben wir ein kostenloses WLAN im Café unten, während sie Kaffee trinken. Oder unser internes WLAN. Maschine-zu-Maschine ist jetzt allgegenwärtig. Das gehört nicht direkt zum Internet der Dinge, ist aber auch verwandt. Das Internet der Dinge ist ein völlig neues Spiel mit einer Komplexität, die umwerfend ist. Künstliche Intelligenz, und wenn Sie denken, dass das, womit wir jetzt spielen, mit all den Siri und anderen verwandten Geräten, mit denen wir sprechen, komplex ist, warten Sie, bis Sie zu einer Situation kommen, in der Sie etwas sehen, das Olli genannt wird, das eine 3-D ist Ein gedruckter Bus, der ungefähr sechs Personen fasst und in der Stadt herumfahren kann. Sie können einfach Englisch sprechen, und er wird zu Ihnen zurückkehren. Wenn es auf den Verkehr trifft, entscheidet es, links oder rechts von dem Hauptbereich abzubiegen, in dem es Verkehr gibt. Wenn es sich dreht und Sie sich Sorgen machen, warum es links oder rechts von der Hauptstraße abbiegt, sagt es Ihnen: „Mach dir keine Sorgen, ich werde gleich links abbiegen. Es herrscht Verkehr und ich werde ihn umgehen. “

Die Leistung aller dort vorhandenen Systeme und die Komplexität zu verwalten und zu verfolgen, wohin diese Daten gelangen, ob sie in die Datenbank gelangen, alle Interconnects und alle relevanten Bits sind einfach umwerfend. Die Realität sieht so aus, dass für die Verwaltung von Leistung und SLAs in der heutigen Geschwindigkeit und Größenordnung Tools und Systeme erforderlich sind. In der Standardeinstellung ist dies nicht mehr der Fall, bei dem man einfach denken würde, dass es schön wäre, ein Tool zu haben - dies ist eine Voraussetzung. es ist einfach absolut notwendig. Hier ist nur ein kleines Beispiel, eine Liste der übergeordneten Anwendungsdesigndiagramme für die OpenStack-Cloud (Open Source Software Defined Cloud). Dies ist nur ein großer Teil. Dies ist nicht nur Server und Datenbank. Hier repräsentiert jeder kleine blaue Fleck eine Ansammlung von Dingen. In einigen Fällen werden Dateien und Server oder Hunderte von Datenbanken oder natürlich nicht mehr als Zehntausende von kleinen Teilen der Anwendungslogik ausgeführt. Das ist eine kleine Version. Es ist wirklich irrsinnig, wenn man über die Komplexität nachdenkt, die dabei entsteht. Selbst im großen Datenraum werde ich heute nur ein paar Screenshots der Marken platzieren. Wenn Sie über alle Teile nachdenken, die wir hier verwalten müssen, dann sprechen wir nicht nur von einer Marke, sondern von allen Marken in der Big-Data-Landschaft und der Top-Marke, nicht nur von jeder kleinen oder Open-Source-Marke. Du siehst aus und du denkst, es ist ein erstaunliches Diagramm.

Werfen wir einen Blick auf ein paar vertikale Positionen. Nehmen wir zum Beispiel das Marketing. Hier ist ein ähnliches Diagramm, aber von den Technologie-Stacks, die nur in der Marketing-Technologie verfügbar sind. Dies ist das Diagramm von 2011. Hier ist die 2016er Version. Denken Sie nur daran, dies ist nur die Anzahl der Marken von Produkten, die Sie für Technologie in Bezug auf Marketing-Technologie einsetzen können. Nicht die Komplexität der darin enthaltenen Systeme, nicht die unterschiedlichen App- und Web- und Entwicklungs- und Netzwerkfunktionen und alle anderen. Nur die Marke. Es gibt das Vorher, vor fünf Jahren und hier ist das Heute. Es wird nur noch schlimmer. Wir sind an dem Punkt angelangt, an dem es Realität ist, dass Menschen einfach nicht alle Vereinbarungen zum Servicelevel sicherstellen können. Wir können nicht schnell genug und in der Größe, die wir brauchen, auf genügend Details eingehen. Hier ist ein Beispiel, wie eine Überwachungskonsole jetzt aussieht. Dies ist wie bei fast zwanzig zusammengeklebten Bildschirmen, die so tun, als wären sie ein großer, projizierter Bildschirm, der jedes kleine Stück überwacht. Jetzt ist es hier interessant, ich werde die Marke nicht erwähnen, aber diese Überwachungsplattform überwacht eine einzelne Anwendung in einer Logistik- und Versandumgebung. Nur eine App. Wenn Sie darüber nachdenken, wovon Robin gesprochen hat, wo Unternehmen jetzt 40.000 Datenbanken in Produktionsumgebungen haben können. Können Sie sich vorstellen, wie 40.000 Versionen dieser Sammlung von Bildschirmen aussehen könnten, auf denen eine Anwendung überwacht wird? Es ist eine sehr mutige Welt, in der wir leben. Wie Robin sagte und ich werde absolut zu 100 Prozent wiederholen, dass ohne die richtigen Tools, ohne die richtige Unterstützung und die Leute auf dem Tisch, die diese Tools verwenden, die Anwendungsleistung für die Menschen und ein verlorenes Spiel ist es muss mit Werkzeugen und Software gemacht werden.

Damit werde ich an unsere Freunde in IDERA weitergeben.

Eric Kavanagh: Also gut, Bill.

Bill Ellis: Danke. Meinen Bildschirm hier teilen. Kann jemand bestätigen, dass Sie meinen Bildschirm sehen können?

Dr. Robin Bloor: Ja.

Eric Kavanagh: Es sieht gut aus.

Bill Ellis: Danke. Das Einzige, worauf er sich bezog, war, dass ich es kaum erwarten kann, dass das Auto selbst fährt. Was passiert, wenn es schneit? Ich frage mich, ob die Ingenieure in Kalifornien gemerkt haben, dass es in anderen Teilen des Landes ziemlich viel schneit.

Dez Blanchfield: Das gefällt mir, daran werde ich mich erinnern.

Eric Kavanagh: Eine typische Meile pro Stunde.

Bill Ellis: Wir sind hier, um über das Application Performance Management in einer komplexen Umgebung zu sprechen. Eine Sache, über die ich gerne spreche, ist, dass viele Leute, wenn sie über Leistung sprechen, die Art der Reaktion ist, hey, mehr Server, mehr CPU, mehr Speicher, usw. Die andere Seite dieser Medaille ist die Verarbeitungseffizienz. Wirklich, das sind zwei Seiten einer Medaille und wir werden uns beide ansehen. Das ultimative Ziel ist es, die Service Level Agreements für die Geschäftstransaktionen einzuhalten. Letztendlich existiert all diese Technologie für das Geschäft. Wir sprachen über eine branchenweit erste Performance-Management-Datenbank. Das Ideal besteht darin, sich in die ideale Form der Leistung einzufügen und diese vom Beginn des Anwendungslebenszyklus an zu verwalten.

Die Themen beschränken sich auf vier Teile. Eines ist der Prozess der Leistungsverwaltung. Wir haben mit allen gesprochen und jeder hat Werkzeuge. Wenn sie keine Tools haben, haben sie Skripte oder Befehle, aber was ihnen fehlt, ist der Kontext. Der Kontext verbindet einfach die Punkte zwischen den Anwendungsstapeln. Diese Anwendungen für - sind browserbasiert. Sie sind von Tier zu Tier sehr eng miteinander verbunden. Das Zusammenspiel der Ebenen ist ebenfalls von entscheidender Bedeutung. Dann sprechen wir über den Geschäftsvorgang. Wir werden die Transparenz nicht nur für die technischen Mitarbeiter, sondern auch für die Anwendungsbesitzer und die Betriebsleiter bereitstellen.

Ich habe ein paar Fallstudien, um Ihnen zu zeigen, wie Kunden diese nutzen. Dies ist ein sehr praktischer Teil der Präsentation hier. Werfen wir einen Blick darauf, was normalerweise passiert. Ich zeichne gerne - es war wie eine unglaubliche Collage von Technologien. Die Anzahl der Technologien im Rechenzentrum ist gerade gewachsen und gewachsen und gewachsen. In der Zwischenzeit kümmert sich ein Endbenutzer nicht darum und ist sich dessen nicht bewusst. Sie möchten die Transaktion nur ausüben, verfügbar sein und sie schnell abschließen. Was normalerweise passiert, ist, dass die IT-Experten nicht wissen, dass die Endbenutzer sogar ein Problem hatten, bis sie sich selbst melden. Das beginnt mit einem zeitaufwändigen, langsamen und oft frustrierenden Prozess. Was passiert, ist, dass die Benutzer ihre Tools öffnen und sich eine Teilmenge ihres Anwendungsstapels ansehen. Mit dieser Teilmenge wird es sehr schwierig, die einfachste Frage zu beantworten. Ist es üblich, dass Sie das Problem haben? Um welche Transaktion handelt es sich? Wo im Anwendungsstapel befindet sich der Engpass? Wenn Sie die ganze Zeit über Tier für Tier schauen und diese Fragen nicht beantworten können, müssen Sie am Ende viel Zeit und Energie, viel Personal, Geld und Energie aufwenden, um dies herauszufinden.

Um dies zu lösen und eine bessere Möglichkeit zu bieten, nimmt Precise die Endbenutzerverfolgungstransaktion auf, erfasst Metadaten darüber, folgt der Transaktion über das Netzwerk, in den Webserver, in die Geschäftslogikebene und Wir unterstützen .NET und ABAP sowie PeopleCode und E-Business Suite in mehrschichtigen Anwendungen, bei denen letztendlich alle Transaktionen mit dem Aufzeichnungssystem interagieren. Unabhängig davon, ob es sich um eine Inventarsuche handelt oder ob die Berichtszeit abgelaufen ist, interagieren sie immer mit der Datenbank. Die Datenbank wird zur Grundlage für die Geschäftsleistung. Die Datenbank ist wiederum auf Speicher angewiesen. Was die Metadaten über die Transaktionen beantworten, wer, welche Transaktion, wo im Anwendungsstapel, und dann haben wir tiefe Sichtbarkeit auf Code-Ebene, um Ihnen zu zeigen, was ausgeführt wird. Diese Informationen werden fortlaufend erfasst und in die Performance-Management-Datenbank übernommen. Dies wird zu einem einzigen Notenblatt, auf dem jeder sehen kann, was los ist. Es gibt verschiedene Personen und Organisationen, die sich um das Geschehen kümmern: die technischen Experten, die Anwendungseigner und letztendlich das Unternehmen. Wenn ein Problem auftritt, möchten Sie in der Lage sein, Informationen zu dieser Transaktion zu extrahieren.

Bevor wir uns die Investitionstransaktion ansehen, möchte ich Ihnen zeigen, wie dies für verschiedene Personen in der Organisation aussehen kann. Auf einer Verwaltungsebene möchten Sie möglicherweise einen Überblick über mehrere Anwendungen erhalten. Möglicherweise möchten Sie Informationen zum Zustand erhalten, der anhand der SLA-Konformität und -Verfügbarkeit berechnet wird. Dass Gesundheit nicht bedeutet, dass alles zu 100 Prozent perfekt funktioniert. In diesem Fall ist Platz vorhanden. Sie können sehen, dass sich die Investitionstransaktion im Warnstatus befindet. Nun, ein bisschen tiefer, vielleicht in der Branche, möchten Sie einige zusätzliche Details zu einzelnen Transaktionen haben, wenn sie SLAs, Transaktionszählungen usw. verletzen. Das Betriebsteam möchte darüber durch eine Warnung von einigen benachrichtigt werden Sortieren. Wir haben Leistungswarnungen eingebaut. Wir messen die Leistung tatsächlich im Browser des Endbenutzers. Unabhängig davon, ob Internet Explorer, Chrome, Firefox usw. erkannt wurden, beantwortet dies die erste Frage: Hat ein Endbenutzer ein Problem?

Lassen Sie uns eintauchen und sehen, was wir darüber noch zeigen können. Die Leute, die an Performance interessiert sind, würden Precise eröffnen. Sie würden die Transaktionen bewerten. Sie würden in der Spalte SLA nach Transaktionen suchen, die nicht SLA-konform sind. Sie könnten sehen, welche Endbenutzer betroffen waren und wie sich diese Transaktion auf die gesamte Anwendung auswirkte. So wie Sie diese Hieroglyphen entschlüsseln, ist dies der Browser, die URL, das U steht für URL, das ist der Einstiegspunkt in die JVM. Diese spezielle JVM ruft nun einen Webserver für die zweite JVM auf, die dann die SQL-Anweisung ausführt. Dies ist eindeutig ein Datenbankproblem, da diese SQL-Anweisung für 72 Prozent der Antwortzeit verantwortlich war. Wir konzentrieren uns auf die Zeit. Zeit ist die Währung der Leistung. Auf diese Weise erfahren Endbenutzer, ob die Dinge langsam laufen oder nicht, und dies ist ein Maß für den Ressourcenverbrauch. Es ist sehr praktisch; Es ist eine Art einzelne Metrik, die für die Bewertung der Leistung am wichtigsten ist. Wenn dieses Problem an den DBA übergeben wird, handelt es sich nicht nur um ein Datenbankproblem, sondern um diese SQL-Anweisung. Dies ist der Kontext, über den ich gesprochen habe.

Mit diesen Informationen bin ich nun in der Lage zu analysieren, was passiert ist. Ich kann zuallererst sehen, dass die y-Achse die Zeit über den Tag verteilt ist. Entschuldigung, die y-Achse ist die Reaktionszeit, die x-Achse ist die Zeit über den Tag. Ich kann sehen, dass es ein Datenbankproblem gibt, es gibt zwei Vorkommnisse, gehe zurück zu diesem Ablauf, nimm diese SQL-Anweisung auf und gehe in die Expertenansicht, wo Precise dir zeigen kann, was passiert, wie lange der Code dauert ausführen. In der Datenbankebene ist es der Ausführungsplan. Sie werden feststellen, dass Precise den tatsächlichen Ausführungsplan ausgewählt hat, der zur Ausführungszeit verwendet wurde. Dieser unterscheidet sich von dem geschätzten Plan, der zum Zeitpunkt der Erstellung des Plans und nicht während der Ausführungszeit erstellt wurde. Es kann oder kann nicht widerspiegeln, dass die Datenbank tatsächlich tat.

Hier unten finden Sie eine Analyse der Antwortzeit für die SQL-Anweisung. Neunzig Prozent der im Lager verbrachten Zeit; In der CPU wurden zehn Prozent verbraucht. Ich kann den Text der SQL-Anweisung sowie den Befundbericht sehen. Der Text der SQL-Anweisung zeigt tatsächlich einige Codierungsprobleme auf. Es ist auserlesener Stern; das gibt alle Zeilen zurück - entschuldigen Sie, alle Spalten aus den Zeilen, die zurückgegeben wurden. Wir kehren zusätzliche Spalten zurück, die die Anwendung möglicherweise nicht benötigt. Diese Spalten verbrauchen Speicherplatz und Ressourcen für die Verarbeitung. Wenn Sie SAP ausführen, besteht eine der großen Änderungen, da die HANA-Datenbank säulenförmig ist, darin, dass SAP im Grunde genommen so umgeschrieben wird, dass Select Star nicht ausgewählt wird, sodass der Ressourcenverbrauch erheblich gesenkt werden kann. Dies ist im Grunde etwas, was auch in selbstentwickelten Anwendungen, ob Java, .NET usw., sehr häufig vorkommt.

Dieser Bildschirm zeigt Ihnen, wer, was, wann, wo und warum. Das Warum erhält, wie die SQL-Anweisung und der Ausführungsplan, mit denen Sie Probleme lösen können. Da Precise kontinuierlich ausgeführt wird, können Sie tatsächlich vorher und nachher auf der SQL-Anweisungsebene und auf der Transaktionsebene messen, sodass Sie entweder für sich selbst, als auch durch die Anwendungsbesitzer und für das Management messen können, ob Sie das Problem gelöst haben . Diese Dokumentation ist wirklich hilfreich. Dieser Anwendungsstapel ist sehr komplex. Tatsächlich wird von vielen Anwendungen, mit denen wir gesprochen haben, mindestens ein Teil des Anwendungsstapels unter VMware ausgeführt. In diesem Fall betrachten sie die Kundendienstanwendung, die Transaktionszeit und korrelieren sie mit der Verlangsamung, die ein Virtualisierungsereignis darstellt. Genaue Verfolgung aller Virtualisierungsereignisse. Wir haben ein Plug-in für vCenter, mit dem wir das erledigen können.

Wir können auch Konflikte erkennen. Streit ist anders als Verwertung. Eigentlich wird im Kontext der Anwendung des Kundenservers angezeigt, wenn möglicherweise ein lauter Nachbar Ihre Gast-VM beeinträchtigt. Jetzt kann ich einen Drill-In durchführen und Informationen abrufen und die beiden VMs sehen, die in diesem Fall um CPU-Ressourcen kämpfen. Dadurch kann ich die Übersicht behalten, um die Planung zu überprüfen. Ich kann eine Gast-VM auf einen anderen physischen Server stellen. All diese Arten von Dingen, auf die Sie möglicherweise reagieren, und zusätzlich dazu kann ich die Code-Effizienz untersuchen, um möglicherweise weniger CPU zu verbrauchen. Ich glaube, ich habe in dieser Präsentation ein ziemlich gutes Beispiel dafür, wie jemand den CPU-Verbrauch um Größenordnungen senken konnte.

Das war VMware. Kommen wir zum Code selbst, dem Anwendungscode. Precise kann Ihnen zeigen, was in Java, .NET, dem ABAP-Code, E-Business, PeopleCode usw. passiert. Dies sind die Einstiegspunkte in WebLogic. Hier unten gibt es einen Befundbericht, aus dem hervorgeht, dass Sie diese EJBs prüfen müssen, und der besagt, dass auch für dieses System Sperren aufgetreten sind. Hier noch einmal der Drilldown innerhalb der Geschäftslogikebene, um zu zeigen, was los ist. In diesem Fall schaue ich auf bestimmte Fälle; Ich unterstütze auch Clustering. Wenn mehrere JVMs ausgeführt werden, können Sie entweder den gesamten Cluster oder Engpässe innerhalb der einzelnen JVM untersuchen.

Wenn Sie sich verriegeln, kann ich Ausnahmen machen. Ausnahme ist ein bisschen anders als ein Leistungsproblem. In der Regel werden Ausnahmen sehr schnell ausgeführt. Da ein logischer Fehler vorliegt und Sie diesen logischen Fehler gefunden haben, endet er. Es war uns möglich, einen Stack-Trace zu Beginn einer Ausnahme zu erfassen. Dies könnte viel Zeit sparen, da versucht wird, herauszufinden, was gerade vor sich geht. Sie haben nur den Stack-Trace genau dort. Wir sind auch in der Lage, Speicherlecks zu erfassen. Die Lösung enthält auch die Datenbankschicht, in die ich einsteigen und die Datenbankinstanz auswerten kann. Wieder ist die y-Achse der Ort, an dem die Zeit verbracht wurde, die x-Achse die Zeit über den Tag. Es gibt einen Befundbericht, der mir automatisch mitteilt, was im System passiert und worauf ich achten könnte.

Ein Aspekt des Precise-Ergebnisberichts ist, dass nicht nur die Protokolle oder der Wartezustand überprüft werden, sondern alle Ausführungszustände, einschließlich der CPU, sowie die Rückgabe von Informationen aus dem Speicher. Die Speicherung ist ein sehr wichtiger Teil des Anwendungsstapels, insbesondere mit dem Aufkommen des Festkörpers. Informationen in diese Richtung zu haben, kann sehr hilfreich sein. Für bestimmte Speichereinheiten können wir einen Drilldown durchführen und anzeigen, was auf der Ebene der einzelnen Geräte geschieht. Diese Art von Informationen - wiederum ist es tiefe Sichtbarkeit; Der Anwendungsbereich ist breit gefächert, damit Sie als Anwendungsperformance-Experte nur so viele Informationen erhalten, dass Sie Ihre Anwendungen durchgängig optimieren können, um diese Geschäftstransaktionen zu erfüllen.

Ich habe ein paar Fallstudien, die ich mit Ihnen teilen wollte. Wir fahren ziemlich schnell entlang; Ich hoffe, ich gehe gut voran. Apropos Speicher, jeder ändert im Laufe der Zeit die Hardware. Es gibt eine Hardware-Garantie. Hat es wirklich geliefert, was der Verkäufer Ihnen gesagt hat? Das können Sie mit Precise auswerten. Sie kommen rein, und was hier passiert ist, sie haben im Grunde genommen eine neue Speichereinheit eingebaut, aber als die Speicheradministratoren nur die Ebene der Speichereinheiten betrachteten, sahen sie eine Menge Konflikte und dachten, es könnte ein Problem mit dieser neuen Speichereinheit geben . Mehr aus einer End-to-End-Perspektive betrachten, um genau zu zeigen, wo das tatsächlich passieren würde. Sie gingen von einem Durchsatz von ungefähr 400 Megabyte pro Sekunde aus, wobei der Speicher für 38 Prozent der Antwortzeit verantwortlich war, was ziemlich hoch ist. Mit der neuen Speichereinheit haben wir den Durchsatz auf sechshundert Megabyte pro Sekunde erhöht, also im Grunde genommen verdoppelt, und wir können den Beitrag der Speicherebene zur Transaktionszeit halbieren. Ich bin in der Lage, das tatsächlich vorher herauszufinden, dies ist die Übergangszeit und dann das Nachher.

Also noch einmal die Dokumentation, um zu beweisen, dass sich die Hardware-Investition gelohnt hat. Wegen der Komplexität, der Anzahl der Dinge gibt es alles, was passieren kann. In diesem Fall hatten sie tatsächlich eine Situation, in der alle dem DBA die Schuld gaben. Der DBA lautete: „Nun, nicht so schnell.“ Hier handelt es sich tatsächlich um eine SAP-Anwendung. Ich denke, diese Art von Szenario ist ziemlich verbreitet . Es wurde eine benutzerdefinierte Transaktion für einen Benutzer entwickelt. Der Benutzer meint: "Das ist so langsam." Der ABAP-Codierer - das ist die Programmiersprache in SAP - sagte: "Dies ist ein Datenbankproblem." Sie haben diesen Endbenutzer 60 Sekunden lang gemessen, also weit über eine Minute. Dreiundfünfzig Sekunden wurden im hinteren Teil verbracht. Sie bohrten sich in das Back-End und konnten tatsächlich die SQL-Anweisung in absteigender Reihenfolge anzeigen.

Diese Top-SQL-Anweisung, die für 25 Prozent des Ressourcenverbrauchs verantwortlich ist, hat eine durchschnittliche Ausführungszeit von zwei Millisekunden. Sie können die Datenbank nicht beschuldigen. Weißt du, hey, nicht so schnell, Mann. Die Frage ist, warum es so viele Hinrichtungen gibt. Nun, sie haben es an das ABAP zurückgesendet, er ging hinein, schaute in die Verschachtelung der Schleife, fand heraus, dass sie die Datenbank an der falschen Stelle aufriefen, sie haben im Grunde genommen die Änderung vorgenommen, die Änderung getestet und jetzt ist die neue Antwortzeit fünf Sekunden. Ein bisschen langsam, aber damit könnten sie leben. Weit besser als 60 Sekunden. Manchmal ist es der Anwendungscode, ist es die Datenbank, ist es Speicher? Dies sind die Bereiche, in denen Precise im Kontext der End-to-End-Transaktionen ins Spiel kommt. Sie beenden im Grunde diese Dinge.

Ich schaue auf die Zeit, es sieht so aus, als hätten wir noch ein bisschen Zeit, um ein paar weitere davon durchzuarbeiten. Ich streame durch diese. Diese Anwendung wurde über ein Jahr lang entwickelt. Bei der Qualitätssicherung stellten sie fest, dass die Webserver zu 100 Prozent ausgelastet waren und die Anwendung anscheinend nicht unter VMware ausgeführt werden konnte. Das erste, was alle sagten, war: „Zieh das physisch an; Es kann nicht unter VMware ausgeführt werden. “Precise bot ihnen zusätzliche Möglichkeiten, das Problem zu lösen. Wir haben uns die Transaktionen angesehen, wir haben einen Webserveraufruf gesehen, der als ASMX in IIS.NET eingeht. Es enthüllte tatsächlich den zugrunde liegenden Code. Siehst du das, wohin ich zeige? Dies ist 23 Tage, 11 Stunden. Wow, wie ist das möglich? Nun, jeder Aufruf dauert 9, 4 Sekunden und dieses Ding wird 215.000 Mal aufgerufen. Für jeden Aufruf werden 6 Sekunden CPU benötigt. Dies ist der Grund, dieser Code ist der Grund, warum dieses Ding niemals skalieren konnte. Tatsächlich konnte es physisch nicht skalieren.

Was sie getan haben, ist, dass sie zu ihren Entwicklern zurückgekehrt sind und gesagt haben: „Kann jemand etwas ändern?“ Sie hatten eine Art Wettbewerb und sie haben die verschiedenen Vorschläge ausprobiert und einen Vorschlag entwickelt, der viel bewirken konnte effizienter. Der neue hat einen Punkt geschafft, etwas weniger als zwei Sekunden, mit zwei Hundertstelsekunden in der CPU. Dies könnte nun skaliert und in der VMware-Farm ausgeführt werden. Grundsätzlich konnten wir dies sowohl auf Code- als auch auf Transaktionsebene dokumentieren. Dies ist so etwas wie das Vorher und dann das Nachher. Jetzt, da Sie hier im Stapelbalkendiagramm sehen können, das Web, .NET und Datenbank anzeigt, interagieren Sie mit der Datenbank. Dies ist ein Profil, das Sie für eine Anwendung erwarten würden, die normaler ausgeführt wird.

In Ordnung, ich wähle zusätzliche Dinge aus, die ich Ihnen zeigen kann. Viele Leute mögen das, weil dies viele Geschäfte verblüfft. Wenn Sie eine Geschäfts-SLA nicht einhalten können und alle sagen: "Helfen Sie uns". In diesem Shop ist die Geschäfts-SLA bis 15:00 Uhr eingegangen und wird an diesem Tag versendet. Es ist sehr wichtig, dass sie die Bestellungen erhalten und das Lager sehr voll ist. Der Auftragsbildschirm von JD Edwards war einfrierend, und Sie können sich sehr gut vorstellen, dass dies ein Just-in-Time-Warenwirtschaftssystem für den Einzelhandel ist. Leere Regale sind im Einzelhandel nicht akzeptabel. Muss die Ware dort haben, um sie zu verkaufen. Was wir getan haben, ist, dass wir uns in diesem Fall mit der SQL Server-Datenbank befassen. Das Erscheinungsbild ist das gleiche, egal ob es sich um SQL, Oracle, DB2 oder Sybase handelt.

Wir haben die Auswahl aus PS_PROD identifiziert und sind in der Lage, die Dauer und die Tatsache, dass sie so häufig ausgeführt werden, zu erfassen. Das Dunkelblau stimmte mit dem Schlüssel überein, der angab, dass sie nicht auf einen Wartezustand oder eine Protokollierung oder gar Speicherung warten - dieses Ding ist an die CPU gebunden. Wir haben die SQL-Anweisung bis 34301 nachverfolgt. Bei jeder Ausführung erhöhen wir unsere Zähler, um den Überblick zu behalten. Das bedeutet, dass wir einen detaillierten Verlauf haben und ich darauf zugreifen kann, indem ich auf diese Melodie-Schaltfläche klicke. Hier ist die Registerkarte "Verlauf". Dieser Bildschirm zeigt die durchschnittliche Dauer im Vergleich zu Änderungen. Mittwoch, Donnerstag, Freitag betrug die durchschnittliche Dauer etwa zwei Zehntelsekunden. Sehr wenige Bildschirme frieren ein, sie können die SLA des Unternehmens erfüllen. Am 27. Februar ändert sich etwas und plötzlich ist die Ausführungszeit abgelaufen. Dies ist jedoch langsam genug, um Zeitüberschreitungen zu verursachen, die zum Einfrieren des Bildschirms führen. Präzise, ​​indem ein detaillierter Verlauf geführt wird, einschließlich des Ausführungsplans und allgemeiner Änderungen an den Tabellenindizes, wenn diese SQL verwendet wird. Wir konnten feststellen, dass sich der Zugangsplan am 27. Februar geändert hat. Montag bis Freitag schlechte Woche. Am 5. März änderte sich der Zugangsplan erneut. Das ist eine gute Woche. Dieser rosafarbene Stern sagt uns, dass die Lautstärke aktualisiert wurde.

Hier können Sie sehen, dass die Anzahl der Zeilen in den zugrunde liegenden Tabellen zunimmt. Dies ist typisch für ein Unternehmen. Sie möchten, dass Ihre Tische wachsen. Die Sache ist, dass die Anweisungen syntaktisch analysiert werden, die SQL-Anweisungen eingehen, der Optimierer entscheiden muss, was zu tun ist und auswählen muss, wenn der Ausführungsplan schnell ist, und einen anderen Ausführungsplan auswählen muss, wenn er langsam ist, was zum Einfrieren des Bildschirms führt. Auf einer tiefen technologischen Basis muss ich wissen, was der Ausführungsplan ist, und Precise erfasst ihn für mich mit Datum und Zeitstempel. Dies ist derjenige, der schnell und effizient war, derjenige, der langsam und ineffizient war. Diese Filterverknüpfung benötigt einfach viel mehr CPU zum Abgleichen, um diese bestimmte SQL-Anweisung auszuführen. Sie haben immer noch den gleichen endgültigen Effekt, aber dieser hat im Grunde ein langsameres, weniger effizientes Rezept für die Bereitstellung der Ergebnismenge. Also treten wir durch. Hey, haben wir noch Zeit für ein paar?

Eric Kavanagh: Ja, machen Sie es.

Bill Ellis: Okay, ich werde weiterspringen. Ich möchte, dass Sie Folgendes zur Kenntnis nehmen: Wir sprachen über Hardware, über SAP, über .NET, über JD Edwards und über die Java-SQL Server-Umgebung. Das ist SAP, hier schauen wir uns PeopleSoft an. Die Unterstützungsmatrix von Precise ist breit und tief. Wenn Sie eine Anwendung haben, können wir diese höchstwahrscheinlich instrumentieren, um diese Sichtbarkeit zu gewährleisten. Eine der größten Änderungen, die derzeit stattfinden, ist die Mobilität. PeopleSoft führte die Mobilität mit seiner Fluid-Benutzeroberfläche ein. Die Fluid-Benutzeroberfläche verwendet ein System ganz anders. Diese Anwendung entwickelt sich weiter. Die Fluid-Benutzeroberfläche - aus Managementsicht können die Endbenutzer ihr Telefon verwenden, und die Produktivität wird erheblich gesteigert. Wenn Sie Hunderte, Tausende oder sogar mehr Mitarbeiter beschäftigen und deren Produktivität um 1 bis 2 Prozent steigern können, hat dies enorme Auswirkungen auf die Lohn- und Gehaltsabrechnung und alles andere. Was passierte, war, dass dieser bestimmte Shop die PeopleSoft Fluid-Benutzeroberfläche einführte. Apropos Komplexität: Dies ist der PeopleSoft-Stack. Eine Anwendung, mindestens sechs Technologien, zahlreiche Endbenutzer. Wie fängst du an?

Precise wird diese Transaktionen wieder verfolgen können. Was wir Ihnen hier zeigen, ist ein gestapeltes Balkendiagramm, das Client, Webserver, Java, Tuxedo-Datenbank und PeopleSoft-Anwendungsstapel zeigt. Die grüne Karte ist J2EE zugeordnet, was eine ausgefallene Redewendung für WebLogic ist. Dies ist die Umstellung. Die Endbenutzer beginnen mit der Verwendung der Fluid-Benutzeroberfläche und die Reaktionszeit reicht von etwa eineinhalb, zwei Sekunden bis zu etwa neun, zehn Sekunden. Was auf diesem Bildschirm nicht angezeigt wird, ist die Anzahl der Personen, die nicht geantwortet haben. In der Anwendung wurde der Bildschirm tatsächlich eingefroren. Werfen wir einen Blick auf die Sichtbarkeit, die Precise diesem Kunden bieten kann.

Wenn ich mir die PeopleSoft-Transaktionen ansehe, können sie im Grunde genommen feststellen, dass wir so etwas auf der ganzen Linie gesehen haben. Alle Transaktionen sowie alle Standorte waren betroffen. Übrigens, wenn Sie sich das ansehen, können Sie tatsächlich Orte auf der ganzen Welt sehen. Von Asien-Pazifik nach Europa sowie Nordamerika. Das Leistungsproblem wurde nicht für eine bestimmte Transaktion oder einen bestimmten geografischen Standort gefunden. Es ist systemweit. Es ist eine Art zu sagen, dass die Änderung oder die Art und Weise, wie die Fluid-Benutzeroberfläche globale Auswirkungen hatte. Wie Sie hier sehen können, wird vom Standpunkt der Skalierbarkeit aus versucht, dieselbe Art von Aktivität auszuführen, aber die Reaktionszeit ist im Grunde genommen nur verringert und verringert. Sie können sehen, dass die Dinge nicht skalieren. Die Dinge laufen sehr, sehr schlecht. Wenn ich hier die Achsenzahl und die gleichzeitigen Verbindungen betrachte, sehen Sie etwas, das in Bezug auf die Zugriffsanzahl und die Verbindungen sehr interessant ist. Hier skalieren wir nur auf ungefähr 5.000, und Sie sehen ungefähr, das ist bei 100 gleichzeitigen Verbindungen die Spitze. Dies geschieht nach; das ist vorher. Was also meine wirkliche Anforderung an das System ist, wenn sich dieses Ding skalieren lässt, liegt im Bereich von 300.000. In früheren Zeiten haben Sie mit der klassischen Benutzeroberfläche 30 gleichzeitige Verbindungen im Blick.

Dies sagt Ihnen, dass die Fluid-Benutzeroberfläche mindestens 10-mal so viele gleichzeitige Verbindungen verwendet. Wir beginnen mit PeopleSoft zurückzuziehen, was im Verborgenen passiert, damit Sie die Auswirkungen auf die Webserver und die Tatsache, dass SLAs anfangen zu brechen, sehen können. Sie werden nicht auf alles eingehen, aber was am Ende passiert, ist, dass sie sich im Grunde auf Messaging verlassen. Sie üben im Grunde genommen WebLogic aus und verursachen Warteschlangen innerhalb von Tuxedo. Es gab tatsächlich ein mehrschichtiges Abhängigkeitsproblem, das bei der Fluid-Benutzeroberfläche auftrat, aber Precise konnte zeigen, dass wir uns durch eine ganze Reihe verschiedener Dinge auf das Problem konzentrieren können. Es stellt sich heraus, dass auch in der Datenbank selbst ein Problem aufgetreten ist. Es gibt tatsächlich eine Messaging-Protokolldatei, und wegen aller gleichzeitigen Benutzer wurde diese Protokolldatei gesperrt. Grundsätzlich gab es in jeder einzelnen Ebene des Anwendungsstapels einige Dinge zu tun. Sprechen Sie über die Komplexität, hier ist die Tuxedo-Schicht, die Ihnen die Warteschlangen zeigt, und Sie können sehen, dass die Leistung innerhalb dieser Schicht ebenfalls abnimmt. Ich konnte die Prozesse sehen; Ich konnte die Domänen und die Server sehen. In Tuxedo öffnen die Benutzer normalerweise zusätzliche Warteschlangen, Domänen und Server, genau wie im Supermarkt, um die Überlastung zu verringern und die Wartezeit zu minimieren. Letzte und letzte Option, zeigt Precise eine Menge Informationen.

Wie ich bereits erwähnt hatte, interagiert jede bedeutende Transaktion mit dem System der Aufzeichnungen. Die Sichtbarkeit in die Datenbank ist von größter Bedeutung. Precise zeigt, was in der Datenbank, in WebLogic, in Java, .NET und im Browser passiert, aber der Bereich, den Precise wirklich auszeichnet, befindet sich in der Datenbankschicht. Dies ist die Schwäche unserer Wettbewerber. Lassen Sie mich Ihnen zeigen, wie Precise Ihnen dabei helfen kann. Ich werde mich nicht mit dem Dreieck der Datenbankoptimierung befassen, sondern es geht hauptsächlich um kostengünstige, risikoarme, umfassende, risikoreiche und kostenintensive Typänderungen. Ich werde dieses Dia danach tatsächlich twittern, wenn die Leute versuchen wollen, es sich anzusehen. Ich denke, es ist ein ziemlich großer Leitfaden für Tuning-Probleme. Hier ist die Expertenansicht von Precise for Oracle. Ganz oben auf dem Ergebnisbericht steht, dass diese spezielle SQL-Anweisung zu 60 Prozent Auswirkungen hat. Wenn Sie diesen Aktivitätsbildschirm öffnen, wird er dort oben angezeigt. Ich kann mir diese select-Anweisung ansehen, es gibt einen Ausführungsplan. Jede Hinrichtung dauert eine Sekunde - 48.000 Hinrichtungen. Das summiert sich zu 48.000 Stunden mehr Hinrichtungen.

Das dunkle Blau ist wieder CPU. Dieses Ding ist CPU-gebunden, kein Wartezustand, kein Protokoll. Ich betone dies, da einige unserer Wettbewerber nur Wartezustände und Protokollierungsereignisse betrachten, aber im Allgemeinen ist CPU der Status mit der höchsten Auslastung und bietet den meisten Rückkauf. Als ich mich - und ich gehe sehr schnell - mit dieser Expertensicht befasste, habe ich mir die Tabelle angesehen, 100.000 Zeilen, 37.000 Blöcke. Wir machen eine vollständige Tabelle, aber wir haben sechs Indizes für diese Sache. Was ist denn hier los? Nun, wenn ich mir die where-Klausel ansehe, dann konvertiert diese where-Klausel tatsächlich eine Spalte in Großbuchstaben und sagt, wo es gleich Großbuchstaben ist, finde Variable. Jedes Mal, wenn dieses Ding ausgeführt wird, muss Oracle diese Spalte in Großbuchstaben umwandeln. Anstatt dies fast fünfzigtausend Mal zu tun, ist es wesentlich effizienter, diesen Index in Großbuchstaben eines funktionsbasierten Index zu erstellen, und er ist nicht nur in der Oracle Enterprise-Abteilung, sondern auch in der Standardabteilung verfügbar. Wenn Sie das tun, können Sie dann den Ausführungsplan überprüfen, indem Sie diesen neuen Indexbenutzer-Perm-Großbuchstaben ausgeben, das war einfach meine Sache.

Ausgehend von einer Vorher-Nachher-Messung ergibt sich eine Ausführungszeit von einer Sekunde, die mit derselben genauen SQL-Anweisung bis zu 9 Stunden und 54 Minuten summiert, wobei dieser Index jedoch für 58.000 Ausführungen in Großbuchstaben geschrieben wird Die Zeit sinkt auf unter Millisekunden, zusammen ergeben sie sieben Sekunden. Grundsätzlich habe ich zehn Stunden CPU auf meinem Server gespart. Das ist riesig. Wenn keine Serveraktualisierung erforderlich ist, kann ich auf diesem Server leben. Ich reduziere die Servernutzung tatsächlich um 20 Prozent, und Sie können tatsächlich das Vorher und das Nachher sehen. Das ist die Art der Sichtbarkeit, die Precise bieten kann. Es gibt auch einige zusätzliche Dinge, die wir uns ansehen könnten: Warum haben Sie all diese Indizes, wenn sie nicht verwendet werden? Sie können das nachholen. Es gibt Architektur, und ich werde sie einpacken, da wir die Spitze der Stunde erreichen. Ich bin ein echter Anhänger dieser Lösung und wir möchten, dass Sie ein echter Anhänger sind. Wir bei IDERA glauben, dass eine Testversion einen Kunden ausmacht. Wenn Sie also interessiert sind, können wir Ihre Website bewerten.

Damit gebe ich das Leuchtfeuer zurück.

Eric Kavanagh: Ja, das war ein unglaubliches Detail, das Sie dort gezeigt haben. Es ist wirklich sehr faszinierend. Ich glaube, ich habe Ihnen in der Vergangenheit erwähnt, dass - und ich weiß, in einigen anderen Webcasts, die wir mit IDERA durchgeführt haben, habe ich das erwähnt - ich Precise tatsächlich verfolgt habe, seit es von IDERA erworben wurde, Ich denke, bis ins Jahr 2008 oder 2009. Damals war ich davon fasziniert. Ich bin gespannt, wie viel Arbeit es kostet, über neue Versionen von Anwendungen auf dem Laufenden zu bleiben. Sie haben erwähnt, dass SAP HANA, was meiner Meinung nach ziemlich beeindruckend war, dass Sie sich tatsächlich mit der HANA-Architektur befassen und dort Fehler beheben können. Wie viele Leute hast du? Wie viel Aufwand ist Ihrerseits und wie viel davon kann etwas dynamisch erledigt werden, dh wenn das Tool bereitgestellt wird, krabbeln Sie herum und sehen verschiedene Dinge? Wie viel davon kann dynamisch vom Tool ermittelt werden, sodass Sie den Menschen bei der Fehlerbehebung in komplexen Umgebungen helfen können?

Bill Ellis: Sie haben dort viele Fragen gestellt.

Eric Kavanagh: Ich weiß, sorry.

Bill Ellis: Ich habe sehr viele Details geliefert, weil bei diesen Anwendungen der Teufel im Detail steckt, wenn man den Code betrachtet. Sie müssen diese Detailgenauigkeit haben, um wirklich etwas umsetzbares zu haben. Ohne umsetzbare Metriken kennen Sie nur die Symptome. Sie lösen eigentlich keine Probleme. Bei IDERA geht es darum, Probleme zu lösen. Es ist eine große Herausforderung, immer auf dem Laufenden zu bleiben. Die Frage, was es dazu braucht, ist wirklich für das Produktmanagement. Ich habe nicht viel Einblick in das Team, das uns grundsätzlich auf dem Laufenden hält. In Bezug auf HANA ist dies eine Neuheit in der IDERA-Produktlinie. Es ist sehr aufregend. Eines der Dinge bei HANA ist - lassen Sie mich eine Sekunde über die Aufgabe sprechen. In der Aufgabe würden die SAP-Shops die Datenbank für Berichtszwecke replizieren. Dann müssten sich die Leute mit dem abfinden, was aktuell ist. Sie hätten diese verschiedenen Datenbanken und sie wären auf verschiedenen Ebenen nicht synchron. Es ist nur viel Zeit und Mühe erforderlich, dazu die Hardware, die Software und die Mitarbeiter, um all das zu warten.

Die Idee von HANA, eine hochparallele In-Memory-Datenbank zu haben, um im Grunde die Notwendigkeit doppelter Datenbanken zu vermeiden. Wir haben eine Datenbank, eine Quelle der Wahrheit, die immer auf dem neuesten Stand ist. Auf diese Weise vermeiden Sie, dass all diese Versöhnungen durchgeführt werden müssen. Die Bedeutung der Leistung der HANA-Datenbank steigt - ich werde sagen, 10-fach oder zumindest wertvoller als die Summe aller anderen Datenbanken, Hardware und Ressourcen, die man kaufen kann. In der Lage zu sein, HANA zu verwalten, jetzt, da sich die Komponente gerade im Beta-Test befindet, ist es etwas, was GA bald erreichen wird. Das ist ziemlich aufregend für IDERA und für uns, die SAP-Plattform grundsätzlich zu unterstützen. Ich bin mir nicht sicher, welche anderen Teile Ihrer Frage ich falsch gestellt habe, aber -

Eric Kavanagh: Nein, das ist alles gutes Zeug. Ich habe Sie alle auf einmal mit einem Haufen beworfen, das tut mir leid. Ich bin nur fasziniert, ich meine, das ist keine sehr einfache Anwendung, oder? Sie stöbern tief in diesen Werkzeugen und verstehen, wie sie miteinander interagieren, und bis zu Ihrem Punkt müssen Sie die Geschichte in Ihrem Kopf zusammenfügen. Sie müssen einige Informationen kombinieren, um zu verstehen, was tatsächlich passiert und was Sie in Schwierigkeiten bringt, damit Sie diese Probleme lösen können.

Ein Teilnehmer fragt, wie schwierig es ist, Precise zu implementieren? Eine andere Person fragte, wer die Personen sind - offensichtlich DBAs -, aber welche anderen Rollen in der Organisation würden diese Tools verwenden?

Bill Ellis: Die Bereitstellung von Precise ist etwas komplizierter. Sie müssen sich mit der Anwendungsumgebung auskennen und wissen, ob diese Anwendung in dieser Datenbank ausgeführt wird, ob sie benötigt wird oder - die mittleren Webserver usw. Ich denke, angesichts der Komplexität einiger dieser Anwendungen, es ist eigentlich relativ einfach. Wenn ich den Webserver bis zu Ihrer Datenbank instrumentieren kann, kann ich das Ende-zu-Ende tun. Sie bemerken, dass ich nichts über die Instrumentierung eines Endbenutzer-Clients gesagt habe, und das liegt daran, dass wir diese dynamisch einbinden, sodass Sie weder Ihren Code noch irgendetwas anderes ändern müssen. Ein JavaScript wird in den Rahmen der Anwendungsseite eingefügt. Egal, wo sich der Benutzer auf der Welt befindet, wenn er über Ihre Anwendung auf die URL zugreift und diese Seite herunterfährt, wird sie mit Precise instrumentiert. Auf diese Weise können wir die Benutzer-ID, ihre IP-Adresse sowie die erste Byte-Rendering-Zeit für jede Skriptausführungszeit der Seitenkomponenten im Endbenutzer-Browser auswählen.

In Bezug auf die Transaktionen müssen Sie die Transaktionen nicht zuordnen, da sie eng miteinander verbunden sind. Diese URL wird zu einem Einstiegspunkt für JVM und ruft diese Nachricht auf. Dies führt dazu, dass eine JVC aus der Datenbank abgefangen wird. Grundsätzlich können wir diese natürlichen Verbindungspunkte erfassen und Ihnen dann in dem von mir gezeigten Transaktionsbildschirm präsentieren, in dem wir auch berechnet haben, wie viel Zeit oder wie viel Prozent der Zeit in den einzelnen Schritten verbracht wurden. All das geschieht automatisch. Im Allgemeinen werden 90 Minuten für die Grundinstallation des Precise-Kerns aufgewendet, und anschließend wird mit der Implementierung der Anwendung begonnen. Je nach Kenntnis der Anwendung können einige zusätzliche Sitzungen erforderlich sein, um die gesamte Anwendung zu instrumentieren. Viele Leute benutzen nur die Datenbankkomponente von Precise. Das ist gut. Sie können dies im Grunde in die Komponenten aufteilen, die Ihrer Meinung nach für Ihre Site erforderlich sind. Wir sind der festen Überzeugung, dass der Kontext der Instrumentierung des gesamten Anwendungsstapels den Wert der Überwachung einer einzelnen Schicht erhöht, wenn Sie feststellen, dass die Abhängigkeit von Schicht zu Schicht größer ist. Wenn jemand mehr über die Instrumentierung seines Anwendungsstacks erfahren möchte, besuchen Sie bitte unsere Website. Ich denke, dass dies der einfachste Weg ist, zusätzliche Informationen anzufordern, und wir werden uns ein wenig weiter damit befassen.

Eric Kavanagh: Lassen Sie mich ein oder zwei kurze Fragen an Sie werfen. Ich vermute, dass Sie im Laufe der Zeit sowohl für einzelne Kunden als auch als Unternehmenseinheit ein Repository für Interaktionen zwischen verschiedenen Anwendungen und verschiedenen Datenbanken erstellen und aufbauen. Mit anderen Worten, ich denke, ich spiele auf Szenariomodelle an. Ist das der Fall? Unterhalten Sie tatsächlich eine Art Repository für häufig vorkommende Szenarien, sodass Sie den Endbenutzern Vorschläge machen können, wenn bestimmte Dinge ins Spiel kommen? Wie diese Version von E-Business Suite, diese Version dieser Datenbank usw. - machen Sie viel davon?

Bill Ellis: Nun, diese Art von Informationen sind in den Befundbericht integriert. Der Befundbericht gibt Aufschluss über die Leistungsengpässe und basiert auf der Ausführungszeit. Ein Teil dieses Ergebnisberichts besteht darin, mehr zu erfahren und was Sie als Nächstes tun. Die Informationen oder Erfahrungen von Kunden usw. sind im Grunde genommen in dieser Bibliothek von Empfehlungen enthalten.

Eric Kavanagh: Okay, das hört sich gut an. Nun Leute, fantastische Präsentation heute. Bill, ich fand es toll, wie viele Details du darin hattest. Ich dachte nur, dass dies wirklich fantastische, körnige Informationen sind, die zeigen, wie all diese Dinge gemacht werden. Ab einem bestimmten Punkt ist es fast wie schwarze Magie, aber wirklich nicht. Es ist eine sehr spezielle Technologie, die ihr zusammenstellt, um sehr komplexe Umgebungen zu verstehen und Menschen glücklich zu machen, denn niemand mag es, wenn Anwendungen langsam laufen.

Leute, wir werden diesen Webcast archivieren. Sie können online zu Techopedia oder insideanalysis.com springen und wow, danke für Ihre Zeit, wir werden uns beim nächsten Mal bei Ihnen melden. Machs gut, tschüss.

Anwendungsbeschleunigung: Schnellere Leistung für Endbenutzer