簡體   English   中英

如何在多個實例中使用一個微服務的不同數據源

[英]How to use different datasource of one microservice with multi instances

我正在使用 Spring 引導開發微服務架構,我的微服務A使用 MySQL 作為主要數據源我想知道我可以創建A的實例並將該實例的數據源更改為 MongoDB 嗎?

為什么我會那樣做? 好吧,基本上我將有一個端點來處理百萬行的文件上傳,所以我希望擁有該微服務的 2 個數據源。

或者我應該將A復制到另一個微服務B並使用 MongoDb 作為數據源並創建特定的 rest api?

如果您使用 ORM(我相信您正在使用它),則必須為兩個數據庫創建一個 model,因為 MySQL 和 MongoDB 的概念不同,您有不同的注釋集。 例如,對於 MongoDB,您必須使用 @Document 而不是 @Entity。 如果只有您的服務A針對此文件上傳功能 - 您可以在一項服務中一起實現它。 如果您必須從多個服務進行上傳,或者如果對服務A功能和文件上傳功能進行單獨縮放是有意義的 - 將其設為單獨的上傳服務。 在大多數情況下,第二種方式更有吸引力,因為當您有需求更改時,它可以避免兩個服務中的服務職責分離

暫無
暫無

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

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