MJay

CCGRID - Lambda 와 API를 통해 Latency Model을 출력하기 본문

Cloud Computing/Amazon AWS

CCGRID - Lambda 와 API를 통해 Latency Model을 출력하기

MJSon 2017. 12. 8. 14:17
Edit

CCGRID - Lambda 와 API를 통해 Latency Model을 출력하기


Lambda

1.import json
2.import collections
3.from collections import OrderedDict
4.
5.latency_list='{"C4.LARGE":{"1":null,"4":null,"9":null,"16":null,"25":null,"36":null,"49":null,"64":null},"C4.XLARGE":{"1":null,"4":null,"9":null,"16":null,"25":null,"36":null,"49":null,"64":null},"C4.2XLARGE":{"1":null,"4":null,"9":null,"16":null,"25":null,"36":null,"49":null,"64":96297.2165622403},"C4.4XLARGE":{"1":null,"4":null,"9":null,"16":118348.7389223872,"25":53839.6234687841,"36":57512.3188689651,"49":48964.9537502223,"64":36970.4383063409},"C4.8XLARGE":{"1":null,"4":null,"9":null,"16":227705.2894415483,"25":191100.4126636563,"36":114433.8748392852,"49":46925.2156032473,"64":15399.1087279306},"M4.LARGE":{"1":null,"4":null,"9":null,"16":null,"25":null,"36":null,"49":null,"64":null},"M4.XLARGE":{"1":null,"4":null,"9":null,"16":null,"25":null,"36":null,"49":null,"64":88484.3548087783},"M4.2XLARGE":{"1":null,"4":null,"9":null,"16":145753.4684621586,"25":92996.4983649705,"36":70454.045576002,"49":58243.4588668962,"64":45072.822647822},"M4.4XLARGE":{"1":null,"4":null,"9":null,"16":343907.3428879664,"25":138006.8788412745,"36":38374.9415705159,"49":17125.2536592228,"64":11908.8024426389},"M4.10XLARGE":{"1":null,"4":null,"9":null,"16":187379.004932839,"25":53179.1388970119,"36":33154.7743924624,"49":12619.5944080666,"64":8230.6222222836},"M4.16XLARGE":{"1":null,"4":null,"9":null,"16":122873.7955441854,"25":75432.617621299,"36":54314.7013236757,"49":21996.3808079217,"64":7959.4599496469},"R4.LARGE":{"1":null,"4":null,"9":null,"16":null,"25":null,"36":null,"49":null,"64":251047.9628212154},"R4.XLARGE":{"1":null,"4":null,"9":null,"16":461993.0519148136,"25":276031.0382155968,"36":251448.6004326562,"49":172393.5068820846,"64":113615.0645488795},"R4.2XLARGE":{"1":null,"4":null,"9":null,"16":103362.5938998827,"25":69403.4410879956,"36":14561.4449421416,"49":14489.9907477507,"64":15559.5425017884},"R4.4XLARGE":{"1":null,"4":null,"9":null,"16":15988.4097062788,"25":12448.5909356099,"36":10646.8583084105,"49":9219.7981993324,"64":8201.0948888362},"R4.8XLARGE":{"1":null,"4":null,"9":null,"16":18638.9798830937,"25":13736.51923672,"36":11473.0503574882,"49":10250.2006592739,"64":9592.2408095329},"R4.16XLARGE":{"1":null,"4":null,"9":null,"16":16437.4004457746,"25":13833.7615179668,"36":11997.212579867,"49":10521.8054182616,"64":9272.7022056494},"T2.LARGE":{"1":null,"4":null,"9":null,"16":null,"25":null,"36":null,"49":null,"64":null},"T2.XLARGE":{"1":null,"4":null,"9":null,"16":null,"25":null,"36":null,"49":null,"64":101622.6324749591},"T2.2XLARGE":{"1":null,"4":null,"9":null,"16":137304.6241288674,"25":143911.1240950341,"36":76451.453176425,"49":50752.4321327683,"64":40761.6141165378}}'
6.
7.a = json.loads(latency_list,object_pairs_hook=OrderedDict)
8.
9.def lambda_handler(event, context):
10. param_lr = str(event.get('lr', 0))
11. param_lr = str(event.get('lc', 0))
12. param_lr = str(event.get('rc', 0))
13.
14. return a

