精选文章

Photo by Philip Brown

動的トレース技術についての雑談

動的トレース技術についての雑談

Photo by Yichun Zhang

Lua IPC パイプが OpenResty または Nginx イベントループをブロックする場合

Lua IPC パイプが OpenResty または Nginx イベントループをブロックする場合

Photo by Yichun Zhang

OpenResty XRay の自動分析レポート

OpenResty XRay の自動分析レポート

Photo by OpenResty Inc.

OpenResty XRay による B 站(ビリビリ動画)の重大なオンライン障害の分析と解決

OpenResty XRay による B 站(ビリビリ動画)の重大なオンライン障害の分析と解決

Photo by Guido Jansen

Lua レベル CPU フレームグラフの概要

Lua レベル CPU フレームグラフの概要

Photo by Elena Mozhvilo

OpenResty と Nginx の共有メモリ領域におけるメモリフラグメンテーションの問題

OpenResty と Nginx の共有メモリ領域におけるメモリフラグメンテーションの問題

Photo by Jose G. Ortega Castro

OpenResty と Nginx の共有メモリ領域が物理メモリをどのように消費するか

OpenResty と Nginx の共有メモリ領域が物理メモリをどのように消費するか

Photo by Harrison Broadbent

OpenResty と Nginx のメモリ割り当てと管理方法

OpenResty と Nginx のメモリ割り当てと管理方法

OpenResty XRay で、パフォーマンスを大幅に向上し、CPU使用率を即座に削減  90%
OpenResty XRay で、パフォーマンスを大幅に向上し、CPU使用率を即座に削減 90%
無料トライアルを申し込む

最新記事

OpenResty XRay モバイルアプリケーションにつうてのご紹介

  • OpenResty XRay Android 版のダウンロードとインストール
  • OpenResty XRay へのログイン
  • 全自動分析レポート
  • ダッシュボードページでパフォーマンスチャートデータの確認
  • Guided Analysis 機能
  • OpenResty XRay Android 版のダウンロードとインストール
  • OpenResty XRay へのログイン
  • 全自動分析レポート
  • ダッシュボードページでパフォーマンスチャートデータの確認
  • Guided Analysis 機能

PHP プロセス内の大きなメモリオブジェクトをオンラインで特定する(OpenResty XRay を使用)

  • 問題: メモリ使用率が高い
  • PHP プロセス内の大きなメモリオブジェクトまたは値を特定
  • 自動生成レポート
  • 問題: メモリ使用率が高い
  • PHP プロセス内の大きなメモリオブジェクトまたは値を特定
  • 自動生成レポート

デバッグシンボルが欠落した OpenResty/Nginx アプリケーションの分析(OpenResty XRay を使用)

  • 問題:アプリケーションにデバッグシンボルが欠落
  • デバッグシンボルの自動分析と再構築
  • 完全自動化された分析とレポート作成
  • 問題:アプリケーションにデバッグシンボルが欠落
  • デバッグシンボルの自動分析と再構築
  • 完全自動化された分析とレポート作成

Amazon Linux 上での OpenResty XRay Agent のインストール方法(Bundle パッケージを使用)

  • コンソールにログイン
  • Bundle パッケージを使用した Agent のインストール
  • アプリケーションの設定と検出
  • アナライザの起動と分析結果の確認
  • 別の Agent のインストールt
  • コンソールにログイン
  • Bundle パッケージを使用した Agent のインストール
  • アプリケーションの設定と検出
  • アナライザの起動と分析結果の確認
  • 別の Agent のインストールt

オンラインでブロッキングスレッドの Perl コードパスを迅速に特定する(OpenResty XRay を使用)

  • 問題:CPU 使用率が上昇しない
  • off-CPU 時間を最も占有している Perl コードパスを特定
  • 完全自動の分析とレポート
  • 問題:CPU 使用率が上昇しない
  • off-CPU 時間を最も占有している Perl コードパスを特定
  • 完全自動の分析とレポート

