Interview Quiz w/o Server
-
Upload
cliff-chao-kuan-lu -
Category
Software
-
view
376 -
download
3
Transcript of Interview Quiz w/o Server
![Page 1: Interview Quiz w/o Server](https://reader031.fdocument.pub/reader031/viewer/2022022419/5885f0771a28ab864f8b5b6b/html5/thumbnails/1.jpg)
![Page 2: Interview Quiz w/o Server](https://reader031.fdocument.pub/reader031/viewer/2022022419/5885f0771a28ab864f8b5b6b/html5/thumbnails/2.jpg)
ABOUT CLIFF
•Certified AWS …
•Professional Level SA
•Associate Level Sysops
•Senior Architect @ 104 Corp.
•Converted 2009
![Page 3: Interview Quiz w/o Server](https://reader031.fdocument.pub/reader031/viewer/2022022419/5885f0771a28ab864f8b5b6b/html5/thumbnails/3.jpg)
104 徵人好難的,GOOGLE上搜尋 “104 職缺” 查到的都是其它公司 T_T
這傢伙怎麼到哪都在徵人….
![Page 4: Interview Quiz w/o Server](https://reader031.fdocument.pub/reader031/viewer/2022022419/5885f0771a28ab864f8b5b6b/html5/thumbnails/4.jpg)
EC2 各種麻煩◦ Load Balancing
◦ Types
◦Contracts
◦AutoScaling
Parameters
Pattern
4/20/2016CC-BY 3.0, Cliff Chao-kuan Lu
-- 2014 AWS JavaScript
SDK and DynamoDB
![Page 6: Interview Quiz w/o Server](https://reader031.fdocument.pub/reader031/viewer/2022022419/5885f0771a28ab864f8b5b6b/html5/thumbnails/6.jpg)
寫在前面 –科學記數
•今天會談到很多很小的數字•用科學記數比較方便•1e3 = 1,000
•4e-4 = 0.000 4
•1 – 1e-11 = 0.999 999 999 99
![Page 7: Interview Quiz w/o Server](https://reader031.fdocument.pub/reader031/viewer/2022022419/5885f0771a28ab864f8b5b6b/html5/thumbnails/7.jpg)
BACKGROUND
•雲端世代只需要開發者
•Market Survey -> User analysis
•Waterfall Design -> Iterative
•QA -> Unit test + End-to-end test
•Infrastructure as Code
•開發能力難由履歷評沽
![Page 8: Interview Quiz w/o Server](https://reader031.fdocument.pub/reader031/viewer/2022022419/5885f0771a28ab864f8b5b6b/html5/thumbnails/8.jpg)
INTERVIEW –肉搜
爬 BLOG, GITHUB, 社群參與或發表記錄
![Page 9: Interview Quiz w/o Server](https://reader031.fdocument.pub/reader031/viewer/2022022419/5885f0771a28ab864f8b5b6b/html5/thumbnails/9.jpg)
INTERVIEW –型式聊聊
聊聊天氣、學校老師、大學宿舍養的狗、台中名產,面試就結束了
![Page 10: Interview Quiz w/o Server](https://reader031.fdocument.pub/reader031/viewer/2022022419/5885f0771a28ab864f8b5b6b/html5/thumbnails/10.jpg)
INTERVIEW –測驗
出題閱券都有點麻煩,不小心還會改錯
![Page 11: Interview Quiz w/o Server](https://reader031.fdocument.pub/reader031/viewer/2022022419/5885f0771a28ab864f8b5b6b/html5/thumbnails/11.jpg)
INTERVIEW –白版解題
不小心一個下午就這麼過去了
![Page 12: Interview Quiz w/o Server](https://reader031.fdocument.pub/reader031/viewer/2022022419/5885f0771a28ab864f8b5b6b/html5/thumbnails/12.jpg)
問題是
•時間•時間•時間
前面的手法都不太容易 SCALE
![Page 13: Interview Quiz w/o Server](https://reader031.fdocument.pub/reader031/viewer/2022022419/5885f0771a28ab864f8b5b6b/html5/thumbnails/13.jpg)
LEETCODE
既然有人刷 LEETCODE 準備面試…
![Page 14: Interview Quiz w/o Server](https://reader031.fdocument.pub/reader031/viewer/2022022419/5885f0771a28ab864f8b5b6b/html5/thumbnails/14.jpg)
那就來做測驗 API吧凡是人類做了嫌麻煩浪費時間的,都應該自動化;
凡是牽涉溝通的,都應該交給 API!
![Page 15: Interview Quiz w/o Server](https://reader031.fdocument.pub/reader031/viewer/2022022419/5885f0771a28ab864f8b5b6b/html5/thumbnails/15.jpg)
服務設計考量
•效能•管理•費用
![Page 16: Interview Quiz w/o Server](https://reader031.fdocument.pub/reader031/viewer/2022022419/5885f0771a28ab864f8b5b6b/html5/thumbnails/16.jpg)
API GATEWAY + LAMBDA + S3
•Managed Services
•解決效能、管理問題
•費用•皆在 1e-6 鎂/Request 之數量級
![Page 17: Interview Quiz w/o Server](https://reader031.fdocument.pub/reader031/viewer/2022022419/5885f0771a28ab864f8b5b6b/html5/thumbnails/17.jpg)
LAMBDA
•Serverless 運算服務
•支援 Python, Node.js 與 Java
•Managed, AWS 負責 HA 與 Scalability
•/tmp 有 512mb 可用
•若 24/7 運行 (128mb),費用與 t2.nano 相若
•觸發與權限設置詳見文件
![Page 18: Interview Quiz w/o Server](https://reader031.fdocument.pub/reader031/viewer/2022022419/5885f0771a28ab864f8b5b6b/html5/thumbnails/18.jpg)
API GATEWAY
•Managed HTTPS API Gateway
•權限設計頗複雜,必須詳讀文件
![Page 19: Interview Quiz w/o Server](https://reader031.fdocument.pub/reader031/viewer/2022022419/5885f0771a28ab864f8b5b6b/html5/thumbnails/19.jpg)
架構
![Page 20: Interview Quiz w/o Server](https://reader031.fdocument.pub/reader031/viewer/2022022419/5885f0771a28ab864f8b5b6b/html5/thumbnails/20.jpg)
運作
![Page 21: Interview Quiz w/o Server](https://reader031.fdocument.pub/reader031/viewer/2022022419/5885f0771a28ab864f8b5b6b/html5/thumbnails/21.jpg)
DETAILED PRICING
•API-gateway
•請求 $3.5e-6 Calls
•傳出 $0.09 / GB
•Lambda
•請求 $2e-7 (first 1M free)
•執行 $2e-7 (100ms, 128MB)
•S3
•儲存 $0.03 / GB-month
•傳出 $0.09 / GB
•請求 $4e-7 GET
![Page 22: Interview Quiz w/o Server](https://reader031.fdocument.pub/reader031/viewer/2022022419/5885f0771a28ab864f8b5b6b/html5/thumbnails/22.jpg)
OPEX
•假設說明、題目、與解答均為 1kb
•下載題目: $5.2e-6
•每次答題 / 取題: $4.8e-6
![Page 23: Interview Quiz w/o Server](https://reader031.fdocument.pub/reader031/viewer/2022022419/5885f0771a28ab864f8b5b6b/html5/thumbnails/23.jpg)
COST ESTIMATION
•若每日萬人應試,各下載 10 題,每題嘗試 20 次
•月支出= 1e4 * (10 * (5.2e-6 + 20 * 4.8e-6))
~ 10.1 (USD)
•約合 2 台 t2.nano
![Page 24: Interview Quiz w/o Server](https://reader031.fdocument.pub/reader031/viewer/2022022419/5885f0771a28ab864f8b5b6b/html5/thumbnails/24.jpg)
管理
•Managed Service 解決了區域內的可用性與彈性問題
•跨區部署成本•儲存試題 (S3 儲存 <1USD/mo)
•Route53 ($0.4e-6 per lookup)
•API-Gateway + Lambda ~ 0 (Pay as you go)
![Page 25: Interview Quiz w/o Server](https://reader031.fdocument.pub/reader031/viewer/2022022419/5885f0771a28ab864f8b5b6b/html5/thumbnails/25.jpg)
開發
•Python 2.7
•100% test coverage (pytest)
•引擎可能會 Open Source,但題目暫傾向不要
•答案都在裡頭 >///<
![Page 26: Interview Quiz w/o Server](https://reader031.fdocument.pub/reader031/viewer/2022022419/5885f0771a28ab864f8b5b6b/html5/thumbnails/26.jpg)
部署
•目前仍手動部署•計劃:
•以 Script 管理 CloudFormation Stack
•包含 S3 Bucket, Lambda, API Gateway, (Route53)
•Script 上傳題目說明與 Lambda-source
![Page 27: Interview Quiz w/o Server](https://reader031.fdocument.pub/reader031/viewer/2022022419/5885f0771a28ab864f8b5b6b/html5/thumbnails/27.jpg)
期待
![Page 28: Interview Quiz w/o Server](https://reader031.fdocument.pub/reader031/viewer/2022022419/5885f0771a28ab864f8b5b6b/html5/thumbnails/28.jpg)
誠徵
•開發者• lambda-quiz 計劃
•104
•奴工講者、義工
•AWSUGTW
![Page 29: Interview Quiz w/o Server](https://reader031.fdocument.pub/reader031/viewer/2022022419/5885f0771a28ab864f8b5b6b/html5/thumbnails/29.jpg)
QUESTIONS
![Page 30: Interview Quiz w/o Server](https://reader031.fdocument.pub/reader031/viewer/2022022419/5885f0771a28ab864f8b5b6b/html5/thumbnails/30.jpg)
THANKS