1)递归
这种查询方式下,服务器1收到客户机请求后,必定返回客户机一个结果,如果服务器1自身没有,服务器1会去向服务器2去请求,服务器2如果有就把结果返回给服务器1,服务器1再把结果返回给客户机。如果服务器2没有就继续向服务器3请求,服务器3有的话,服务器3返回给服务器2,服务器2再给服务器1,服务器1再给客户机。
总的一句话,就是客户机发送请求后自己只用等待结果即可,中间具体过程交给服务器实现。
2)迭代
这种查询方式下,服务器1收到客户机的请求后,如果服务器1,直接返回给客户机1,如果没有,好的,服务器1会给客户机其它服务器的地址,比如服务器2,让客户机去请求服务器2,后面的情况以此类推请求服务器3、4、5……。
总的一句话,客户机的请求需要自己挨个去查询才能得到结果,服务器没有结果时候只会给你提供其它服务器的地址,而不会帮你去请求查询,这与递归截然相反。
评论区