Bestand wählen
Merken

Diagnosing Performance Issues Using Thermostat

Zitierlink des Filmsegments
Embed Code

Automatisierte Medienanalyse

Beta
Erkannte Entitäten
Sprachtranskript
action and if you if you might heard that program of of started a watch a watch commander earlier it's just metric exposed in time and it's it's visualizing that that metric in a in a chart here so that's basically all all it does and I can I
can I can show the code here on so there is the data-collecting component of errors that we call agent and this and there is there is a like a set of custom backend and that back end code is use a bunch of the data access objects and registers that new the back and and at the gist of the code reading the metric is basically this so it reads reads a file from from from 10 there's a file and there's a number in that file and if it does uh read number and inserted into into farmers that and the the gooey client uses those numbers collected and visualize them as chart and so if you if you
if you wanna write your custom plugin you you wanna extent In the agent with the with a custom back and the same code for a pretty for you who it is and isn't a very complicated either on the common modules over a year data access objects you wanna write word for your custom applications the so plug-ins our always ji based of for what it's worth it's and yeah if you're full-color already familiar of where those ji you register cut a bunch of services and so on have your your we charge show up in the process so it's a it's in this in this case and used use is like we we we do in terms of itself uh jarred and and
creates that chart and that's a bunch of data points and paints them yeah the of the volume on the of
the but it can be it can be tenure we gain insight here for instance an ABI prolonging you can
define a new logo of than that goes into into the most of the act itself for instance we don't really know what tried using memory modified as well the OK that's the yeah yeah this this this so this program has has a problem on if if we run it and so look at it in terms that you see you see a massive memory grows it grows and um yeah let's let's analyze it and see how
we how we if we can figure out what's going wrong so if we if you look at that here analyzer charge so it's it it it it it just eats memory and never never really uh and uh yet releases any memory so I even even if I if I wanna wanna if a trigger a custom that you see a cycle it it won't it won't do reduce memory so it's something is in in in my application is holding on to to memory and and it's it's life so I can I can use serviced at and dump heat and see what's what's actually what what's wheat the which which program or which are classes is and the culprit so I don t and if I double click on and on on on 1 of those stunts than I see various statistics and if I if I stored by by the size and and look at their stand and there's there's this user information object and I have a lot lots of instances of that and apparently I hold on to that to that view maps are so let's let's have a look at the at the codons and and see what what what's happening
there so far is a fire at the code then i see ok and the the that I made a stupid mistake I what I actually wanted workers to have 1 1 instance of user information In in that maps and of per user per user name so the in what I what I actually did is is inserted every single instance and I'm not overriding hash codes and yet well it is it's every unique instance of of user information gets answered so if I change that stop the program and run it again the the the so if I if I
look at the same the same program again
then you know OK that that seems to fix the problem OK so you know how much time we have left the again and what OK so the next the next
day a demo shows that the thermistor threats from timeline and so we have a an application that basically ping-pong I for between between threads 1 is runnable and the other 1 is waiting and but the so I the called Ellison involved for for easier
recognition so basically there's a set of and then 1 1 is holding on to a rating for sour for further the freight trying to acquire 0 4 and then and then uh it it runs a bunch of silly things just to give it a runnable and then and then a ping-pong like the the 2 threads at was involved a ping-pong and if we did it it's a nice way of of
visualizing your threads in terms that they the 1 I wanna know what's
what's what's happening so if I turn on and threat monitoring that's not turned on by default because it's more of the heavyweight actions in and there was that so it incurs more overhead so you you'd have to manually manually enable it and if the right here where you have Alice involved and the basically the ping-pong between them and and you see you recognize nice patterns and and and so if you wanna see what's going on in your applications wide but threads acts executed what states there in on the timeline might might actually help you visualize that's you consume into it and and soon back out and yeah that's that's a nice list of America murders and that you can you can also select select Alice involved here double-click kind and it's been pretty much waiting and runnable have 50 % of the time that that was the end of the year and you know about that 1 of the things that that if you knew it was in a bit of a pain in the butt lots of custom you as use of alright so are there any questions like what what to I think that you can use that as a result a of God of examples but this is actually what the news that the the the scene of no well you know I think it was
that it was the memory 1 making this is 1 of the things that have spatial lies on and the the
Prozess <Physik>
Primideal
Zahlenbereich
Plug in
Kartesische Koordinaten
Information
Benutzeroberfläche
Elektronische Publikation
Modul
Term
Code
Objekt <Kategorie>
Client
Dienst <Informatik>
Ganze Zahl
Menge
Front-End <Software>
Wort <Informatik>
Zusammenhängender Graph
Maßerweiterung
Fehlermeldung
Punkt
Spezifisches Volumen
Frequenz
Benutzeroberfläche
Steuerwerk
Instantiierung
Videospiel
Sichtenkonzept
Klasse <Mathematik>
Kartesische Koordinaten
Term
Ordnungsreduktion
Objekt <Kategorie>
Mapping <Computergraphik>
Festspeicher
Dreiecksfreier Graph
Speicherabzug
Information
Optimierung
Instantiierung
Zeichenkette
Mapping <Computergraphik>
Eindeutigkeit
Hash-Algorithmus
Einfache Genauigkeit
Information
Code
Meta-Tag
Instantiierung
Optimierung
Demo <Programm>
Programm/Quellcode
Thread
Kartesische Koordinaten
Physikalisches System
Modul <Datentyp>
Synchronisierung
Prozessfähigkeit <Qualitätsmanagement>
Thread
Mustererkennung
Bildschirmfenster
Term
Resultante
Demoszene <Programmierung>
Bit
Rechter Winkel
Grundsätze ordnungsmäßiger Datenverarbeitung
Thread
Kartesische Koordinaten
Mailing-Liste
Default
Aggregatzustand
Festspeicher

Metadaten

Formale Metadaten

Titel Diagnosing Performance Issues Using Thermostat
Alternativer Titel Java - Diagnosing With Thermostat
Serientitel FOSDEM 2015
Autor Torre, Mario
Lizenz CC-Namensnennung 2.0 Belgien:
Sie dürfen das Werk bzw. den Inhalt zu jedem legalen Zweck nutzen, verändern und in unveränderter oder veränderter Form vervielfältigen, verbreiten und öffentlich zugänglich machen, sofern Sie den Namen des Autors/Rechteinhabers in der von ihm festgelegten Weise nennen.
DOI 10.5446/34433
Herausgeber FOSDEM VZW
Erscheinungsjahr 2016
Sprache Englisch
Produktionsjahr 2015

Inhaltliche Metadaten

Fachgebiet Informatik

Ähnliche Filme

Loading...
Feedback