微服务设计 [英] Microservices design

查看:101
本文介绍了微服务设计的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

您好,


首先,我还没有使用这些论坛很长时间,所以我希望我在正确的部分发布这个:)


我正在考虑将项目(运行相同代码的多个网站)迁移到带有mvc web界面的微服务中。

因为我们有大约80-90个客户运行相同的ASP .NET webforms网站(网站项目,而不是Web应用程序项目!),每个网站都有自己的IIS实例和应用程序池。所以部署成了一个地狱。

将整个系统迁移到多租户微服务+多租户MVC网站似乎是最好的解决方案。


想法是迁移部分应用程序进入微服务并修改现有应用程序以使用微服务作为联机,以避免必须立即重写整个应用程序。

目前我正在使用微服务和DevOps CI / CD试着找到最好的方法。


在我的测试项目中,我在一个解决方案中有多个微服务。设置Azure DevOps CI / CD管道,以便系统在提交时构建和部署,但似乎每次微小的更改,所有微服务都会重建和重新部署。

每个微服务都在一个单独的git存储库是避免这种情况的唯一方法吗?


当我们重写部分应用程序时,我们想要托管微服务内部部署服务器(docker-swarm)一旦整个应用程序迁移,将所有内容移动到azure的想法是由于当前托管
成本之上的azure sql server的成本,而我们无法一次移动所有内容。

我们是否已经开始使用Azure容器注册表在本地服务器上部署容器,使用内部部署服务器上的DevOps代理?


在大多数指南中/教程我看到应该使用消息总线更新某些数据,如股票。

如果物品被出售,篮子/支付服务发布消息和目录s会发生什么服务总线是否足够聪明,知道一旦它再次出现它仍然应该将消息传递给目录服务,或者这会导致错误的信息目录?

解决方案

嗨兰迪,


欢迎来到MSDN论坛。


根据描述,似乎这个问题是关于Azure DevOps的,因为我们的论坛是讨论VS IDE,请重定向到这个适当的论坛:
https://stackoverflow.com/questions/tagged/devops 并使用标记创建新问题' DevOps'寻求更专业的支持,感谢您的理解。



祝你好运,


萨拉


Hello,

First of all, i havent used these forums for a long time, so i hope i post this in the correct section :)

I'm looking into migrate a project (multiple websites running the same code) into microservices with mvc web interface.
As we have about 80-90 customers with running the same ASP.NET webforms website (website project, not web application project!), of which each has it's own IIS instance and application pool. So deployment became a hell.
Migrate the entire system to multitenant microservices + multitenant MVC website seems the best solution.

The idea is to migrate parts of the application into microservices and modify the existing application to use the microservices as the become online, to avoid having to rewrite the entire application at once.
Currently i'm playing around with the DevOps CI/CD using microservices and try to find the best way.

In my test project i have multiple microservices in a single solution. The Azure DevOps CI/CD pipeline is set so that the system build and deploy on commits, but it seems for each tiny change, all microservices are rebuild and redeployed.
Is having each microservice in a separated git repository the only way to avoid this?

As we rewrite parts of the application, we want to host the microservices on-premise server (docker-swarm) with the idea of moving everything to azure once the entire application is migrated, due to cost of azure sql server on top of the current hosting costs while we can't move everything at once.
Can we already start using Azure Container Registry to deploy the containers on the on-premise server, using DevOps agents on the on-premise server?

In most guides/tutorials i see that certain data like stock should be updated using the message bus.
What will happend if an item is sold, the basket/payment service publish a message and the catalog service is down at this moment?
Is the service bus smart enough to know that it should still deliver the message to the catalog service once it come up again or does this cause incorrect info on the catalog?

解决方案

Hi Randy,

Welcome to the MSDN forum.

According to the description, it seems this issue is about the Azure DevOps and since our forum is to discuss the VS IDE, please redirect to this appropriate forum: https://stackoverflow.com/questions/tagged/devops and create a new question with tag 'DevOps' to seek for a more professional support, thank you for your understanding.

Best regards,

Sara


这篇关于微服务设计的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