面试总结之高并发
1、什么是高并发
通常是指通过设计保证系统能够同时并行处理很多请求
2、高并发的一些指标
响应时间
系统对请求作出响应的时间
吞吐量
单位时间内处理的请求的数量
每秒查询率QPS
每秒的请求数量
并发用户数
同时承载正常使用系统功能的用户数量
3、如何提升系统的并发能力
垂直扩展
提升单机处理能力
1、增强单机硬件性能,这个就不过多说了,都懂得
2、提升单机架构性能
(1)、通过缓存来较少IO操作
(2)、通过异步增加单服务的吞吐量
(3)、使用无锁的数据结构减少响应的时间
水平扩展
#### 加服务器
4、处理高并发的几种方式
1、HTML页面静态化
2、图片服务器分离
FastDFS轻量级的分布式文件存储系统
3、使用缓存
4、数据库建立集群、库表散列
5、使用负载均衡的方法
6、镜像
7、CDN内容分发网络
5、Redis解决高可用
配置主从复制,配置哨兵
注意点
1、至少要三个sentinel以上
2、sentinel实例进程的,可以要分散运行在不同的机器上
3、redis集群,内部已经集成了哨兵机制保证高可用
redis提供的哨兵是用来看护redis实例进程的,可以自动进行故障转移
哨兵的特点
1、监控主数据库和从数据库是否正常运行
2、主数据库出现故障时,可以自动将从数据转换为主数据库,实现自动切换
3、哨兵有投票机制