人工智能 人脸识别 如何开展微服务

当项目确定好拆分的方向,是按照功能拆分,还是按照解耦来进行拆分的,这时候就会明白,需要实现的某个微服务的具体细节部分,比如说,现在需要实现一个消费捉拍机捉取到的图片进行入库的操作,这时候可能考虑到实际生产中的并发的问题,以及调用算法库进行人脸特征识别的过程,如果考虑到并发的消费问题,我推荐使用rabbitMQ来实现服务隔离以及错峰的功能,这是为了能让服务在rabbitMQ的幂等性下得到有效的缓冲对数据库的压力,而算法库这边就需要通过feign进行对服务接口的调用。因此大致的逻辑就出现了。从API到SQL最后到应用的解耦编码,功能的细分。
所以这里需要跟前端交接好需要提供的接口是什么处理的数据是哪些json,是否需要异步来处理,是否需要考虑高并发的情况,是否支持高可用的性能,这样沟通好就可以进行开发。业务是其次,真正体现价值的是对高并发场景下的处理,比如这里使用到的rabbitMQ就是为了这种高并发场景下的错峰而使用,在后续的演进的过程中,对于redis的使用肯定也是会单独的抽象成一个组件来提供给各个微服务进行调用,作为一个单独的基础层组件来提供缓存的功能。
这就是大型的分布式系统使用微服务后期成熟的体现。由中间件抽象成单独的组件作为基础组件来提供服务。

猜你喜欢

转载自blog.csdn.net/weixin_30947631/article/details/84996179