LVS三种负载均衡方式介绍和比较

LVS简介

LVS (Linux Virtual Server)是一种集群(Cluster)技术,采用IP负载均衡技术和基于内容请求分发技术。调度器具有很好的吞吐率,将请求均衡地转移到不同的服务器上执行,且调度器自动屏蔽掉服务器的故障,从而将一组服务器构成一个高性能的、高可用的虚拟服务器。整个服务器集群的结构对客户是透明的,而且无需修改客户端和服务器端的程序。

阅读全文

在CentOS 5.x中部署LVS-DR模式

LVS是Linux Virtual Server的简写,即Linux虚拟服务器,是一个虚拟的服务器集群系统。

在下面的案例中,我们用了3台主机,IP地址分别为:

192.168.1.100
192.168.1.101
192.168.1.102

其中,192.168.1.100将安装LVS做为负载均衡器来分发请求,另外2台做为真实提供服务的主机,以DR模式进行部署。

阅读全文

百万级访问量网站的技术准备工作摘录

一、开发语言

一般来说,技术人员(程序员)都是根据自己技术背景选择自己最熟悉的语言,不过不可能永远是一个人写程序,所以在语言的选择上还要是要费些心思。首先明确一点,无论用什么语言,最终代码质量是看管理,因此我们从前期开发成本分析。现在国内流行的适用于网站的语言,大概有java、php、.net、python、ruby这五大阵营。python和ruby因为在国内流行的比较晚,现在人员还是相对难招一些。.net平台的人相对多,但是到后期需要解决性能问题时,对人员技能的要求比较高。剩余的java、php用人可以说是最多的。java和php无法从语言层面做比较,但对于初期,应用几乎都是靠前端支撑的网站来说,php入门简单、编写快速,优势相对大一点。至于后端例如行为分析、银行接口、异步消息处理等,等真正需要时,就要根据不同业务需求来选择不同语言了。

阅读全文

Nginx构建负载均衡集群的配置方法

假设我们有3台服务器,IP地址分别为:
192.168.0.1 / 192.168.0.2 / 192.168.0.3

我们将192.168.0.1作为前端主服务器,192.168.0.2和192.168.0.3作为负载均衡的后端服务器。

下面是192.168.0.1主服务器上Nginx的配置方法:
worker_processes 1;

events {
worker_connections 1024;
}

http {
upstream serverlist {
server 192.168.0.2:8000 weight=3 max_fails=3 fail_timeout=20s;
server 192.168.0.3:8000 weight=7 max_fails=3 fail_timeout=20s;
}

server {
listen 80;
server_name www.sunbloger.com;
location / {
proxy_pass         http://serverlist;
proxy_set_header   HOST             $host;
proxy_set_header   X-Real-IP        $remote_addr;
proxy_set_header   X-Forwarded-For  $proxy_add_x_forwarded_for;
}
}
}

配置说明:
upstream serverlist{}可以理解为一个服务器池,通过proxy_pass http://serverlist命令,可将访问www.sunbloger.com的请求分配给位于池内的服务器192.168.0.2和192.168.0.3。
weight=3和weight=7为服务器的权重,权重越高,被分配到的请求就越多。
max_fails=3和fail_timeout=20s的含义是,当请求失败次数达到3次时,这个服务器将被暂时下线20秒。

技巧:主服务器可负责静态内容,将所有php的请求分配到后端服务器处理。

转载请注明:阳光部落原创,更多内容请访问http://www.sunbloger.com/