182
阿裏雲
緩存更新策略__最佳實踐_數據傳輸-阿裏雲
為提高業務訪問速度,提升業務讀並發,很多用戶會在業務架構中引入緩存層。業務讀請求路由到緩存層,通過緩存的內存讀取機製提升業務讀取性能。為了保證數據完整性,業務的更新數據可以落到持久化存儲RDS。此時,業務需要實現緩存更新策略,保證業務數據更新後,緩存中的數據能夠被同步更新。
如 緩存失效竟然可以這麼解? 所述,通過DTS的數據訂閱功能,可以實現高可靠、低延遲的緩存更新策略。
本小節介紹,當持久化DB使用RDS,緩存使用MongoDB或Redis時,怎麼使用DTS實現緩存更新。
緩存更新步驟
使用DTS提供了RDS MySQL增量數據訂閱的功能實現緩存更新,持久化RDS到緩存MongoDB/Redis的更新數據同步需要進行兩個步驟的操作:
- 在DTS控製台創建RDS實例的訂閱通道,具體創建步驟詳見 創建訂閱通道 。
- 封裝DTS提供的SDK,從訂閱通道中監聽並實時獲取RDS增量數據,根據業務需求,將增量數據封裝成MongoDB/Redis的數據更新語句後,同步運行到緩存MongoDB/Redis中,從而實現RDS->MongoDB/Redis增量數據實時同步,實現高可靠、低延遲緩存更新。
為降低用戶使用門檻,DTS提供了封裝DTS SDK 實現增量數據同步到MongoDB/Redis的demo,下文詳細介紹運行這些示例demo的具體流程。
MongoDB緩存更新demo運行示例
Access Key 創建
緩存更新Demo運行時,需要配置訂閱通道所屬阿裏雲賬號的Access Key/Access Secret。所以在運行Demo之前,需要先創建Access Key。如果阿裏雲賬號已經創建過Access Key,那麼不需要重新創建。如果未創建,那麼具體操作步驟如下:
- 登錄阿裏雲控製台,點擊右上角的阿裏雲賬號,進入賬號管理中心。
- 點擊頭部的AccessKeys,進入Access Key 管理頁麵。
- 點擊控製台右上角 創建Access Key ,創建Access Key/Access Secret。
安裝JAVA SDK
DTS提供的JAVA SDK支持的開發環境為:J2SE Development Kit (JDK) 1.5或以上版本。
下麵以Eclipse工程為例,簡單介紹SDK的安裝步驟:
- 登錄SDK下載頁麵,下載最新數據訂閱SDK包 dts-subscribe-3.0.jar。
- 進入Eclipse,創建一個maven project,右鍵點擊Project -> Properties -> Java Build Path -> Libraries->Add External JARs,選擇dts-subscribe-3.0.jar包的存放路徑,將dts-subscribe-3.0.jar添加到工程中。
- 選擇dts-subscribe-3.0.jar,點擊“OK”按鈕,經過以上步驟,你就可以在工程中使用DTS Java SDK了。
示例Demo運行
下麵以eclipse工程為例,簡單介紹運行MongoDB 數據更新demo的方式。
- 下載 MongoDB數據更新Demo。
- 在上麵新建的project中新建類DTSMySQL2Mongo。
- 打開生成的Java文件DTSMySQL2Mongo,刪除裏麵的代碼模板,將示例代碼黏貼在文件DTSMySQL2Mongo中。
Maven配置。
<dependency>
<groupId>com.vividsolutions</groupId>
<artifactId>jts</artifactId>
<version>1.13</version>
</dependency>
<dependency>
<groupId>org.mongodb</groupId>
<artifactId>mongo-java-driver</artifactId>
<version>3.2.0</version>
</dependency>
在pom.xml中完成maven配置後,右鍵點擊project,選擇Maven->Update Project,進行Maven依賴更新。
修改Demo中的AccessKeyID,AccessKeySecret,訂閱通道ID,mongUrl,mongUserName,mongUserPassword,其中:
- AccessKeyID 為上麵創建的AccessKey
- AccessSecret 為AccessKey對應的AccessSecret
- Subscription_Instance_ID 為訂閱通道ID
- mongoUrl 為要同步的MongoDB的連接地址,連接串格式為:
- MongoDB連接地址:MongoDB監聽端口/默認連接數據庫,例如:120.26.122.72:27037/admin1
- mongUserName 為訪問MongoDB的數據庫賬號
mongUserPassword 為訪問MongoDB的數據庫賬號對應的密碼
在Eclipse中右擊demo文件 -> 運行方式 –> Java應用程序,即成功運行示例demo。
Redis緩存更新demo運行示例
Access Key 創建
緩存更新Demo運行時,需要配置訂閱通道所屬阿裏雲賬號的Access Key/Access Secret。所以在運行Demo之前,需要先創建Access Key。如果阿裏雲賬號已經創建過Access Key,那麼不需要重新創建。如果未創建,那麼具體操作步驟如下:
- 登錄阿裏雲控製台,點擊右上角的阿裏雲賬號,進入賬號管理中心。
- 點擊頭部的AccessKeys,進入Access Key 管理頁麵。
- 點擊控製台右上角 創建Access Key,創建Access Key/Access Secret。
安裝JAVA SDK
DTS提供的JAVA SDK支持的開發環境為:J2SE Development Kit (JDK) 1.5或以上版本。
下麵以Eclipse工程為例,簡單介紹SDK的安裝步驟:
- 登錄SDK下載頁麵,下載最新數據訂閱SDK包 dts-subscribe-3.0.jar。
- 進入Eclipse,創建一個maven project,右鍵點擊Project -> Properties -> Java Build Path -> Libraries->Add External JARs,選擇dts-subscribe-3.0.jar包的存放路徑,將dts-subscribe-3.0.jar添加到工程中。
- 選擇dts-subscribe-3.0.jar,點擊“OK”按鈕,經過以上步驟,你就可以在工程中使用DTS Java SDK了。
示例Demo運行
下麵以eclipse工程為例,簡單介紹運行Redis 數據更新demo的方式。
- 下載 Redis數據更新demo。
- 在上麵新建的project中新建類DTSMySQL2Redis。
- 打開生成的Java文件DTSMySQL2Redis,刪除裏麵的代碼模板,將示例代碼黏貼在文件DTSMySQL2Redis中。
Maven配置。
<dependency>
<groupId>com.vividsolutions</groupId>
<artifactId>jts</artifactId>
<version>1.13</version>
</dependency>
<dependency>
<groupId>redis.clients</groupId>
<artifactId>jedis</artifactId>
<version>2.7.2</version>
</dependency>
在pom.xml中完成maven配置後,右鍵點擊project,選擇Maven->Update Project,進行Maven依賴更新。
修改Demo中的AccessKeyID,AccessKeySecret,訂閱通道ID,redisUrl,redisPort,redisPassword,其中:
- AccessKeyID 為上麵創建的AccessKey
- AccessSecret 為AccessKey對應的AccessSecret
- Subscription_Instance_ID 為訂閱通道ID
- redisUrl 為要同步的Redis的連接地址,例如:120.26.122.72
- redisPort 為Redis監聽端口
redisPassword 為訪問Redis的數據庫賬號
在Eclipse中右擊demo文件 -> 運行方式 –> Java應用程序,即成功運行示例demo。
至此,完成通過DTS數據訂閱功能,MongoDB/Redis 數據更新Writer實現高可靠、低延遲緩存更新策略。
最後更新:2016-11-23 16:04:16
上一篇:
數據訂閱SDK容災__最佳實踐_數據傳輸-阿裏雲
下一篇:
本地IDC自建數據庫同RDS實例實時同步__最佳實踐_數據傳輸-阿裏雲
分配公網 IP 地址__網絡相關接口_API 參考_雲服務器 ECS-阿裏雲
短信的如何計費__常見問題_短信服務-阿裏雲
負載均衡性能指標__負載均衡性能常見問題_常見問題_負載均衡-阿裏雲
5.2 數據導入狀態查詢__第五章 Data Pipeline_使用手冊_分析型數據庫-阿裏雲
2015-12-09__Release-Notes_日誌服務-阿裏雲
7.2 查看DB性能指標和報告__第七章 性能優化和診斷_使用手冊_分析型數據庫-阿裏雲
數據多樣化存儲__典型應用_產品簡介_雲數據庫 RDS 版-阿裏雲
發送郵件的三種方式__發送郵件_使用手冊_郵件推送-阿裏雲
容器間的互相發現__服務發現和負載均衡_用戶指南_容器服務-阿裏雲
雲郵箱購買流程__購買續費_購買指導_企業郵箱-阿裏雲
相關內容
常見錯誤說明__附錄_大數據計算服務-阿裏雲
發送短信接口__API使用手冊_短信服務-阿裏雲
接口文檔__Android_安全組件教程_移動安全-阿裏雲
運營商錯誤碼(聯通)__常見問題_短信服務-阿裏雲
設置短信模板__使用手冊_短信服務-阿裏雲
OSS 權限問題及排查__常見錯誤及排除_最佳實踐_對象存儲 OSS-阿裏雲
消息通知__操作指南_批量計算-阿裏雲
設備端快速接入(MQTT)__快速開始_阿裏雲物聯網套件-阿裏雲
查詢API調用流量數據__API管理相關接口_API_API 網關-阿裏雲
使用STS訪問__JavaScript-SDK_SDK 參考_對象存儲 OSS-阿裏雲