API Gateway


%23%23%23%20CCGRID%20-%20%20Lambda%20%uC640%20API%uB97C%20%uD1B5%uD574%20Latency%20Model%uC744%20%uCD9C%uB825%uD558%uAE30%0A@%28Marxico%29%5Btistory%5D%0A**Lambda**%0A%0A%60%60%60python%0Aimport%20json%0Aimport%20collections%0Afrom%20collections%20import%20OrderedDict%0A%0Alatency_list%3D%27%7B%22C4.LARGE%22%3A%7B%221%22%3Anull%2C%224%22%3Anull%2C%229%22%3Anull%2C%2216%22%3Anull%2C%2225%22%3Anull%2C%2236%22%3Anull%2C%2249%22%3Anull%2C%2264%22%3Anull%7D%2C%22C4.XLARGE%22%3A%7B%221%22%3Anull%2C%224%22%3Anull%2C%229%22%3Anull%2C%2216%22%3Anull%2C%2225%22%3Anull%2C%2236%22%3Anull%2C%2249%22%3Anull%2C%2264%22%3Anull%7D%2C%22C4.2XLARGE%22%3A%7B%221%22%3Anull%2C%224%22%3Anull%2C%229%22%3Anull%2C%2216%22%3Anull%2C%2225%22%3Anull%2C%2236%22%3Anull%2C%2249%22%3Anull%2C%2264%22%3A96297.2165622403%7D%2C%22C4.4XLARGE%22%3A%7B%221%22%3Anull%2C%224%22%3Anull%2C%229%22%3Anull%2C%2216%22%3A118348.7389223872%2C%2225%22%3A53839.6234687841%2C%2236%22%3A57512.3188689651%2C%2249%22%3A48964.9537502223%2C%2264%22%3A36970.4383063409%7D%2C%22C4.8XLARGE%22%3A%7B%221%22%3Anull%2C%224%22%3Anull%2C%229%22%3Anull%2C%2216%22%3A227705.2894415483%2C%2225%22%3A191100.4126636563%2C%2236%22%3A114433.8748392852%2C%2249%22%3A46925.2156032473%2C%2264%22%3A15399.1087279306%7D%2C%22M4.LARGE%22%3A%7B%221%22%3Anull%2C%224%22%3Anull%2C%229%22%3Anull%2C%2216%22%3Anull%2C%2225%22%3Anull%2C%2236%22%3Anull%2C%2249%22%3Anull%2C%2264%22%3Anull%7D%2C%22M4.XLARGE%22%3A%7B%221%22%3Anull%2C%224%22%3Anull%2C%229%22%3Anull%2C%2216%22%3Anull%2C%2225%22%3Anull%2C%2236%22%3Anull%2C%2249%22%3Anull%2C%2264%22%3A88484.3548087783%7D%2C%22M4.2XLARGE%22%3A%7B%221%22%3Anull%2C%224%22%3Anull%2C%229%22%3Anull%2C%2216%22%3A145753.4684621586%2C%2225%22%3A92996.4983649705%2C%2236%22%3A70454.045576002%2C%2249%22%3A58243.4588668962%2C%2264%22%3A45072.822647822%7D%2C%22M4.4XLARGE%22%3A%7B%221%22%3Anull%2C%224%22%3Anull%2C%229%22%3Anull%2C%2216%22%3A343907.3428879664%2C%2225%22%3A138006.8788412745%2C%2236%22%3A38374.9415705159%2C%2249%22%3A17125.2536592228%2C%2264%22%3A11908.8024426389%7D%2C%22M4.10XLARGE%22%3A%7B%221%22%3Anull%2C%224%22%3Anull%2C%229%22%3Anull%2C%2216%22%3A187379.004932839%2C%2225%22%3A53179.1388970119%2C%2236%22%3A33154.7743924624%2C%2249%22%3A12619.5944080666%2C%2264%22%3A8230.6222222836%7D%2C%22M4.16XLARGE%22%3A%7B%221%22%3Anull%2C%224%22%3Anull%2C%229%22%3Anull%2C%2216%22%3A122873.7955441854%2C%2225%22%3A75432.617621299%2C%2236%22%3A54314.7013236757%2C%2249%22%3A21996.3808079217%2C%2264%22%3A7959.4599496469%7D%2C%22R4.LARGE%22%3A%7B%221%22%3Anull%2C%224%22%3Anull%2C%229%22%3Anull%2C%2216%22%3Anull%2C%2225%22%3Anull%2C%2236%22%3Anull%2C%2249%22%3Anull%2C%2264%22%3A251047.9628212154%7D%2C%22R4.XLARGE%22%3A%7B%221%22%3Anull%2C%224%22%3Anull%2C%229%22%3Anull%2C%2216%22%3A461993.0519148136%2C%2225%22%3A276031.0382155968%2C%2236%22%3A251448.6004326562%2C%2249%22%3A172393.5068820846%2C%2264%22%3A113615.0645488795%7D%2C%22R4.2XLARGE%22%3A%7B%221%22%3Anull%2C%224%22%3Anull%2C%229%22%3Anull%2C%2216%22%3A103362.5938998827%2C%2225%22%3A69403.4410879956%2C%2236%22%3A14561.4449421416%2C%2249%22%3A14489.9907477507%2C%2264%22%3A15559.5425017884%7D%2C%22R4.4XLARGE%22%3A%7B%221%22%3Anull%2C%224%22%3Anull%2C%229%22%3Anull%2C%2216%22%3A15988.4097062788%2C%2225%22%3A12448.5909356099%2C%2236%22%3A10646.8583084105%2C%2249%22%3A9219.7981993324%2C%2264%22%3A8201.0948888362%7D%2C%22R4.8XLARGE%22%3A%7B%221%22%3Anull%2C%224%22%3Anull%2C%229%22%3Anull%2C%2216%22%3A18638.9798830937%2C%2225%22%3A13736.51923672%2C%2236%22%3A11473.0503574882%2C%2249%22%3A10250.2006592739%2C%2264%22%3A9592.2408095329%7D%2C%22R4.16XLARGE%22%3A%7B%221%22%3Anull%2C%224%22%3Anull%2C%229%22%3Anull%2C%2216%22%3A16437.4004457746%2C%2225%22%3A13833.7615179668%2C%2236%22%3A11997.212579867%2C%2249%22%3A10521.8054182616%2C%2264%22%3A9272.7022056494%7D%2C%22T2.LARGE%22%3A%7B%221%22%3Anull%2C%224%22%3Anull%2C%229%22%3Anull%2C%2216%22%3Anull%2C%2225%22%3Anull%2C%2236%22%3Anull%2C%2249%22%3Anull%2C%2264%22%3Anull%7D%2C%22T2.XLARGE%22%3A%7B%221%22%3Anull%2C%224%22%3Anull%2C%229%22%3Anull%2C%2216%22%3Anull%2C%2225%22%3Anull%2C%2236%22%3Anull%2C%2249%22%3Anull%2C%2264%22%3A101622.6324749591%7D%2C%22T2.2XLARGE%22%3A%7B%221%22%3Anull%2C%224%22%3Anull%2C%229%22%3Anull%2C%2216%22%3A137304.6241288674%2C%2225%22%3A143911.1240950341%2C%2236%22%3A76451.453176425%2C%2249%22%3A50752.4321327683%2C%2264%22%3A40761.6141165378%7D%7D%27%0A%0Aa%20%3D%20json.loads%28latency_list%2Cobject_pairs_hook%3DOrderedDict%29%0A%0Adef%20lambda_handler%28event%2C%20context%29%3A%0A%20%20%20%20param_lr%20%3D%20str%28event.get%28%27lr%27%2C%200%29%29%0A%20%20%20%20param_lr%20%3D%20str%28event.get%28%27lc%27%2C%200%29%29%0A%20%20%20%20param_lr%20%3D%20str%28event.get%28%27rc%27%2C%200%29%29%0A%0A%20%20%20%20return%20a%0A%60%60%60%0A%0A**API%20Gateway**%0A%0A%21%5BAlt%20text%5D%28./1512709388664.png%29%0A%0A%21%5BAlt%20text%5D%28./1512709415628.png%29%0A