解释场景:我们目前的任务是创建一个Web服务架构和设计方法来处理企业级业务。想象一下,我们只有一个集中式网站系统,在我们的一个数据库中有超过数千个页面和 300 多个表格(总共超过 500 dbo)。 因此,我们正在考虑将这种结构模块化,并将其应用于多个设备(多平台)的Web服务方法。 我已经详细阅读了其他问题:
作为 Web 服务的数据访问层 -- 这是个好主意吗?
网络服务或网络服务
每个模块一个 Web 服务,还是整个一个 Web 服务?
等等。但我需要在这个决定中保持准确,因为这是一个企业级问题。因此,我需要根据以下一些软件"-ilities"主题来比较这两个选项:
1-可扩展性
2-可维护性
3-安全**
4-可扩展性
最后但同样重要的是:性能**(这是至关重要的)
如果有人在真实事实和以前的经验方面有更好的想法,我愿意接受这种方法以外的建议。我也想听听详细的解释(我不介意阅读太多)
我建议使用微服务架构。它更接近于"每个模块一个 Web 服务"解决方案。如果你有一个可靠的CI过程,微服务将简化你的开发过程。 此体系结构具有可扩展性、可维护性、安全性、可扩展性和高性能。但是,所有这些都应内置到可能为企业级解决方案构建的框架中。现在的问题是如何实施?这取决于平台的选择。
Microsoft Azure:https://learn.microsoft.com/en-us/azure/service-fabric/service-fabric-overview-microservices
亚马逊云科技:https://aws-de-media.s3.amazonaws.com/images/AWS_Summit_Berlin_2016/sessions/pushing_the_boundaries_1300_microservices_on_aws.pdf
我试图在这里保持简短,因为我不知道您打算在哪个平台上实现您的解决方案,并且您可以阅读很多关于微服务的信息,只是谷歌微服务。如果您对实施有具体问题,请告诉我我可以提供帮助。