前端BFF服务集群架构 (1)的副本.png

Nignx

Nginx,是一个高性能的HTTP和反向代理web服务器。反向代理到node集群,在集群间做负载均衡,分发到相对空闲的服务器。

PM2

进程守护工具。在具体的一个多核Server中一般有多个进程,PM2的作用有:

  • 内建负载均衡(使用Node cluster 集群模块)
  • 后台运行
  • 0秒停机重载,我理解大概意思是维护升级的时候不需要停机
    等等;

    varnish / squid

    主要工作:http缓存
    Varnish 是一款高性能且开源的反向代理服务器和 HTTP 加速器,其采用全新的软件体系机构,和现在的硬件体系紧密配合,与传统的squid 相比,varnish 具有性能更高、速度更快、管理更加方便等诸多优点,很多大型的网站都开始尝试使用 varnish 来替换 squid,这些都促进varnish 迅速发展起来。
    varnish参考了解
    heartbeat心跳检测试,目的是为了保持链接。

    JavaWeb,and so on …

    处理庞大的后端业务逻辑。

    DB

    要读写分离:

  • 数据库的“写”(写10000条数据到oracle可能要3分钟)操作是比较耗时的;

  • 数据库的“读”(从oracle读10000条数据可能只要5秒钟);
    所以读写分离,解决的是,数据库的写入,影响了查询的效率;
    (了解读写分离)[https://blog.csdn.net/cyan_grey/article/details/79528842]

    Redis

    Redis是一款内存高速缓存数据库。
    基于内存,所以存储效率比较高,比较常用的场景,一个是会话存储,这个要在BFF层消费了;另一个是数据库缓存;
    什么是Redis
    Redis能做什么?