AWS Summit Taipei 2016 心得

這次為了 AWS Summit Taipei 2016
跟老闆請公假上台北一趟
老實說真的也對 AWS 有更深的一層認識呢

補充:AWS 已經公佈投影片於 http://www.slideshare.net/AmazonWebServices/tag/2016tpesummit

AWS 在本次 Summit 的主推功能

很明顯可以體會到
AWS 的這次 Summit 主要著重在 IoT 和 AWS Lambda
前者是示範了很多 IoT 別人怎麼作
後者則是 AWS 近期推出的新服務
我對 Lambda 比較有興趣
所以特別詳細介紹一下

AWS Lambda 就是把伺服器改成依需求啟動
以所使用的 CPU 時間和請求次數來計費
在我想到的應用可能在於
原本遊戲伺服器
會有一些需要定期執行的工作
例如在半夜跑遊戲統計之類的
原本為了不影響玩家
所以會特地開一台伺服器
平常這台伺服器沒在做事
只有在特定時間才執行
這個就很適合使用 AWS Lambda
你只需要在上面寫好程式碼
在符合的條件到了以後
就會自動執行;

還有就是遊戲的後台功能
只有在有管理者使用時才啟動
這是我目前想到的可能應用

以 AWS 為平台的無伺服器化的地理空間行動 App

同講者在新加坡的影片:https://www.youtube.com/watch?v=ejeF0DO02LU
講者在當天的投影片:http://www.slideshare.net/AmazonWebServices/serverless-geospatial-mobile-apps-with-aws-63271591

原本覺得這個標題超沒吸引力
但是沒想到卻讓我覺得我學到了很多
這個 App 全部用 AWS 的服務
而沒有用到任何傳統上的伺服器主機
有很多都是我之前不知道的
真的是獲益良多阿

使用 Amazon Cognito 來讓使用者註冊登入
並且同步登入資訊
實現跨裝置同步
這東西聽起來像是有了認證功能的 Redis
也是 key-value 的方式儲存

使用 Amazon Mobile Analytics 來進行使用者行為分析
處裡掉很多基礎的指標
例如 DAU、付費用戶貢獻、留存、回流之類的
忽然覺得我自己好像是笨蛋一樣 囧rz
聽講者說還可以自訂指標
例如升了幾個等級之類的

核心商業邏輯使用 API Gateway 和 AWS Lambda
以取代原本伺服器的功能

使用 Amazon S3 來儲存圖片之類的檔案

使用 Amazon SNS mobile push notifications
來跨平台在 Android 和 iOS 上面發送通知

使用 Amazon DynamoDB 來儲存資料
當作資料庫使用
講者特別提到這個資料庫有對儲存地理資訊優化

使用這個架構的好處是
所有使用到的功能全部都是特化的
雖然在寫程式需要更多功夫
但是卻可以按照使用量收費
然後 HA 和 Auto-Scaling 應該都會是比較容易達成的

Hands-on Labs

這次我也有去報名 Hands-on Labs
我是選 Auto Scaling 的練習
大致上的內容是
他會自動建立一個帳號給你用
裡面已經有 Amazon Machine Images (AMI) 了
你就是要把這個 AMI 設定成
CPU 超過 50% 自動加一台,少於 30% 自動少一台
中間需要搭配 AWS 的 CloudWatch
真的算是有實際操作到怎麼使用 Auto Scaling
但是我想如果要用在現實上
比較難的還是那個 AMI 需要自己做吧 XD