簡體   English   中英

涉及SQL時,使用Amazon EC2自動擴展

[英]Auto-scaling with Amazon EC2 when SQL is involved

我正在構建一個白板Web應用程序,其客戶端的自包含“房間”運行在Amazon EC2實例(目前只有一個)。 命令通過websockets發送到PHP服務器,PHP服務器將所有命令存儲在SQL數據庫中。

到目前為止,我一直在使用Google Cloud SQL。 我的計划是學習如何使用EC2進行擴展,並讓所有實例都使用相同的遠程數據庫。 我已經知道,由於遠程SQL服務器的200毫秒寫入延遲與本地SQL服務器的0.5毫秒寫入延遲,這將無法工作。 每次命令到達時,服務器都會寫入。

我是可擴展性和分布式系統的新手。 我的直覺告訴我,如果我的EC2和RDS實例位於同一區域,或者在EC2實例上本地使用SQL,我需要使用Amazon RDS並希望毫秒級延遲。 我傾向於后者。 這是我的問題:EC2很有彈性 當我需要擺脫一個實例時會發生什么?

我現在能夠想到的是以某種方式將每個EC2實例的SQL數據復制到主實例(甚至可能是Google Cloud SQL!)。 換句話說,每個“房間”的所有讀/寫都在本地發生,並最終復制到主服務器以進行長期存儲。 如果一周后重新打開“房間”,則另一個EC2實例可以從主服務器獲取數據,在本地使用它,並在銷毀之前復制更改。

我的方法聽起來是否正確 - 在這里復制正確的概念? 如果是這樣,那么我正在嘗試做的事情已經存在多少支持? 也就是說,我是否需要設置一個管理EC2實例的主服務器並手動分發/收集SQL數據(100%自定義實現),或者是否存在SQL的現有庫/機制,甚至可能是EC2實例復制/管理? 如果我的方法是錯誤的,那么更好的方法是什么? 這是我不知道自己要研究什么的時候之一。 謝謝!

我同意user02525或許看看使用Elasticache redis,聽起來更符合你正在做的事情。

暫無
暫無

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

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