微服务中服务之间数据校验
微服务之间服务的数据校验,是否每次处理都需要校验还是可以容忍一定的数据错误?
描述
服务 A 用户模块
服务 B 评论模块
问题描述
服务B 在创建 评论的时候,需要用户到用户ID 用户名 以及其他的一些基本用户信息, 这些信息都是通过前台作为参数传入后台, 不过是否需要在创建时通过用户ID 到服务A 中校验此用户是否存在??? 还是直接插入数据库 不加校验? 这样就会造成可能当前这个用户在系统中并不存在, 但是却可以创建评论,造成评论系统有错数据 ? 这种情况如何处理??????
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
当你写一系列函数的时候,大概是不会每一个函数都去全部校验参数是否是符合这个函数的上下文的,因为这个函数可以认为从上一个函数传过来是经过了上一个函数的校验的。
服务B是否需要校验全部参数,取决于服务B是否是内部服务还是外部服务,是否直接和客户端打交道。如果是,那么肯定要完善的校验;如果不是,那么取决于上一个服务是否做了完善的校验,以及是否有多个业务系统需要使用本服务。