Kapitel 9. Datengestützte Engpassanalyse

Diese Arbeit wurde mithilfe von KI übersetzt. Wir freuen uns über dein Feedback und deine Kommentare: translation-feedback@oreilly.com

Programmiererinnen und Programmierer sind in der Regel notorisch schlecht darin, zu erraten, welche Teile des Codes die wichtigsten Ressourcen verbrauchen. Es kommt nur allzu oft vor, dass ein Programmierer einen Teil des Codes in der Erwartung einer enormen Zeitersparnis ändert und dann feststellt, dass es überhaupt keinen Unterschied macht, weil der Code nur selten ausgeführt wurde.

Jon Louis Bentley, Effiziente Programme schreiben

Einer der wichtigsten Schritte zur Verbesserung der Effizienz unserer Go-Programme besteht darin, zu wissen, wo die Hauptquelle für die Latenz oder den Ressourcenverbrauch liegt, die du verbessern willst. Deshalb sollten wir uns bewusst auf die Codeteile konzentrieren, die am meisten dazu beitragen (der Engpass oder Hot Spot), um den größten Nutzen aus unserenOptimierungen zu ziehen.

Es ist sehr verlockend, unsere Erfahrung in der Softwareentwicklung zu nutzen, um abzuschätzen, welcher Teil des Codes am teuersten oder am langsamsten zu berechnen ist. Vielleicht haben wir in der Vergangenheit schon ähnliche Codefragmente gesehen, die Effizienzprobleme verursachen. Zum Beispiel: "Oh, ich habe in Go mit verknüpften Listen gearbeitet, das war so langsam, das muss es sein!" oder "Wir erstellen hier eine Menge neuer Slices, ich glaube, das ist unser Engpass, lass uns einige wiederverwenden." ...

Get Efficient Go now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.