使用异步提升系统性能
异步是一种编程思想,使用异步模式设计的程序可以显著减少线程等待,从而在搞吞吐量的场景中,显著提升整体性能。
同步实现的性能瓶颈
采用同步实现的方式,整个服务器的所有线程大部分时间都没有在工作,而是都在等待。
qps = 线程数 * ( 1/响应时间)
如果我们能减少或者避免这种无意义的等待,就可以提高服务的吞吐能力。
异步实现解决等待问题
异步化实现后,程序不再是按同步顺序执行,改为异步调用和回调的机制。
小结
异步思想就是,当我们要执行比较耗时的操作的时候,不去等待操作结束,而是给这个操作一个命令:“当操作完成后,接下来去执行什么。”
异步性能虽好,实现的复杂大要大很多,代码的可读性和可维护性也会显著下降,所以它适合类似像消息队列这种业务简单,需要高吞吐量的场景下,或者必须长时间等待资源的地方。如果系统业务比较复杂,用更好理解的同步逻辑组织代码是更明智的选择
欢迎来到这里!
我们正在构建一个小众社区,大家在这里相互信任,以平等 • 自由 • 奔放的价值观进行分享交流。最终,希望大家能够找到与自己志同道合的伙伴,共同成长。
注册 关于