OpenResty XRay を使用して Prometheus アプリケーション内の CPU 使用率が最も高い Go コードパスを特定する

  • 問題:高 CPU 使用率
  • CPU 使用率が最も高い Go コードパスを特定
  • 完全自動化された分析とレポート
  • 問題:高 CPU 使用率
  • CPU 使用率が最も高い Go コードパスを特定
  • 完全自動化された分析とレポート

Perl アプリケーションの追跡時における OpenResty XRay のシステムパフォーマンスへの影響

  • アナライザー実行前のアプリケーションパフォーマンス
  • アナライザー実行中のパフォーマンスへの影響
  • アナライザー実行時のスループットとレイテンシーへの実際の影響測定
  • アナライザー実行前のアプリケーションパフォーマンス
  • アナライザー実行中のパフォーマンスへの影響
  • アナライザー実行時のスループットとレイテンシーへの実際の影響測定

Perl プロセス内の大きなメモリオブジェクトをオンラインで特定する(OpenResty XRay を使用)

  • 問題: メモリ使用率が高い
  • Perl プロセス内の大きなメモリオブジェクトまたは値を特定
  • 自動生成レポート
  • 問題: メモリ使用率が高い
  • Perl プロセス内の大きなメモリオブジェクトまたは値を特定
  • 自動生成レポート

Go アプリケーションの追跡時における OpenResty XRay のシステムパフォーマンスへの影響

  • アナライザー実行前のアプリケーションパフォーマンス
  • アナライザー実行中のパフォーマンスへの影響
  • アナライザー実行時のスループットとレイテンシーへの実際の影響測定
  • アナライザー実行前のアプリケーションパフォーマンス
  • アナライザー実行中のパフォーマンスへの影響
  • アナライザー実行時のスループットとレイテンシーへの実際の影響測定

動的トレーシング技術の深層:OpenResty XRay がどのように問題診断方法を根本的に変革するか

  • 動的トレーシング:複雑なシステム問題を解決する強力なツール
  • なぜ OpenResty XRay をお選びいただくべきか?
  • 製品フォーカス:実際のシナリオにおける XRay の適用事例
  • よくある誤解と FAQ:動的トレースについて知っておきたいこと
Photo by 章亦春
  • 動的トレーシング:複雑なシステム問題を解決する強力なツール
  • なぜ OpenResty XRay をお選びいただくべきか?
  • 製品フォーカス:実際のシナリオにおける XRay の適用事例
  • よくある誤解と FAQ:動的トレースについて知っておきたいこと

動的トレーシングの実装が難しい理由とは?OpenResty XRay はどのようにこの課題を解決するのか?

  • 動的トレース技術の実装における課題
  • OpenResty XRay:次世代動的トレーシングソリューション
  • 結語:動的トレースの未来
Photo by 章亦春
  • 動的トレース技術の実装における課題
  • OpenResty XRay:次世代動的トレーシングソリューション
  • 結語:動的トレースの未来

ログ、イベントトラッキング、A/B テストだけでは不十分?「動的トレーシング」を理解すべき時期

  • 従来の方法 vs 動的トレーシング:効率性と制御力の革命
  • 動的トレース:システムの「透視眼」
  • フレームグラフからシステム全体像へ
  • OpenResty XRay を選ぶ理由
  • 可観測性の未来:動的トレースの新境地
Photo by 章亦春
  • 従来の方法 vs 動的トレーシング:効率性と制御力の革命
  • 動的トレース:システムの「透視眼」
  • フレームグラフからシステム全体像へ
  • OpenResty XRay を選ぶ理由
  • 可観測性の未来:動的トレースの新境地

可観測性の次なる段階:OpenResty XRay が問題解決を再定義する方法

  • モダンソフトウェアアーキテクチャにおける問題解決がますます難しくなっている理由
  • 可観測性技術の進化と将来展望
  • 動的トレース技術はどのように抽象化レイヤーを通過するのか?
  • 「時間+空間」二次元トラッキングモデル
  • 実践事例:オンライン Kong サービスにおけるプラグインリソース消費のリアルタイム統計
