Adding core support for RPC based load testing in jmeter
メンテナーはふだん 1 日以内に返信
まだ誰も着手していません。
評価
- 難易度
- 5/5
- 見積もり時間
- 1週間以上
- 初心者へのやさしさ
- 20/100
- issue の種類
- 機能追加
- 明瞭さ
- 説明が足りない
- 活発さ
- 停滞
- 技術スタック
- grpc, java
- 領域
- performance, testing
調査の方向性
まず、JMeter の既存の HTTP sampler と、言及されている JSR223 および shell sampler の回避策を確認し、RPC テストをこのツールにどのように組み込めるかを理解します。アーキテクチャについて合意し、サードパーティ製ツールに依存するのではなく、gRPC を含む RPC サービスの負荷テストに対するネイティブなコアサポートを提供できれば完了です。
索引モデルが issue の本文から書いたものです。
説明
Use case
Addressing issues #6415 , #6404 , #6313 , it seems like jmeter does not provide core support for testing servers using RPC or any other libraries like gRPC Most of the microservices are migrating to RPC based communication protocols as it is lightweight and comparatively less costly for inter-server communication. This makes me bring down to these points where we might need load testing for servers based on rpc communication protocols:
- Currently there are only third party workarounds that allow load testing for rpc communication types, which is inefficient.
- There's a need for native rpc sampler, just like http sampler exists.
and actually many more, which we can mention if you choose to have it as an enhancement.
Possible solution
The possible solution will highly depend on the architecture and planning on the issue before implementing a code solution. So it is difficult to mention it right away here, but will surely do once I've an idea of the final planning and architecture for this.
Possible workarounds
- using JSR223 with Groovy or a Python script to capture responses or measure latency
- using
grpcurlin shell samplers - using third party tools like gatling where we can initiate tests separately and use jmeter to trigger them using OS process samplers
JMeter Version
5.6.3
Java Version
openjdk version "23.0.1" 2024-10-15
OS Version
Microsoft Windows [Version 10.0.26100.3037]
- 主要言語
- Java
- スター
- 9.6k
- フォーク
- 2.3k
- 平均マージ
- 18時間 33分
- マージ済み PR(30日)
- 12
環境構築
- Dockerfile・Docker Compose ファイルなし
- プルリクエストのテンプレートあり
- コントリビューションガイドを読む
はじめの一歩
- issue を最後まで読み、次にプロジェクトのコントリビューションガイドを読みます。
- 着手することを issue にコメントします — 二人が同じ作業をするのを防げます。
- リポジトリをフォークし、ブランチを切って変更します。
- issue 番号を参照したプルリクエストを送ります。
apache/jmeter のほかの issue
-
[Bug] Typo in assertion property name: "Asserion.test_strings" missing 't'対応中かも @waterWang が 49 日前に担当しました。 オープンdefect to-triage
難易度 1/5 1時間未満 初心者へのやさしさ 82/100
apache/jmeter#6751 · コメント 3 件 ·
メンテナーはふだん 1 日以内に返信
-
enhancement to-triage
難易度 2/5 1〜3時間 初心者へのやさしさ 72/100
メンテナーはふだん 1 日以内に返信
-
RandomDate ignores inclusive end date and throws when start == end対応中かも @weillercarvalho が 325 日前に担当しました。 オープンdefect to-triage
難易度 2/5 1〜3時間 初心者へのやさしさ 68/100
apache/jmeter#6609 · コメント 4 件 ·
メンテナーはふだん 1 日以内に返信
-
documentation to-triage
難易度 2/5 1〜3時間 初心者へのやさしさ 68/100
メンテナーはふだん 1 日以内に返信
-
invalid wontfix
難易度 2/5 1〜3時間 初心者へのやさしさ 65/100
apache/jmeter#5770 · コメント 2 件 ·
メンテナーはふだん 1 日以内に返信
似ている issue
-
Fix Math.ceilDiv wrong result for exact positive divisions対応中かも @pamod-madubashana が今日担当しました。 オープン
難易度 2/5 1〜3時間 初心者へのやさしさ 88/100
scala-native/scala-native#5094 ·
メンテナーはふだん 1 日以内に返信
-
[Bug] AI unread message badge counts a batch of new bubbles as one message対応中かも このイシューにリンクされたプルリクエストがオープン中、またはマージ済みです。 オープン
難易度 2/5 1〜3時間 初心者へのやさしさ 74/100
apache/rocketmq-dashboard#5784 ·
メンテナーはふだん 3 日以内に返信
-
難易度 2/5 1〜3時間 初心者へのやさしさ 62/100
PCL-Community/PCL-CE#3658 ·
メンテナーはふだん 1 日以内に返信
-
難易度 2/5 1〜3時間 初心者へのやさしさ 66/100
apache/skywalking#14127 ·
メンテナーはふだん 1 日以内に返信
-
難易度 2/5 1〜3時間 初心者へのやさしさ 82/100
メンテナーはふだん 1 日以内に返信