同步和异步

同步

举个例子 同步过程 假设你有一堆工作 看书 看电视 洗澡 打游戏 你通过计划决定先洗澡 但是的室友也在洗澡 于是你选择等待他10min 在这10min钟内 你什么都不做 就干等着 可以说你的计划就是同步的 你阻塞了!

异步

还是上面一个例子 你还是选择先洗澡 于是发现室友也在洗澡 于是你敲门 告诉他 叫他洗完澡通知你去洗 你转而去做其他的事情 可以说洗澡对于你来说是异步的 你不会被洗澡的工作阻塞

异步的其他例子 为了避免短时间大量的数据库操作 使用缓存机制 消息队列 然后在慢慢写入数据库 保证数据的最终一致性 虽然数据的写入时间没有变快 但是保证了用户可以快速响应 这也就是为什么使用缓存的目的——保证速度匹配 ! 用户输入完http url 后 就可以关闭浏览器 去做别的事 如果没有使用异步 那这个操作就是同步的 用户必须排队

但是对弈银行的转账操作等 这些需要多次和用户进行确认的工作 可以使用同步