Photo by 章亦春
  • モダンソフトウェアアーキテクチャにおける問題解決がますます難しくなっている理由
  • 可観測性技術の進化と将来展望
  • 動的トレース技術はどのように抽象化レイヤーを通過するのか?
  • 「時間+空間」二次元トラッキングモデル
  • 実践事例:オンライン Kong サービスにおけるプラグインリソース消費のリアルタイム統計

ブラックボックスからホワイトボックスへ:OpenResty XRay でシステム問題を可視化する

  • ブラックボックスをホワイトボックスに変える動的トレースツール
  • 多角的な総合分析能力
  • 実例紹介
  • 製品ビジョン
Photo by 章亦春
  • ブラックボックスをホワイトボックスに変える動的トレースツール
  • 多角的な総合分析能力
  • 実例紹介
  • 製品ビジョン

自己最適化:OpenResty XRay の性能変革

  • 課題と痛点
  • OpenResty XRay の自己分析プロセス
  • 驚くべき最適化の成果
  • 技術的洞察とビジネス価値
Photo by 章亦春
  • 課題と痛点
  • OpenResty XRay の自己分析プロセス
  • 驚くべき最適化の成果
  • 技術的洞察とビジネス価値

OpenResty XRay によるスクリプトパフォーマンスの 44 倍向上

  • 実例:ボトルネックの発見から大幅な高速化まで
  • OpenResty XRay の動作原理
  • 最適化の効果
  • 適用シナリオと実践的なアドバイス
Photo by 章亦春
  • 実例:ボトルネックの発見から大幅な高速化まで
  • OpenResty XRay の動作原理
  • 最適化の効果
  • 適用シナリオと実践的なアドバイス

OpenResty XRay の Web コンソールツアー

  • Insight ページの紹介
  • 自動レポートの詳細
  • Dashboard パフォーマンス指標ダッシュボード
  • Guided Analysis を使用したオンライン分析
  • システム設定と設定ページ
  • Insight ページの紹介
  • 自動レポートの詳細
  • Dashboard パフォーマンス指標ダッシュボード
  • Guided Analysis を使用したオンライン分析
  • システム設定と設定ページ

OpenResty XRay モバイルアプリケーションにつうてのご紹介

  • OpenResty XRay Android 版のダウンロードとインストール
  • OpenResty XRay へのログイン
  • 全自動分析レポート
  • ダッシュボードページでパフォーマンスチャートデータの確認
  • Guided Analysis 機能
  • OpenResty XRay Android 版のダウンロードとインストール
  • OpenResty XRay へのログイン
  • 全自動分析レポート
  • ダッシュボードページでパフォーマンスチャートデータの確認
  • Guided Analysis 機能

OpenResty XRay についての FAQ

OpenResty XRay 製品のための「よくある質問」ドキュメントを作成
Photo by Yichun Zhang
OpenResty XRay 製品のための「よくある質問」ドキュメントを作成

OpenResty または Nginx プロセスにおける最も遅い PCRE 正規表現のトレース

  • システム環境
  • 推測せずに原因を絞り込む
  • PCRE の実行オーバーヘッドの制限
  • バックトラッキングを行わない正規表現エンジン
  • Lua の組み込みパターン
  • コンテナ内のアプリケーションのトレース
  • ツールの実装方法
  • ツールのオーバーヘッド
  • システム環境
  • 推測せずに原因を絞り込む
  • PCRE の実行オーバーヘッドの制限
  • バックトラッキングを行わない正規表現エンジン
  • Lua の組み込みパターン
  • コンテナ内のアプリケーションのトレース
  • ツールの実装方法
  • ツールのオーバーヘッド

動的トレース技術についての雑談

  • 動的トレーシングとは
  • 動的トレーシングの利点
  • DTrace と SystemTap
  • SystemTap の実運用での活用
  • フレームグラフ
  • 方法論
  • 知識は力なり
  • オープンソースとデバッグシンボル
  • Linux カーネルのサポート
  • ハードウェアトレーシング
  • 終了プロセスの解析
  • 従来のデバッグ技術
  • 混沌としたデバッグの世界
  • OpenResty XRay
