高并发设计必须学的知识点有哪些?
24-05-24
slbcun
1196℃
0
对于单个服务或者单个接口,我们学习了在 Node.js 中要着重注意的 5 个高性能点。
主线程避阻塞,特别是一些复杂 CPU 密集计算型,最好的方式是交由其他进程处理,减少当前服务进程的阻塞;
多进程 cluster 模式的应用,充分利用多核服务器,能够在单台机器启用多个进程进行负载均衡,提升服务的稳定性;
在 I/O 方面要注重缓存的应用,本地缓存优先、其次共享内存、最后再是数据库(能用本地缓存的尽量用,不能用本地缓存的考虑共享内存,如果共享内存也不行,那么就需要使用数据库,而数据库可以优先考虑 MongoDB 内存查询效率更高的数据库,最后再考虑 MySQL,如果遇到必须查询或者写 MySQL 时,可以用延迟队列方式);
过载保护策略,提升服务的稳定性,在服务过载时,保住部分用户的请求链路,以免影响所有用户;
工具自动化,单接口单服务性能保证,在上线前至少保证代码没有性能异常问题。
以上是我们之前学习的一部分知识,其中会涉及应用细节,比如在缓存方面我们不仅仅要考虑缓存数据,还应该考虑存储过期的问题;又比如过载保护,什么样的过载参数适合我们当前服务,这些都需要你进行实践应用,去沉淀和总结。