3-1-企业级架构拓展思路及集群负载均衡场景介绍

单主机不仅受限于硬件性能也受限于并发模型,select()1024
scale up向上扩展,用性能更好的主机代替性能略差的主机
scale out向外扩展,多加主机,分割任务,将任务分散处理,这叫做负载均衡集群load blancing cluster,简称为LB集群
第一步:分散用户请求
第二步:追踪用户请求状态信息,这是一个问题
第三步:用户上传文件的路径在哪?使用共享存储或者专用户专机专用存储(其他用户就看不见本用户上传的文件了),要有两种共享存储,一种存图片,一种存数据(数据库)

补充知识:
数据分为:结构化的、半结构化的、非结构化的
共享存储包括:nas nfs cifs
结构化的并且要求长度一致的存储在关系型数据库并支持事务的存储引擎上,marydb indodb,如果是存储文件的图片音乐,存储在文件系统结构上
半结构化的放在nosql中或文件系统之上比如jason格式的数据通常被组织成doucumentstore,称为文档存储

用户活动状态不会产生网页信息,而且是临时的,一般而言,不应该存储在服务器上。
cookie:通过cookie机制识别用户身份,随机唯一的id保存在浏览器的缓存路径下,并且有适用范围和有效期
胖fat cookie:用户每次访问的内容都保存在cookie中,很危险(客户端的安全软件有很高的权限可以分析),基于竞争机制(京东不希望淘宝分析)会保存在服务端,在服务端分配一段基于cookie的空间,用来记录用户访问了什么,多长时间,这些记录通常叫session

有状态的追踪用户:用户的浏览记录保存在服务器上,但是集群服务器怎么知道其中一台服务器保存的用户内容呢?
1、绑定用户,专机专用,根据网络层的识别(ip地址)或者根据cookie来识别---这叫做会话黏性,缺点:服务器挂了
2、session复制集群,每台服务器都会存有全部的session,并同步更新。缺点:数量大以及session的更新(io占用)
3、共享存储,session保存在内存存储服务器(基于内存)中---也叫做session server(专门保存session)缺点:每一个节点都事关全局
单点故障所在single point of failure:SPoF,为了解决一般做冗余
谁来分散用户请求:负载均衡器或分发器或调度器,既然有调度,就需要有调度机制,负载均衡器采用主备机制(告诉别人自己活着,发送心跳信息),叫做故障转移或失效转移(failover)failback(转移回来),这两台调度器服务器也叫做高可用集群(high availability cluster----HA集群),抢回来之后还要防止被抢回去
调度机制:轮询(需要做权重,把服务器虚拟出来(调度的虚拟)一台服务器相当于几台服务器3:2)
最少连接,
视频中提到dns的轮询,不适合使用这种方式

视频中的课件:---负载均衡集群,高可用集群,高性能集群(超算集群),分布式集群
Linux Cluster:
Cluster:计算机集合,为解决某个特定问题组合起来形成的单个系统;
Linux Cluster类型:
LB:load balancing,负载均衡;
HA:High availiabity,高可用
A=MTBF/(MTBF+MTTR)---系统平均无故障时间,系统平均修复时间
(0,1):90%,95%,99%,99.5%,99.9%,99.99%,99.999%,99.9999%
HP:high performace,高性能,把计算量分割出去,组合高性能硬件
www.top500.org
分布式系统:
分布式存储:元数据服务器,
分布式计算
系统扩展方式:
Scale UP:向上扩展
Scale Out:向外扩展
cluster
LB Cluster:
LB Cluster的实现:
硬件:
F5 Big-IP
Citrix Netscaler
A10 A10
软件:
lvs:Linux Virtual Server---阿里章文嵩---tcp
nginx---应用层(模拟工作在四层)
haproxy---应用层(模拟工作在四层)
ats:apache traffic server---雅虎开发---应用层(模拟工作在四层)
perlbal---应用层(模拟工作在四层)
pound---应用层(模拟工作在四层)
基于工作的协议层次划分:---什么层的调度器
传输层(通用):(D PORT)
lvs
nginx:(stream)
haproxy:(mode tcp)
应用层(专用):(自定义的请求模型类型)
proxy server:
http:nginx(http mode),httpd,haproxy(mode http),...
fastcgi:nginx,httpd,...
mysql:mysql-proxy,...PROXYSQL
站点指标:
PV:Page View---页面浏览量
UV:Unique Vistor---唯一的可独立标识的访问者
IP:
会话保持:
(1)session sticky会话绑定
source ip
cookie
(2)session replication:复制集群
session cluster
(3)session server服务器

分布式存储:类似于负载均衡,但是在负载均衡器上建立全局索引,但是会出现新的问题,服务器宕机,所以要做冗余(文件系统级别的不是服务器级别的,一个文件存两份),负载均衡器叫元数据服务器(文件的大小路径属性),也叫名称节点,存储的叫数据节点
分布式存储中小文件好说,可以很容易的分散存储,但如果是高清电影,就不好存储了,并发观看更不行了

原文地址:https://blog.51cto.com/13852573/2364124

时间: 2024-08-02 10:36:37

3-1-企业级架构拓展思路及集群负载均衡场景介绍的相关文章

Linux集群-负载均衡lvs介绍及lvs-nat实现https