Photo by Philip Brown
  • 動的トレーシングとは
  • 動的トレーシングの利点
  • DTrace と SystemTap
  • SystemTap の実運用での活用
  • フレームグラフ
  • 方法論
  • 知識は力なり
  • オープンソースとデバッグシンボル
  • Linux カーネルのサポート
  • ハードウェアトレーシング
  • 終了プロセスの解析
  • 従来のデバッグ技術
  • 混沌としたデバッグの世界
  • OpenResty XRay

Kubernetes クラスター上に OpenResty XRay の Agent をインストールする

  • コンソールにログイン
  • Kubernetes クラスター上に Agent をインストール
  • アプリケーションの設定と検出
  • アナライザーの起動と分析結果の確認
  • 別の Agent のインストール
  • コンソールにログイン
  • Kubernetes クラスター上に Agent をインストール
  • アプリケーションの設定と検出
  • アナライザーの起動と分析結果の確認
  • 別の Agent のインストール

Amazon Linux 上での OpenResty XRay Agent のインストール方法(Bundle パッケージを使用)

  • コンソールにログイン
  • Bundle パッケージを使用した Agent のインストール
  • アプリケーションの設定と検出
  • アナライザの起動と分析結果の確認
  • 別の Agent のインストールt
  • コンソールにログイン
  • Bundle パッケージを使用した Agent のインストール
  • アプリケーションの設定と検出
  • アナライザの起動と分析結果の確認
  • 別の Agent のインストールt

CentOS 上に OpenResty XRay の Agent をインストールする方法(RPM パッケージリポジトリを使用)

  • コンソールにログイン
  • RPM パッケージリポジトリを使用した Agent のインストール
  • 检查 Agent 状态和日志
  • アプリケーションの設定と検出
  • アナライザーの起動と分析結果の確認
  • 別の Agent のインストール
  • コンソールにログイン
  • RPM パッケージリポジトリを使用した Agent のインストール
  • 检查 Agent 状态和日志
  • アプリケーションの設定と検出
  • アナライザーの起動と分析結果の確認
  • 別の Agent のインストール

Microsoft Azure クラウド上に OpenResty XRay オンプレミス版をインストールする

  • サブスクリプションとリソースグループの作成
  • Azure Kubernetes サービスの作成
  • 環境変数の準備
  • コマンドラインから Azure にログイン\n* Kubernetes の namespace と secret の作成
  • Azure ディスクの作成
  • 永続化ボリュームの設定ファイルの更新
  • Kubernetes の設定ファイルの更新
  • 永続化ボリュームの作成
  • Kubernetes サービスのデプロイ
  • アプリケーションゲートウェイの設定
  • サブスクリプションとリソースグループの作成
  • Azure Kubernetes サービスの作成
  • 環境変数の準備
  • コマンドラインから Azure にログイン\n* Kubernetes の namespace と secret の作成
  • Azure ディスクの作成
  • 永続化ボリュームの設定ファイルの更新
  • Kubernetes の設定ファイルの更新
  • 永続化ボリュームの作成
  • Kubernetes サービスのデプロイ
  • アプリケーションゲートウェイの設定

OpenResty XRay を使用して Prometheus アプリケーション内の CPU 使用率が最も高い Go コードパスを特定する

  • 問題:高 CPU 使用率
  • CPU 使用率が最も高い Go コードパスを特定
  • 完全自動化された分析とレポート
  • 問題:高 CPU 使用率
  • CPU 使用率が最も高い Go コードパスを特定
  • 完全自動化された分析とレポート

Go アプリケーションの追跡時における OpenResty XRay のシステムパフォーマンスへの影響

  • アナライザー実行前のアプリケーションパフォーマンス
  • アナライザー実行中のパフォーマンスへの影響
  • アナライザー実行時のスループットとレイテンシーへの実際の影響測定
  • アナライザー実行前のアプリケーションパフォーマンス
  • アナライザー実行中のパフォーマンスへの影響
  • アナライザー実行時のスループットとレイテンシーへの実際の影響測定

