Linux——高流量 高并发(访问场景) 高可用(架构要求)

高并发通用设计逻辑: 定位单点,拆分问题

架构调整的顺序:

  1. 动静分离

// 没有实现动静分离

// 静态请求 交给 nginx或者 httpd 这种对于静态资源处理效率更高的服务,动态请求 交给php-fpm 服务来处理

使用云服务提供商 (阿里云 / 华为云等属于公有云服务商)提供的CDN 服务,将静态资源部署到CDN 中托管,也可以实现动静分离

  1. 缓存技术

varnish / squid / nginx等较为知名的缓存加速软件,进一步加速网站响应速度

加入缓存之后,因为缓存服务一般将数据缓存内存中,数据处理的速度更快,因为数据缓存在内存中,所以也不需要在文件系统中定位请求资源的路径,省去与文件系统和磁盘读写的时间。

设置数据库交互缓存。redis提供数据库的读请求缓存。

  1. 队列(消息队列) 流量削峰平谷 服务解耦(微服务)
  2. 异步处理 服务的事务处理模型
  3. 服务隔离 服务隔离后,就属于分布式部署
    1. 物理隔离 // 分离到不同的物理服务器中
    2. 逻辑隔离 // 虚拟化技术 以及容器技术(计算资源面对高并发时的处理逻辑)
  4. 水平扩展
    1. 负载均衡
    2. 集群高可用
    3. 数据库的水平扩展
      • 读写分离
      • 负载均衡调度
      • 数据一致性
      • 分表分库
      • 异地数据库部署方案 (根据地区部署数据库,将该地区的热点数据保存到地区中)
  5. 监控访问数据
    1. 平均响应时间
    2. QPS
    3. 慢查询日志
    4. 记录客户端分布
  6. 通过管理手段来预估可能的并发数量
    1. 临时促销活动等
    2. 弹性调度 临时资源的租用,临时活动结束后将结束租用。

基础设施高并发

目的: 提高基础硬件使用率主要是cpu 避免软件性能瓶颈

通过隔离软件运行环境实现,主要是虚拟化技术:

  1. 硬件虚拟化 vmware 等
  2. 指令集虚拟化 qemu
  3. 运行库虚拟化 docker等容器技术
    1. 容器编排平台K8S
相关推荐
云计算运维丁丁5 分钟前
ceph集群架构阐述
ceph·架构
郭涤生5 分钟前
第五章:架构安全性_《凤凰架构:构建可靠的大型分布式系统》
笔记·架构·系统架构
JhonKI12 分钟前
【Linux】线程池详解及基本实现
linux·运维·服务器
LoveLinuxShell1 小时前
推荐Linux命令行运维工具: WowKey--实现自动化批量化标准化Linux设备运维
linux·运维·shell·自动化批量化标准化
喵叔哟1 小时前
13.【.NET 8 实战--孢子记账--从单体到微服务--转向微服务】--微服务基础工具与技术--Refit
微服务·架构·.net
山海不说话1 小时前
从零搭建微服务项目Pro(第7-1章——分布式雪花算法)
分布式·算法·spring·微服务·架构
Fanmeang1 小时前
DHCP Snooping各种场景实验案例
运维·网络·安全·华为·交换机·dhcp·dhcp snooping
郭涤生1 小时前
第九章:可靠通信_《凤凰架构:构建可靠的大型分布式系统》
笔记·分布式·架构·系统架构
是个普通苗2 小时前
Centos 8 安装教程(新手版)
linux·运维·centos
钡铼技术物联网关2 小时前
ARM架构+CODESYS:解锁嵌入式边缘计算的实时控制新范式
大数据·linux·arm开发·人工智能·边缘计算