Grinderテストに使用しているマスタ/ワーカーEC2インスタンスがあります。 S3バケットから直接ファイルを取得する負荷テストを試す必要がありますが、JythonでGrinderテストスクリプトがどのように見えるかはわかりません。GrinderテストスクリプトでJythonを使用してS3からファイルを取得
アイデアやヒントはありますか?私はそれを少し調べて、PythonにAWSを扱うためのbotoパッケージがあることを見てきました.Jythonでも同様に動作しますか?
(編集 - 明確化のためのコードと、インポートエラーを追加する。)
Pythonのアプローチ:
は "boto3をインストールピップ" でした
テストスクリプト:
from net.grinder.script.Grinder import grinder
from net.grinder.script import Test
import boto3
# boto3 for Python
test1 = Test(1, "S3 request")
resource = boto3.resource('s3')
def accessS3():
obj = resource.Object(<bucket>,<key>)
test1.record(accessS3)
class TestRunner:
def __call__(self):
accessS3()
このためエラーは次のとおりです。
net.grinder.scriptengine.jython.JythonScriptExecutionException::いいえ、モジュールboto3
のJavaアプローチ:
を追加しましたAWS-javaの-SDK-1.11.221瓶.m2 \リポジトリから\ COM \ amazonaws \ AWS-javaの-SDK \ 1.11.221 \クラスパスに
from net.grinder.script.Grinder import grinder
from net.grinder.script import Test
import com.amazonaws.services.s3 as s3
# aws s3 for Java
test1 = Test(1, "S3 request")
s3Client = s3.AmazonS3ClientBuilder.defaultClient()
test1.record(s3Client)
class TestRunner:
def __call__(self):
result = s3Client.getObject(s3.model.getObjectRequest(<bucket>,<key>))
このためエラーは次のとおりです。
amazonawsという名前のモジュールnet.grinder.scriptengine.jython.JythonScriptExecutionException:
私もWindowsコンピュータで動作していますが、私はGit Bashを使用しています。
返信いただきありがとうございます!私はいくつかの問題が輸入作業を取得している。私はPythonのアプローチのためにpipをインストールしようとしましたが、Javaのアプローチのためにクラスパスにaws-java-sdk jarを追加しようとしましたが、どちらの方法でも "amazonawsというモジュールはありません"または "いいえモジュールboto3 "エラーです。 AWSのインポート方法に関するアドバイスはありますか? – syim
リクエストの本文にコードと同様にスタックトレースを投稿できますか? – Ted
確かに、私はテストスクリプトとエラーを追加しました。 – syim