カスタム Ylang アナライザーを作成して Go プログラムを動的にトレースする(OpenResty XRay を使用)

  • Go 変数に 2 つのキーと値のペアを挿入
  • カスタム Ylang アナライザーを作成して Go プログラムを動的にトレース
  • テスト結果
  • Go 変数に 2 つのキーと値のペアを挿入
  • カスタム Ylang アナライザーを作成して Go プログラムを動的にトレース
  • テスト結果

オンラインで Go コードパスのブロッキングスレッドを迅速に特定する方法(OpenResty XRay を使用)

  • 問題: CPU 使用率が上がらない
  • off-CPU 時間を最も占有する Go コードパスを特定
  • 完全自動化された分析とレポート
  • 問題: CPU 使用率が上がらない
  • off-CPU 時間を最も占有する Go コードパスを特定
  • 完全自動化された分析とレポート

Python アプリケーションの追跡時における OpenResty XRay のシステムパフォーマンスへの影響

  • アナライザー実行前のアプリケーションパフォーマンス
  • アナライザー実行中のパフォーマンスへの影響
  • アナライザー実行時のスループットとレイテンシーへの実際の影響測定
  • アナライザー実行前のアプリケーションパフォーマンス
  • アナライザー実行中のパフォーマンスへの影響
  • アナライザー実行時のスループットとレイテンシーへの実際の影響測定

オンラインで Python プロセス内の大規模メモリオブジェクトを特定する(OpenResty XRay を使用)

  • 問題:メモリ使用率が高すぎる
  • Python プロセス内の大規模メモリオブジェクトまたは値を特定する
  • 完全自動化された分析とレポート
  • 問題:メモリ使用率が高すぎる
  • Python プロセス内の大規模メモリオブジェクトまたは値を特定する
  • 完全自動化された分析とレポート

オンラインで Python コードパスのブロッキングスレッドを迅速に特定する方法(OpenResty XRay を使用)

  • 問題: CPU 使用率が上がらない
  • off-CPU 時間を最も占有する Python コードパスを特定
  • 完全自動化された分析とレポート
  • 問題: CPU 使用率が上がらない
  • off-CPU 時間を最も占有する Python コードパスを特定
  • 完全自動化された分析とレポート

OpenResty XRay を用いた Tomcat Java アプリケーションのリクエスト遅延分析

  • OpenResty XRay の Tomcat サポート
  • インテリジェントパケットキャプチャ
  • 実際の適用例
  • 結論
  • 自動サンプリングと専門家による分析
Photo by 章亦春
  • OpenResty XRay の Tomcat サポート
  • インテリジェントパケットキャプチャ
  • 実際の適用例
  • 結論
  • 自動サンプリングと専門家による分析

オンライン Java アプリケーションの CPU、off-CPU、およびディスク IO 使用状況の分析(OpenResty XRay を使用)

  • 高 CPU 使用率の問題
  • CPU ブロッキングの問題
  • 高ディスク IO の問題
  • サポートされているバージョンと OS
  • パフォーマンスへの影響とオーバーヘッド
  • 今後の計画
Photo by 章亦春
  • 高 CPU 使用率の問題
  • CPU ブロッキングの問題
  • 高ディスク IO の問題
  • サポートされているバージョンと OS
  • パフォーマンスへの影響とオーバーヘッド
  • 今後の計画

オンラインでブロッキングスレッドの Perl コードパスを迅速に特定する(OpenResty XRay を使用)

  • 問題:CPU 使用率が上昇しない
  • off-CPU 時間を最も占有している Perl コードパスを特定
  • 完全自動の分析とレポート
  • 問題:CPU 使用率が上昇しない
  • off-CPU 時間を最も占有している Perl コードパスを特定
  • 完全自動の分析とレポート

Perl アプリケーションの追跡時における OpenResty XRay のシステムパフォーマンスへの影響

  • アナライザー実行前のアプリケーションパフォーマンス
  • アナライザー実行中のパフォーマンスへの影響
  • アナライザー実行時のスループットとレイテンシーへの実際の影響測定
  • アナライザー実行前のアプリケーションパフォーマンス
  • アナライザー実行中のパフォーマンスへの影響
  • アナライザー実行時のスループットとレイテンシーへの実際の影響測定

