7章データ駆動効率性評価
前の章では、さまざまなオブザーバビリティシグナルを使用してGoプログラムを観測する方法を学びました。 プログラムのレイテンシーとリソース消費を効果的に観察し評価するために、これらのシグナルを数値、つまりメトリクスに変換する方法について説明しました。
残念ながら、プログラムを実行する際の現在の消費量や最大消費量、レイテンシーを計測する方法を知っていても、アプリケーションに対するプログラム全体の効率を正しく評価することは保証されません。 ここで欠けているのは、実験の部分です。これは、一般的な最適化においてもっとも難しい部分かもしれません。 つまり、 第6章 で述べたオブザーバビリティツールで計測する価値のある状況をどのように引き起こすかです!
計測の定義
「計測する(measure)」という動詞は、非常に不正確な表現だと思います。 この言葉が、実験を行う過程と、実験から数値データを集めるという2つのことを表現するために多用されているのを見たことがあります。
本書では、「計測」プロセスについて書かれている箇所は、 計量学(計測の科学) で使われている定義に従っていると思ってください。 計測とは、正確にはいま起こっていること(たとえば、イベントのレイテンシーや必要なメモリ量)、あるいは与えられた時間枠の中で起こったことを定量化するために道具を使用するプロセスを意味します。 私たちが計測するこのイベントにつながるすべてのもの(ベンチマークで私たちがシミュレートしたもの、または自然に発生したもの)は、この章で説明する別のトピックです。 ...
Get 効率的なGo ―データ指向による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.