一.Linux集群 Linux集群系统保护集群管理器和集群节点两部分组成.集群节点简称为节点.服务器或服务器节点,是用来提供资源,进行集群的实际工作.一般来说,它必须进行配置后才能称为集群的一部分,同时也要运行集群用到的应用程序.Linux集群管理器再将各节点捆绑在一起,它用于将任务分解到所有的节点.简单的说,就是按照某种方式把服务器连起来来完成一种特定的任务,提高服务器的响应能力. scale on 在单台主机上提高服务器性能, scale out 增加服务器的数量来提高,负载均衡的集群. 二

.net core 跨平台开发 微服务架构 基于Nginx反向代理 服务集群负载均衡

1.概述 反向代理(Reverse Proxy)方式是指以代理服务器来接受internet上的连接请求,然后将请求转发给内部网络上的服务器,并将从服务器上得到的结果返回给internet上请求连接的客户端,此时代理服务器对外就表现为一个服务器. 服务器集群就是指将很多服务器集中起来一起进行同一种服务,在客户端看来就像是只有一个服务器.集群可以利用多个计算机进行并行计算从而获得很高的计算速度,也可以用多个计算机做备份,从而使得任何一个机器坏了整个系统还是能正常运行. 负载均衡,英文名称为Load

Nginx+tomcat配置集群负载均衡

转自:http://blog.csdn.net/bruce_6/article/details/38228299 相信很多人都听过nginx,这个小巧的东西慢慢地在吞食apache和IIS的份额.那究竟它有什么作用呢?可能很多人未必了解. 说到反向代理,可能很多人都听说,但具体什么是反向代理,很多人估计就不清楚了.摘一段百度百科上的描述: 反向代理(Reverse Proxy)方式是指以代理服务器来接受internet上的连接请求,然后将请求转发给内部网络上的服务器,并将从服务器上得到的结果返回

Apache+Tomcat +mod_proxy集群负载均衡及session

  序言: 在玩Apache+Tomcat +mod_jk集群负载均衡及session的时候发现,还有一种方式可以实现,就是网上各位大牛们说的mod_proxy反向代理. 实在弄的我的知识细胞洋洋.实践后打个报告,给自己.. 环境说明: 操作系统:win7   64位 Javajdk: 1.7 Apache:httpd-2.2.25-win32-x86-no_ssl.msi    (本地安装路径:D:\Program Files (x86)\Apache2.2\)Tomcat: 7.0.42 

一种改进的red5集群方案的应用、基于Red5服务器集群负载均衡调度算法研究

转自: 一种改进的red5集群方案的应用: http://wenku.baidu.com/link?url=jYQ1wNwHVBqJ-5XCYq0PRligp6Y5q6BYXyISUsF56My8DP8dc9CZ4pZvpPz1abxJn8fojMrL0IyfmMHStpvkotqC1RWlRMGnzVL1X4IPOa_ 基于Red5服务器集群负载均衡调度算法研究 http://www.doc88.com/p-0456863461331.html

转】Nginx+tomcat配置集群负载均衡

原博文出自于:http://blog.csdn.net/bruce_6/article/details/38228299         感谢! 相信很多人都听过nginx,这个小巧的东西慢慢地在吞食apache和IIS的份额.那究竟它有什么作用呢?可能很多人未必了解. 说到反向代理,可能很多人都听说,但具体什么是反向代理,很多人估计就不清楚了.摘一段百度百科上的描述: 反向代理(Reverse Proxy)方式是指以代理服务器来接受internet上的连接请求,然后将请求转发给内部网络上的服务

运维小知识之nginx---nginx配置Jboss集群负载均衡

codyl 2016-01-26 00:53:00 浏览385 评论0 负载均衡 转自 运维小知识之nginx---nginx配置Jboss集群负载均衡-博客-云栖社区-阿里云https://yq.aliyun.com/articles/17925 运维小知识之nginx---nginx配置Jboss集群负载均衡 背景 紧接着上一篇博客<运维小知识---CentOS6.5安装nginx配置nginx sticky>安装完成之后剩下的工作就是配置了,其实如果我们想要去做负载均衡session共享

nginx+双tomcat集群负载均衡(一台机器)

nginx简介 Nginx ("engine x") 是一个高性能的 HTTP 和反向代理服务器,也是一个 IMAP/POP3/SMTP 代理服务器. Nginx 是由 Igor Sysoev 为俄罗斯访问量第二的 Rambler.ru 站点开发的,第一个公开版本0.1.0发布于2004年10月4日.其将源代码以类BSD许可证的形式发布,因它的稳定性.丰富的功能集.示例配置文件和低系统资源的消耗而闻名. 下面是采用一台机器nginx+双tomcat集群负载均衡方案.当更新项目时可以停止

Dubbo集群-负载均衡

Dubbo集群-负载均衡 你需要一个dubbo-admin的压缩包 你需要将解压包放到tomcate文件下的webapps内(修改E:\tomcat-apache\apache-tomcat-7.0.64\webapps\dubbo-admin\WEB-INF\dubbo.properties中zookeeper地址) 你需要再zookeeper服务启动的情况下,启动tomcate(tomcate/bin/startup.bar) 登录localhost:8080/dubbo-admin 访问页