Perl プロセス内の大きなメモリオブジェクトをオンラインで特定する(OpenResty XRay を使用)

  • 問題: メモリ使用率が高い
  • Perl プロセス内の大きなメモリオブジェクトまたは値を特定
  • 自動生成レポート
  • 問題: メモリ使用率が高い
  • Perl プロセス内の大きなメモリオブジェクトまたは値を特定
  • 自動生成レポート

Rust アプリケーションの追跡時における OpenResty XRay のシステムパフォーマンスへの影響

  • アナライザー実行前のアプリケーションパフォーマンス
  • アナライザー実行中のパフォーマンスへの影響
  • アナライザー実行時のスループットとレイテンシーへの実際の影響測定
  • アナライザー実行前のアプリケーションパフォーマンス
  • アナライザー実行中のパフォーマンスへの影響
  • アナライザー実行時のスループットとレイテンシーへの実際の影響測定

Rust の Sled ライブラリ内部で CPU 時間がどのように消費されているか(OpenResty XRay を使用)

  • 問題:高 CPU 使用率
  • Rust の Sled ライブラリ内の CPU 時間消費を分析
  • 完全自動化された分析とレポート
  • 問題:高 CPU 使用率
  • Rust の Sled ライブラリ内の CPU 時間消費を分析
  • 完全自動化された分析とレポート

C++ による C++ アプリケーションの動的トレース技術

  • 対象 C++ プログラムを設定
  • C++(または Y++)アナライザーの作成
  • 対象プログラムとアナライザーの実行
  • 複雑な C++ アプリケーションのサポート強化
  • デバッグシンボルについて
  • 結論
Photo by 章亦春
  • 対象 C++ プログラムを設定
  • C++(または Y++)アナライザーの作成
  • 対象プログラムとアナライザーの実行
  • 複雑な C++ アプリケーションのサポート強化
  • デバッグシンボルについて
  • 結論

デバッグシンボルが欠落した OpenResty/Nginx アプリケーションの分析(OpenResty XRay を使用)

  • 問題:アプリケーションにデバッグシンボルが欠落
  • デバッグシンボルの自動分析と再構築
  • 完全自動化された分析とレポート作成
  • 問題:アプリケーションにデバッグシンボルが欠落
  • デバッグシンボルの自動分析と再構築
  • 完全自動化された分析とレポート作成

llama.cpp プログラムと LLaMA2 モデル内部で CPU 時間がどのように消費されているか(OpenResty XRay を使用)

  • 問題: 高 CPU 使用率
  • 最もホットな C++ コードパスを特定
  • 完全自動化された分析とレポート
  • 問題: 高 CPU 使用率
  • 最もホットな C++ コードパスを特定
  • 完全自動化された分析とレポート

Ylang: eBPF、Stap+、GDB などのフレームワーク向け汎用言語(第4回、全4回)

  • コンテナを透過的に横断するトレース機能
    • 効率的なスタックアンワインディング
    • 終了したプロセスの分析(core dumps)
    • 極めて低いトレーシングオーバーヘッド
    • 標準 Ylang ライブラリとツール
    • ネットワークフィルタリングと制御
    • Ylang コンパイラの実装
    • オペレーティングシステムのサポート
    • オープンソースコミュニティへの貢献
    • 結論
    • 謝辞
Photo by 章亦春
  • コンテナを透過的に横断するトレース機能
    • 効率的なスタックアンワインディング
    • 終了したプロセスの分析(core dumps)
    • 極めて低いトレーシングオーバーヘッド
    • 標準 Ylang ライブラリとツール
    • ネットワークフィルタリングと制御
    • Ylang コンパイラの実装
    • オペレーティングシステムのサポート
    • オープンソースコミュニティへの貢献
    • 結論
    • 謝辞

Ylang: eBPF、Stap+、GDB などのフレームワーク向け汎用言語(第3回、全4回)

  • Ylang の文法(前回の続き)
    • 文字列
    • 組み込み正規表現サポート
    • 完全な制御フロー機能のサポート
    • 浮動小数点数のサポート
    • オープンソースツールチェーンとの比較
  • 明確なデバッグシンボルの手法
    • デバッグシンボル:実行時のシステムオーバーヘッドなし
    • 集中管理されたパッケージデータベース
    • デバッグシンボルのファジーマッチング
