Amazon web services 针对AWS和Azure for pass服务(如服务总线、blob、SQS/SNS等)的应用程序的单一代码库
我有多个应用程序部署在Microsoft Azure中。这些应用程序使用Microsoft提供的各种库与Azure Servicebus(主题和队列)、Blob等服务进行交互。新的要求是这些应用程序应在AWS上以及Azure上运行。由于服务总线,blob非常特定于Azure。它们在AWS中不可用。AWS具有等效的服务,如SNS/SQS、S3 bucket等。AWS具有不同的SDK/库,用于与这些服务交互 这是一个问题,因为我必须维护两个不同版本的应用程序,一个用于Azure,另一个用于AWS。这很难维持,我想避免Amazon web services 针对AWS和Azure for pass服务(如服务总线、blob、SQS/SNS等)的应用程序的单一代码库,amazon-web-services,azure,amazon-s3,cloud,servicebus,Amazon Web Services,Azure,Amazon S3,Cloud,Servicebus,我有多个应用程序部署在Microsoft Azure中。这些应用程序使用Microsoft提供的各种库与Azure Servicebus(主题和队列)、Blob等服务进行交互。新的要求是这些应用程序应在AWS上以及Azure上运行。由于服务总线,blob非常特定于Azure。它们在AWS中不可用。AWS具有等效的服务,如SNS/SQS、S3 bucket等。AWS具有不同的SDK/库,用于与这些服务交互 这是一个问题,因为我必须维护两个不同版本的应用程序,一个用于Azure,另一个用于AWS。这
是否有任何框架/模式/方法可以将特定于供应商的详细信息抽象为服务总线或blob,并使用单个代码库与AWS和Azure一起工作,尽可能地进行Dockerize并创建一个核心项目,在该项目中安装所有Azure和AWS nuget包,然后创建一个抽象层以在核心中使用方法连接到Azure或AWS服务的项目
您可以使用Azure和AWS的两个包创建此核心层,并根据当前配置(或部署的云)使用Azure包或AWS包中的方法。如果您希望使用单个代码库以Azure、AWS或任何其他云为目标,有2-3种方法