一个架构常识:当调用方需要关心执行结果,通常使用RPC调用。

image.png

ret = PassportService::userAuth(name, pass);switch(ret){ case(YES) : return YesHTML(); case(NO) : return NoHTML(); case(JUMP) : return 304HTML(): default : return 500HTML();}

上一篇《服务化,耦合却更加严重》提到,执行结果的处理和业务强相关,则switch case应该放在上游业务方,而不应该放到底层通用服务。

登录页面调用passport服务,会根据passport服务的返回结果,区别执行登录成功,登录失败,执行错误。调用方关注执行结果时,不宜使用MQ通讯。

image.png

使用MQ通讯,调用方

收藏 打印