Photo by 章亦春
  • Ylang の文法(前回の続き)
    • 文字列
    • 組み込み正規表現サポート
    • 完全な制御フロー機能のサポート
    • 浮動小数点数のサポート
    • オープンソースツールチェーンとの比較
  • 明確なデバッグシンボルの手法
    • デバッグシンボル:実行時のシステムオーバーヘッドなし
    • 集中管理されたパッケージデータベース
    • デバッグシンボルのファジーマッチング

OpenResty XRay を使用して Linux カーネルのトレースサブシステムにおける 2 つのバグを捕捉

  • ユーザー空間メモリ読み取り時のカーネルデッドロック
  • カーネル内の x86 ブレークポイント挿入におけるデータ競合
  • ユーザー空間メモリ読み取り時のカーネルデッドロック
  • カーネル内の x86 ブレークポイント挿入におけるデータ競合

OpenResty XRay を使用して、カスタム Kong プラグインの Lua 例外による CPU ボトルネックを解決した方法

  • 問題:Kong サーバーの高 CPU 使用率
  • 分析とレポート
  • 結果:パフォーマンスの向上と CPU 使用率の低下
Photo by 章亦春
  • 問題:Kong サーバーの高 CPU 使用率
  • 分析とレポート
  • 結果:パフォーマンスの向上と CPU 使用率の低下

OpenResty XRay を使用して、オンラインの Kong サービスプロセス内のプラグインの CPU およびメモリ使用量をリアルタイムで統計化する方法

  • サーバープロセス内のすべての Kong プラグインの CPU 使用状況
  • サーバープロセス内のすべての Kong プラグインのメモリ使用状況
  • サーバーへの追加負荷
  • 今後の展開
Photo by 章亦春
  • サーバープロセス内のすべての Kong プラグインの CPU 使用状況
  • サーバープロセス内のすべての Kong プラグインのメモリ使用状況
  • サーバーへの追加負荷
  • 今後の展開

Ylang: eBPF、Stap+、GDB などのフレームワーク向け汎用言語(第1回、全4回)

  • 動的トレーシングとは
  • なぜ「Y」と名付けたのか
  • はじめに
  • 各種バックエンドとランタイム
  • なぜ統一されたフロントエンド言語が必要なのか
  • 言語の構文
  • 続く
Photo by 章亦春
  • 動的トレーシングとは
  • なぜ「Y」と名付けたのか
  • はじめに
  • 各種バックエンドとランタイム
  • なぜ統一されたフロントエンド言語が必要なのか
  • 言語の構文
  • 続く

OpenResty XRay のコマンドラインツールを使用してメモリリークしている Lua テーブルを特定する

  • LuaJIT のメモリ管理方法
  • OpenResty XRay のコマンドラインツール
  • リークの例
  • 分析プロセス
  • lj-gco-ref アナライザ
  • 完全自動分析
  • LuaJIT のメモリ管理方法
  • OpenResty XRay のコマンドラインツール
  • リークの例
  • 分析プロセス
  • lj-gco-ref アナライザ
  • 完全自動分析

YSQL 言語を使用した Nginx プロセスのリアルタイムリクエスト数カウント

  • run-ysql ツールのインストール方法
  • リアルタイムの総リクエスト数の統計
  • 特定のリクエストのフィルタリング
  • Web コンソールでの YSQL の使用
  • 真の非侵襲的トレーシング
Photo by 章亦春
  • run-ysql ツールのインストール方法
  • リアルタイムの総リクエスト数の統計
  • 特定のリクエストのフィルタリング
  • Web コンソールでの YSQL の使用
  • 真の非侵襲的トレーシング

OpenResty または Nginx プロセスにおける読み込み済み Lua モジュールの一覧表示

  • システム環境
  • 読み込み済み Lua モジュールの名前
  • Web コンソールで直接実行
  • コンテナ内のアプリケーションのトレース
  • ツールの実装方法
  • ツールのオーバーヘッド
