JAWS-UG 초보자 지부 & 지바 지부 #26 신인 씨 환영! 핸즈온 <(온라인)

0. 소개 감사의 마음을 전하게 해주세요!


  • 전세계에서 비상사태 선언가 발동되고 있다는 긴박한 상황에도 불구하고, 온라인 개최를 실행된 스탭의 민첩성이 훌륭합니다! 라고 느꼈다 공부회 였습니다.
  • 지금 제일 흥미있는 테마의 서버리스&Web API를 AWS씨의 해설 첨부로 핸즈 온할 수 있는 기회였으므로, 목목하였습니다. 정말 고마워요.
  • 문서는 여기에 게시되어 있습니다. 본 메모에서는 「잊지 말아라」라고 생각한 3개의 점에 대해서, 자료를 일부 사용해 주신 것, 용서해 주세요.

  • 1. 마스터하기로 결정한 종목은, 누군가에게 제대로 설명할 수 있을 때까지의 레벨을 목표로 하자!





    2. 하지 말고 멈추고, 해야 할 일에 집중하자!





    3. 음, 서버리스 시대에 인프라 엔지니어의 일은 없다!





    4. 번역 웹 API(REST에서 일본어를 영어로 번역)


  • 관심있는 API Gateway를 사용하는 핸즈온 2에 대해 메모하십시오. (핸즈온은 3개 있었습니다만 시간내에 핸즈온 3이 완수할 수 없었기 때문에, 다음날 아침 모쿠모쿠 해 보았습니다)
  • 도쿄 리전을 사용했지만 턴 어라운드 시간이 매우 빠르다고 체감 할 수 있습니다.
  • URL에 쿼리 문자열 (번역하고 싶은 문자열)을 넣고 만든 APIGateway에 요청을 건너 뛰면 English에서 응답이 반환됩니다 (오류 ).
  • 처리 흐름의 내용을 문자로 설정하면 ...
    GET 요청 ➡️APIGateway ➡️Lambda (python+AWStranslate) ➡️ 응답 200
  • API Gateway의 매니콘으로 확인하면 이런 느낌입니다.

  • 5. 번역된 결과를 DynamoDB에 저장


  • 숙제의 핸즈온 2의 +α에 도전했을 때의 Lambda 함수의 코드입니다.
  • import boto3
    import datetime
    import json
    
    def lambda_handler(event, context):
    
        # translateリソースを作成
        translate = boto3.client('translate')
    
     # URLから入力された日本語文字列をイベントとし、input_text変数に格納
        input_text = event['queryStringParameters']['input_text']
    
        # translate_textメソッドでinput_text変数の日本語(ja)を英語(en)へ翻訳
        response = translate.translate_text(
            Text=input_text,
            SourceLanguageCode='ja',
            TargetLanguageCode='en'
        )
    
        # 翻訳した英語をoutput_text変数に格納
        output_text = response['TranslatedText']
    
        # dynamoDBリソースを作成
        dynamodb = boto3.resource('dynamodb')
    
        # tableリソースを作成
        table = dynamodb.Table('TranslateHistory')
    
        # tableリソースへデータ登録(テーブルはCLIで事前に作成済み)
        table.put_item(
            Item = {
                'date': datetime.datetime.now().strftime("%Y%m%d"),
                'time': datetime.datetime.now().strftime("%H%M%S"),
                'from': input_text,
                'to': output_text
            })
    
        # クライアント(ブラウザ)への戻り値
        return {
            'statusCode': 200,
            'body': json.dumps({
                'output_text': output_text
            })
        }
    

    6. Next Action


  • 정확하게 이해할 수없는 키워드를 트리거로 파이썬과 람다를 목목.

  • boto3 = 파이썬 용 SDK.
    덧붙여서 boto의 유래는 아마존의 엔지니어가 응답하고 있습니다 (아마존에있다 🐬)

  • handler = 파이썬 함수를 핸들러라고합니다.
  • 이벤트

  • context 개체


  • 마지막으로


  • 자동화나 사람의 도움이 되는 어플리케이션을 개발하는 것을 목표로 날마다 목욕하고 있는 느낌입니다. 그런 때에도 의미있는 세미나를 만들어 주신 초보자 지부의 스탭 씨와 AWS 가나자와 씨에게 감사합니다.
  • Next Action이 진행되어 본 기사를 조금씩 갱신하고 싶습니다.
  • 좋은 웹페이지 즐겨찾기