同步和异步的区别
同步是程序从上往下执行,异步是新开启一个分支,相互不会影响。
站在Http协议上分析同步与异步区别:
我们的Http协议请求默认情况下同步形式调用,如果调用过程非常耗时的情况下 客户端等待时间就非常长, 这种形式我们可以理解阻塞式;
解决办法:耗时的代码我们可以使用多线程或者MQ实现处理,但是不能立马获取结果; 客户端可以主动查询。
异步可以用多线程或者是mq
image.png
image.png
阻塞与非阻塞的区别
阻塞:如果我没有获取到结果的情况下,当前线程从运行状态切换为阻塞状态 内核角度分析:用户空间切换到内核空间
非阻塞:如果我没有获取到结果的情况下,当前的线程不会阻塞。
image.png