Photo by Yichun Zhang
  • システム環境
  • 読み込み済み Lua モジュールの名前
  • Web コンソールで直接実行
  • コンテナ内のアプリケーションのトレース
  • ツールの実装方法
  • ツールのオーバーヘッド

OpenResty または Nginx における最も CPU を消費するリクエストの分析

  • システム環境
  • CPU 使用率が最も高いリクエストのホスト名
  • CPU 使用率が最も高いリクエストの URI
  • さらに深く掘り下げる
  • Web コンソールで直接実行する
  • コンテナ内のアプリケーションのトレース
  • ツールの実装方法
  • ツールのオーバーヘッド
Photo by Yichun Zhang
  • システム環境
  • CPU 使用率が最も高いリクエストのホスト名
  • CPU 使用率が最も高いリクエストの URI
  • さらに深く掘り下げる
  • Web コンソールで直接実行する
  • コンテナ内のアプリケーションのトレース
  • ツールの実装方法
  • ツールのオーバーヘッド

メモリ使用量が 60% 削減、OpenResty XRay で問題コードを正確に特定し、迅速に修正・デプロイを実現

  • worker プロセスのメモリ使用量が高い問題について
  • OpenResty XRay による分析プロセス
  • worker プロセスのメモリが解放されない疑問について
Photo by 章亦春
  • worker プロセスのメモリ使用量が高い問題について
  • OpenResty XRay による分析プロセス
  • worker プロセスのメモリが解放されない疑問について

Lua レベル CPU フレームグラフの概要

  • フレームグラフとは何か
  • 簡単な Lua の例
  • 複雑な Lua アプリケーション
  • サンプリングのオーバーヘッド
  • セキュリティ
  • 互換性
  • その他の種類の Lua レベルフレームグラフ
Photo by Guido Jansen
  • フレームグラフとは何か
  • 簡単な Lua の例
  • 複雑な Lua アプリケーション
  • サンプリングのオーバーヘッド
  • セキュリティ
  • 互換性
  • その他の種類の Lua レベルフレームグラフ

OpenResty と Nginx の共有メモリ領域におけるメモリフラグメンテーションの問題

  • 空の共有メモリ領域
  • 類似サイズのエントリで埋める
  • 奇数キーの削除
  • 前半部分のキーの削除
  • メモリフラグメンテーションの緩和
Photo by Elena Mozhvilo
  • 空の共有メモリ領域
  • 類似サイズのエントリで埋める
  • 奇数キーの削除
  • 前半部分のキーの削除
  • メモリフラグメンテーションの緩和

OpenResty と Nginx の共有メモリ領域が物理メモリをどのように消費するか

  • Slab とメモリページ
  • 割り当てられたメモリが必ずしも消費されるわけではない
  • 偽のメモリリーク
  • HUP による再読み込み
Photo by Jose G. Ortega Castro
  • Slab とメモリページ
  • 割り当てられたメモリが必ずしも消費されるわけではない
  • 偽のメモリリーク
  • HUP による再読み込み

LuaJIT GC64 モード

  • 旧メモリ制限
    • このメモリ制限に遭遇する時期
    • メモリ制限はプロセスごと
    • GC が管理するメモリ
    • GC が管理しないメモリ
    • x64 モードのメモリ上限を 4 GB に引き上げる
  • 新しい GC64 モード
    • GC64 モードの有効化方法
    • パフォーマンスへの影響
    • デバッグ分析ツールチェーン
  • 旧メモリ制限
    • このメモリ制限に遭遇する時期
    • メモリ制限はプロセスごと
    • GC が管理するメモリ
    • GC が管理しないメモリ
    • x64 モードのメモリ上限を 4 GB に引き上げる
  • 新しい GC64 モード
    • GC64 モードの有効化方法
    • パフォーマンスへの影響
    • デバッグ分析ツールチェーン
お問い合わせ

ご意見・ご感想をお待ちしております 👋

メッセージを送信しました!

専門家チームが24時間以内にご連絡いたします。
x