今日はコイチササダの名前を紹介しますアプリケーションについてお話をしたいと思いますルビ自身のインタスペクションのフィーチャルを紹介しますまず、私のプレゼンテーションについてお話をしたいと思います2つのプレゼンテーションについてお話をしたいと思いますグーグリッドですグーグリッドですアプリケーションについてお話をしたいと思いますグーグリッドをチェックしてくださいこのプレゼンテーションについてお話をしたいと思いますこのプレゼンテーションは、私が作ったものを言うことを説明します私のトピックを言うことを、私はこのプレゼンテーションについてお話をしたいと思いますこのプレゼンテーションは、私のコミッターのメンバーです2007年です私はオリジナルのプレゼンテーションですお話をしたいと思いますこのプレゼンテーションは、私のソフトウェアの使用者を使用していますこのプレゼンテーションは、Ruby19とLuby2.2を使用しています幸いですが、私はレールスプログラムではありません。私の wife はレールスプログラムです。私の wife は私のカスタマーです。私はレールスプログラムではありません。ごめんなさい。私はニューヴィーです。私はレールスコンファレンスを受けた前の時間です。とても楽しみです。ここに話します。ありがとうございます。これは非常に重要な話です。ヘロッキは私の仕事です。ヘロッキはベース3のブースです。この朝、ヘロッキはスポンサーのセッションを紹介します。ぜひご覧ください。ヘロッキは私のマッチンの仕事です。私たちは日本語の3つのフルタイムルービーのデベロッパーです。私たちはルービーのデザインを設置しています。私たちはMRIのクオリティーです。クオリティーは多くの意味です。一つはノーバッグです。プロフォーマンスとロールリソーシーです。私たちはMRIのクオリティーを設置しています。マッチンは3つのフルタイムルービーのデザイナーです。私たちはノーバッグです。彼はアクティブコミッターです。私の名前はKO-1です。私はインターナルハッカーです。ゆきひろ松本です。彼の名前はタイトルコエクターです。彼は多くのタイトルを設置しています。彼はノーバッグを設置しています。ノーバッグはアクティブコミッターです。彼はアクティブコミッターを設置しています。彼はアクティブコミッターを設置しています。アクティブコミッターを設置しています。このコミッターはノーバッグです。彼はノーバッグを設置しています。彼はアクティブコミッターです。彼はインターナルハッカーです。彼はエディディデブロッパーです。彼はアクティブコミッターです。彼はアクティブコミッターです。彼はそれは よく Touchと感じることです。彼はアクティブコミッターです。彼はアクティブコミッターです。彼はアクティブコミッターです。彼は过尾生以降です。彼は運転さ名付き同じ Hagusや Pushinに期待が問題あって、彼は運転する快速なアクティブコミッターです。彼は運転されます。今の発表は、Ruby2.2のリリースを発表し、マッチチームとRuby2.2のコアチームのメンバーが発表されています。私は全部の説明がありません。新しいフィーチャーがありますが、このフライドが発表されます。説明があるなら、リリースを確認してください。新しいフィーチャーはRuby2.2などありますか?やはり、インターナーのアプリーピューメントを用意します。1つのインプルメントをご紹介しますレールのプログラムはキーワーダープラメーターですキーワーダープラメーターは簡単ですしかしキーワーダープラメーターはスローですノーマルメッセルのディスパッチと比べてノーマルメッセルのディスパッチと比べて30回スローは比べてルビー2.2のディスパッチと比べてパフォーマンスが速いので15回速いと比べてスローは比べてしかし、私はこれが足りない次のタイミングはルビー2.3のマッセルチームと比べて今、私たちはスローのディスパッチを作り、ルビー2.3のディスパッチを作り、でも、私たちはアイデアやサジュースを作り、私たちはこのプレゼンテーションについて私たちはこのプレゼンテーションについて今日のお話はアプリケーションについてルビー2.3のアプリケーションについてこのタイミングはダジャレクラブダジャレクラブはパンのようなものダジャレクラブはスーパーヘロのアロンパターソンについてもちろん、彼は楽しいパスタを作り、日本人のルビーもダジャレクラブとしてプレゼンテーションについてこのようなものを作り、私たちはこのものを作り、このプレゼンテーションについてルビーのアプリケーションについてもちろん、ルビーのレールが行っているのがこのプレゼンテーションはディープレールの製品ですだから、ハードウェアがあるオペレータのシステム、ルビーのインタープリータ、ルビーのレールのフレームワーク、ジェームス、このようなプレゼンテーションについてこのプレゼンテーションについてこのプレゼンテーションについてほとんど人々はこのプレゼンテーションのロールレールのブラックボックスを作り、彼らはこのプレゼンテーションのシステムやインタープリータを作り、このプレゼンテーションの特徴はコンピューサイエンスの人々は彼らが彼らが彼らが3日アプリケーションはブラックボックスでそれを負けたからこのブラックボックスでアプリケーションについて知ってこのプレゼンテーションについてコンピューサイエンスのアプリケーションについてその問題はアプリケーションについて私の答えは、私の答えは、具体的な材料を使って、自分の合わせの材料を作りましょう。まず、私は具体的な材料を作りたいと思います。私たちのご上手なプレゼンテーションが、このラジオのコンファインスで、昨日のプレゼンテーションからAaron's Keynote も素晴らしいです。このプレゼンテーションで、もう一つのアスペクトをお伺いしたいと思います。まずは、パフォーマンスの意図。パフォーマンスの意図は、パフォーマンスの意図は、パフォーマンスの意図は、ヘロクのパフォーマンスの意図を使います。パフォーマンスの意図は、アイソレータのリソースを使います。大きな記憶があります。6GB記憶があります。そして、多くのCPUプロセッサーがあります。しかし、大きな記憶があります。しかし、簡単です。もちろん、パフォーマンスの意図を使います。もちろん、パフォーマンスの意図を使用しています。でも、もちろん、パフォーマンスの意図を使用しています。それについては、アプリケーションを取り組む必要はありません。まず、パフォーマンスの意図を使用しています。例えば、初めのペクトの心境で、その間に、何が悪いか分かりません。そのため、どんな部分は悪いか分かりません。そのため、レビアクセス、エクスタナアップアクセス、アルビアプリケーションは悪いか分かりません。そのため、ガーバジーコレクションのために、そのために、バットコードを書き、何が悪いか分かりません。そして、記憶・コンシューニング・エシューは、誰が記憶・コンシューニング・メモリーを理解する必要があります。記憶・コンシューニング・メモリーはどんな部分か分かりません。一つの良いサービスは、ニューレリックです。ニューレリックは、どんな部分のコンシューニング・コンシューニング・タイムを飛ばすために、新しいボ 小さなど購入します。そのため、ニューレリックでディテールをコックする必要があります。このコーンシューニング・コンシューニング・メモリーの重要な部分は、私はヘログで仕事をしているので 私はそれを言う必要はありませんパフォーマンスプロファイラーは 良い選択をするためにどのパートを使うのかを理解します私はバッグがありますがバッグがありますがパフォーマンスプロファイラーは GithubのAman Guptaで書かれていますこのプレゼンテーションをご覧くださいこのプレゼンテーションは 良い選択をするためにメモリコンサンプションをご覧くださいまずはルビーがGCのガーバッグコレクトを使う必要はありませんこのプレゼンテーションを使う必要はありませんルビーはガーバッグコレクトを使う必要はありませんこのプレゼンテーションをご覧くださいこのプレゼンテーションは ガーバッグコレクトのGCパラメーターでルビーがGCのバレータを使う必要はありませんしかし ガーバッグコレクトを使う必要はありませんこのプレゼンテーションがとても多種の objectを使う必要はありませんルビーはゲームネーションを使う必要はありませんこのプレゼンテーションは ゲームネーションを使う必要はありませんこのプレゼンテーションは グラスビルのご覧をする必要はありません年輪のものだ如果你他のものを処理してきたそれからオブジェクトを用意してきたそういうものを処理してないと長い時間に語らないまた,私たちは地球的についてどうしてみるかがわかる私は2個のジェームズ他の人たちもいろいろなツールを持っています例えばメンプロフでサムサフロンを持っていますでも今度は自分のジェームズを紹介しますジェームズはジェシー・トレーサーの2枚のガーベッシュコレクションスタテクシーの6枚そしてロケーション・トレーサーのオブジェクト・クリエーション・ロケーションを見つけますジェシー・トレーサーは非常に簡単に使用していますオブジェクト・クリエーションのリカイアのジェシー・トレーサーを記載し、コミュニケーションのアプリを使用していますジェシー・トレーサーを記載し、コミュニケーションのリカイアのリカイアのアプリを記載し、このファイトを記載し、とても簡単に使えます。3つのラインを使う必要があります。しかし、ルービーコンファレンスではなくレイズコンファレンスではありません。このLockMiddleWareを使う必要があります。ジェムファイルを使う必要があります。LockMiddleWareを使う必要があります。レイズアプリケーションを使う必要があります。しかし、アロケーションテレーサーは少しスローです。アロケーションテレーサーはクリエーション・オブジェクト・フリー・オブジェクトを使う必要があります。このフィーチャーを使う必要があります。このアロケーションテレーサーをプロダクションアプリケーションを使う必要があります。このデモンスレーションアプリケーションを準備しました。このアプリケーションはヘロク、プロダクションエンバーマンス、このアプリケーションをチェックすることができます。このアプリケーションは私の最初のレーザーアプリケーションでCSSを使っています。このアプリケーションは私の最初のレーザーアプリケーションでCSSを使っています。このアプリケーションは私の最初のレーザーアプリケーションでCSSを使っています。このアプリケーションは私の最初のレーザーアプリケーションでCSSを使っています。このアプリケーションは私の最初のレーザーアプリケーションでCSSを使っています。このリンクを見ることができますGC Tracerの結果を見ることができますこのスクリーンにもいろいろな資料があります私は全てを紹介することができません例えば、Lineはカプチャーの資料ですLineはJuicyEventのカプチャーの資料です例えば、End of SleepはGC Garbage Collection has several phasesSo, starting the marking phaseand starting the end of the marking phaseand starting the sweeping phaseand end of the sweeping phaseSo, ending the sweepingEnd of the sweeping means the end of the garbage collectionSo, each such event, we capture all of the informationand also take itsnon-second time from epoch timeSo, it is a very big numberbut you can manipulate these numbersto get how much, how long garbage collection you useand also, for exampleTotal allocated objectSo, this line, this columnSo, total allocated objectand total freed object is the numSo, you can easy to understandSo, how many objects are created and freedin this Ruby interpreterSo, getting the logthen you can choose the correct GC parametersand you can get the reasonwhy your application has many memoriesbut it is difficultMaybe, this blog postwritten by Sam Saffron will help youor please send your log to meSo, I can adviseif you are a Heloq VIP customerSorry, it is a jokeSo, I welcome everyoneSo, I want to get many statisticsto understand how to tune garbage collectionSo, and alsosometimessomeone ask mewhy my application consumesso much memorywithout any informationI'm not magicianI'm not wizardSo, I can't understand what happenedon your applicationBut with this logGC Tracer logI can understand what happenedin your applicationSo, please ask me with this logAlocation TracerWe can see theAlocation Tracer log from this linkThis oneSo, this showsSo, which linewhich location consumessorry, objects are createdwhere the locationSo, it means that this linethis line creates4,000 objectsSo, this is sorted by the pass nameand you can sortwith the count of created objectsor other parametersFor exampleSo, thisSo, this log iscaptured after1,000 requestsAfter 1,000 requestsSo, compare with other linesSo, thesethese linescreate many many objectswe can understandSo, checking thischecking this source codeSo, 36 linesit is difficult to readbut thethis codesearch the directory entriesand checking the all stamps filesSo, this lines can be cachedwe can understandSo, after this optimizationyou can checkyou can checkthe problem was solvedThere are other parameters such ascount and old objects countand average age of objectsAge means that how many GCsHow many GCssurvivesfor each objectand minimum agesand maximum agesand consumed memorySo, using such toolsyou can specify what is wrongand what you should doSo, the last section ishow to reviewwhat the performance issuesSo, if you got some errorI expect behaviorSo, we have many toolsSo, debuggeror modify error messageMaybe you always usebetter errorsto see what istheto see theerror messageand also I want tointroduce as aDijoumin gem and pretty backtrace gemsDijoumin gem iswritten by Yukisonand this gem is very cleverthat's for exampleif you typef1us namethen it will bename errorhoweverwith Dijoumin first namemessageso, it suggests a similar nameso, it is very nice featuresand also pretty backtrace gemis written by myselfand this shows the error messageso, each lineeach backtrace lineyou can see the variablesand the value of the nameso, there are many manyexisting profiling toolsor some clever toolsbut if you have no suitable toolsfor your issuethen you can make itso, recent rubymri provides many featuresto make such a toolsfor example, tracepointtracepoint istracepoint insert hooksfor some eventsand also you can modifyfavoritemessage and backtracesand also there are reflection featuresand debug inspect gemand more and moreso, please check itI want to show some examplesso, for exampleI'm a newbie of Rails application programmerso, if I want to knowwhere's the index method codeso, when I canwhen I write this tracepointpook and place at thebeginning of applicationwe can see thewe can see thewe can see the so long backtraceswith only a fewlineswhere the index method is codeand as an examplemaybe if you got a error messageyou got maybe you gotflustration but if youmessage shows a heart markthen maybe we can calm downso, thisshows source codeand it catch the exceptionraising and modifybacktrace message withthree hearts and the resultwill be hereit can be increase frustration butit's an exampleand also you can get local variable namesso, we have binding local variablesto return the list of local variable namesand alsowe have binding local variablegit methodso, we can show thelocal variable names and corresponding valuesby the waymaybe if you write a keyword parameterif you cannot use if local variablebecause if is a keyword of Rubybut using binding local variablegit method you can getthe value of local variableand alsowe provide the back inspector gemthe back inspector gemis something like a core bindingbut it issupported officiallyyou can get all bindingfor the stack framesand you can getthe local variables for eachmethod framesand also you can combinethese techniques, these primitivesto make your own suitabletooling toolsso it means thatpretty backtrace gem is written by these techniquesmaybe so if you don't know about these techniquesthen pretty backtraceis you can imaginethat it is magical butit's not magicaland you can do itchill be commit KirkMRI provides such alow layer primitiveso please try these tricksSo, I want toso, I have no time, so I want to show only a few thingsyou can make a cxsession libraryusing thelow level TAPICAPIを使ってもっとコントロールしなければならないRubyはオープンソースソフトウェアを使うことができますRubyのインタープリートをチェックすることができますRubyのGDB、パーク、バルグリーンを使うことができますRubyのRubyのリナックスを使うことができますRubyのリナックスはオープンソースソフトウェアを使うことができますRubyのレースプログラムは楽ですRubyのレースプログラムは楽です今回、説明したいのは、オープンソースソフトウェアにより、レースプログラムを使うことができますそしてオープンソースソフトウェアによるレースプログラムを使うことができますThank you so much