我对微服务很陌生,我听说过微服务底盘,但我在网上找不到足够的资源。我想知道微服务底盘框架和API网关之间有什么区别,因为据我所知,底盘框架解决了交叉关心的问题,其中一些问题已经由API网关解决了。
对于.net的微服务底盘框架有什么建议吗?
发布于 2018-11-04 09:24:51
横切关注点:在任何企业应用程序中,除了主要的业务逻辑之外,还有许多问题需要处理。..。这些关注点包括日志记录、事务处理、性能监视、安全性等。这些关注点被称为应用程序的横切关注点。
为了澄清这一点,这意味着几乎所有的微观服务都有一些共同的关切。这些问题和如何管理他们是底盘。微型服务底盘就是实现这些横切关注点的方式之一。构建可重用的底盘可以帮助节省时间,加强团队之间的一致性,并确保每个服务共享相同的操作特性。
API网关在微服务中还有其他作用。当每个服务在发现服务中注册后,API网关必须使用发现服务在客户端和每个服务之间建立连接。
参见此示例:

上面的例子来自Spring实现(Java)。
想象一下当每个服务位于不同的端口和地址时的情况。然后,客户端必须知道每个服务的所有地址和端口,以便能够调用它们。如果他们中的任何一个改变了呢?一切都被毁了。
为了解决这个问题,每个服务都在一个发现服务器上注册自己(在本例中是Eureka)。然后,API -网关必须使用该发现服务,并为每个服务创建API地址。例如,它可以将模式:/{micro_service_name}/**中的任何请求转发给相关的注册服务。这意味着如果order-service有/orders/get/{order-id} API,那么客户端必须使用/order-service/orders/get/{order-id}来访问订单。API-网关使用发现服务器将请求重定向到匹配服务。
发布于 2019-01-06 16:03:49
微服务体系结构中的API网关主要与服务发现有关,这意味着为了知道从哪个端点调用哪个服务,一个简单但不充分的方法是使用API网关,将所有服务的数据库与其地址和端口进行简单的比较,并将其与容器化技术(如Docker )进行比较。下面是一组关于代码项目中的微服务的文章,如果你愿意的话,你可以阅读和评论你的问题。
https://www.codeproject.com/Articles/1264113/Dive-into-Microservices-Architecture-Part-I https://www.codeproject.com/Articles/1264113/Dive-into-Microservices-Architecture-Part-II https://www.codeproject.com/Articles/1264113/Dive-into-Microservices-Architecture-Part-III
https://stackoverflow.com/questions/53120723
复制相似问题