問題
最近有一個每天在凌程定時同步數據給第三方系統的需求。需要使用AWS EventBridge和AWS Lambda結合的方式來同步數據給第三方系統。
思路
使用Python的ORM框架(例如:SQLAlchemy)查詢到需要同步的數據,然后,使用http客戶端(例如:requests)發送同步數據給第三方系統。實現好這個Lambda后,然后,使用AWS EventBridge的定時任務服務定時調用Lambda函數即可。
EventBridge
搜索EventBridge,進入服務首頁,如下圖開始搜索:
開始創建定時計劃,如下圖:
設置定時任務,設置每天晚上11點0分開始執行定時任務,如下圖:
選擇調用lambda函數,如下圖:
這里選擇python3先創建一個最簡單的hello,world程序,如下圖:
這里先用一個hello,world程序,先完成AWS EventBridge的設置。lambda最簡python程序成功后,如下圖:
完成lambda函數創建后,我們回到EventBridge配置,先配置完成后續的配置,如下圖:
可選配置保持默認就好,下一步審核,如下圖:
審核沒問題的話,直接創建EventBridge即可,如下圖:
總結
如果AWS Lambda里面沒什么特色實現的配置場景的話,到這里這就是AWS云的定時任務配置就完成了。AWS Lambda中的Python通常來說還需要訪問內網數據庫。這個部分留給以后有緣在寫吧!
參考
- 按計劃調用 Lambda 函數
- 基于 Cron 的計劃