2017-11-20 27 views
0

Grinder 테스트에 사용하는 마스터/작업자 EC2 인스턴스가 있습니다. S3 버킷에서 직접 파일을 가져 오는로드 테스트를 시도해야하지만, 자이 썬에서 그라인더 테스트 스크립트를 어떻게 보는지 확실하지 않습니다.Grinder 테스트 스크립트에서 Jython을 사용하여 S3에서 파일 가져 오기

아이디어 나 팁이 있으십니까? 나는 그걸 조금 들여다 보았고 파이썬에는 AWS로 작업하기위한 boto 패키지가있다. Jython에서도 작동 할까?

(편집 - 설명에 대한 코드 및 가져 오기 오류를 추가.)

파이썬 방법 :

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() 

이에 대한 오류는 다음과 같습니다 : 이
테스트 스크립트 "boto3를 설치 PIP"나요

net.grinder.scriptengine.jython.JythonScriptExecutionException :: 모듈이 없습니다. boto3

자바 방법 :
추가 AWS-자바 SDK - 1.11.221 항아리 .m2 \ 저장소에서 \ COM \ amazonaws \ AWS-자바 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>)) 

이에 대한 오류가 없습니다 :

net.grinder.scriptengine.jython.JythonScriptExecutionException :

,691 amazonaws라는 이름의 모듈

나는 또한 Windows 컴퓨터에서 일을하고 있지만, 힘내 배쉬를 사용하고있다.

답변

0

자이 썬을 사용하고 있다는 것을 감안할 때, 자바 또는 파이썬 구문으로 S3 요청을 실행할지 확실하지 않습니다.

그러나 아래 링크에서 파이썬 가이드와 함께 따라 할 것을 제안합니다.

http://docs.ceph.com/docs/jewel/radosgw/s3/python/

+0

답장을 보내 주셔서 감사합니다. 수입 문제를 해결하는 데 몇 가지 문제가 있습니다. 나는 Python 접근 방식을 위해 pip를 설치하려고했는데 Java 접근 방식을 위해 클래스 패스에 aws-java-sdk 항아리를 추가하려고 시도했지만 "amazonaws라는 모듈 없음"또는 "No 모듈 boto3 "오류. AWS를 가져 오는 방법에 대한 조언이 있습니까? – syim

+0

요청 본문에 코드뿐만 아니라 스택 추적을 게시 할 수 있습니까? – Ted

+0

물론, 테스트 스크립트와 오류를 추가했습니다. – syim