簡體   English   中英

AWS RDS 中的負載均衡或只讀副本

[英]Load balancing Or Read replica in AWS RDS

ASP.net MVC 應用程序位於 EC2 中並與 RDS(SQL 服務器)交互。 應用程序通過 NHibernate 向 RDS 發送批量 GET 請求(API 調用)以獲取項目。 應用程序性能非常緩慢,因為有時它會發出大約 500 個 GET API 調用以從數據庫中獲取 500 個項目(注意 - 從數據庫中獲取項目有其自己的存儲過程/邏輯)

我指的是了解縮放 RDS https://aws.amazon.com/blogs/database/scaling-your-amazon-rds-instance-vertically-and-horizontally/https://aws.amazon.com/premium /知識中心/requests-rds-read-replicas/

但是,沒有太多線索支持我的業務場景。

我的問題是(考慮到上述情況):

  1. 有什么方法可以將我的 GET 請求分發到 RDS(SQL Server),以便它可以快速從 SQL 服務器返回 500 項?

  2. 是否有可能在沒有任何代碼或現有架構更改的情況下實現這一點(從 .net 到 SQL 結束)?

  3. 我應該嘗試哪些不同的方法來提高這種性能?

  4. 只讀副本的定價詳情是什么?

注意:應用程序既可以讀取也可以寫入。 而且,我更關心這個特殊的 GET API 調用。

謝謝。

有什么方法可以將我的 GET 請求分發到 RDS(SQL Server),以便它可以快速從 SQL 服務器返回 500 項?

  • 您將需要在您的應用程序中有一個路由器,它將請求路由到只讀副本(可以是很多)。
  • 您可以為該用例提供具有增強容量的不同實例類型的只讀副本。
  • 您可以嘗試 memory 緩存,它可以減少響應時間並可以將讀取工作負載卸載到只讀副本。

是否有可能在沒有任何代碼或現有架構更改的情況下實現這一點(從 .net 到 SQL 結束)?

  • 根據文檔,“應用程序可以連接到只讀副本,就像連接到任何數據庫實例一樣。” 這意味着您的應用程序需要額外的修改來支持用例。

我應該嘗試哪些不同的方法來提高這種性能?

  • memory 緩存和具有增強讀取能力的實例類型(同上建議)

只讀副本的定價詳情是什么?

  • 這取決於您提供的實例類型。

在此處輸入圖像描述

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM