文档章节

网站的大访问量与访问速度

memristor
 memristor
发布于 2014/08/27 16:06
字数 1398
阅读 124
收藏 3


网站运营

大访问量

大存储量

访问速度

服务器监控

大访问量

负载均衡(轮询)

将用户分流到不同的服务器

  1. Cisco以太网通道(多条线路,同时传输数据)


  2. windows服务器NLB(network load balance)

  3. linux lvs

    lvs三种负载均衡模式 1、lvs NAT(地址转换)技术    2、lvs ip-tun(ip隧道)技术   3、 lvs dr(直接路由)模式




  4. F5负载均衡器

成本很高,一台100万人民币

冗余技术

避免单点故障

网络线路的冗余技术

Cisco HSRP 热备份路由协议

服务器集群

大存储量

oracle

mysql负载均衡技术:主从数据库,大表变小表(分区分表)

1)主服务器和从服务器最终数据会一致

增删改用主服务器,查询用从服务器

2)mysql分表分区

分表

如果一张表数据超过1千万,查询速度慢,cpu负载很高

mysql分区

mysql集群(目的:冗余备份)

Nosql

网站加速

  1. Squid代理缓存技术

    用来做代理,将静态数据(javascript,css,flash,image)保存在缓存池中,用户访问页面直接从squid代理服务器获取静态数据。

    普通代理


  2. 页面静态化缓存


  3. Memcache

    端口11211,内存中的数据极易丢失


  4. Sphinx搜索加速

服务器监控


HTTP请求的生命周期:

用户请求->路由器->网关->域名服务器->web服务器(DNS)->web应用程序

响应是与请求相反的顺序

Apache压力测试工具  ab

ab提供在各种不同的模拟用户请求发生时有关web服务器响应的统计信息,允许我们模拟任意数量的请求web服务器上摸个特定web文档的用户,ab是默认的apache安装的一部分,能够通过模拟对特定URL的任意数量请求来对web服务器进行负载测试

一个实例:

E:\PHPnow-1.5.6\Apache-22\bin>ab -n 100 -c 10 http://localhost:81/

This is ApacheBench, Version 2.3 <$Revision: 655654 $>

Copyright 1996 Adam Twiss, Zeus Technology Ltd, http://www.zeustech.net/

Licensed to The Apache Software Foundation, http://www.apache.org/


Benchmarking localhost (be patient).....done


服务器信息

Server Software:        Apache/2.4.4

Server Hostname:        localhost

Server Port:            81


文档信息

Document Path:          /

Document Length:        52226 bytes


连接信息

Concurrency Level:      10              所进行的并行请求总数

Time taken for tests:   41.491 seconds    运行所花费的总时间

Complete requests:      100        模拟请求总数中已经完成的请求总数

Failed requests:        0                模拟请求中失败的请求总数

Write errors:           0                  使用写入数据时遇到的错误总数

Total transferred:      5262700 bytes         整个模拟响应中传输的总数据量

HTML transferred:       5222600 bytes       整个模拟响应中传输的内容正文的大小

Requests per second:    2.41 [#/sec] (mean)       每一秒支持的请求总数

Time per request:       4149.137 [ms] (mean)      每一个请求所用的时间

Time per request:       414.914 [ms] (mean, across all concurrent requests)      最小请求时间

Transfer rate:          123.87 [Kbytes/sec] received       每秒钟收到的字节数

统计信息

Connection Times (ms)

              min  mean[+/-sd] median   max

Connect:        0    0   0.6      0       3

Processing:  1756 4041 1466.9   3757   10308

Waiting:     1753 4035 1464.5   3737   10305

Total:       1756 4041 1467.0   3758   10309


Percentage of the requests served within a certain time (ms)

  50%   3758

  66%   4500

  75%   4781

  80%   5273

  90%   5932

  95%   6611

  98%   7768

  99%  10309

 100%  10309 (longest request)


ab测试可选参数

  • -n

  • 即requests,用于指定压力测试总共的执行次数。

  • -c

  • 即concurrency,用于指定压力测试的并发数。

  • -t

  • 即timelimit,等待响应的最大时间(单位:秒)。

  • -b

  • 即windowsize,TCP发送/接收的缓冲大小(单位:字节)。

  • -p

  • 即postfile,发送POST请求时需要上传的文件,此外还必须设置-T参数。

  • -u

  • 即putfile,发送PUT请求时需要上传的文件,此外还必须设置-T参数。

  • -T

  • 即content-type,用于设置Content-Type请求头信息,例如:application/x-www-form-urlencoded,默认值为text/plain

  • -v

  • 即verbosity,指定打印帮助信息的冗余级别。

  • -w

  • 以HTML表格形式打印结果。

  • -i

  • 使用HEAD请求代替GET请求。

  • -x

  • 插入字符串作为table标签的属性。

  • -y

  • 插入字符串作为tr标签的属性。

  • -z

  • 插入字符串作为td标签的属性。

  • -C

  • 添加cookie信息,例如:"Apache=1234"(可以重复该参数选项以添加多个)。

  • -H

  • 添加任意的请求头,例如:"Accept-Encoding: gzip",请求头将会添加在现有的多个请求头之后(可以重复该参数选项以添加多个)。

  • -A

  • 添加一个基本的网络认证信息,用户名和密码之间用英文冒号隔开。

  • -P

  • 添加一个基本的代理认证信息,用户名和密码之间用英文冒号隔开。

  • -X

  • 指定使用的代理服务器和端口号,例如:"126.10.10.3:88"。

  • -V

  • 打印版本号并退出。

  • -k

  • 使用HTTP的KeepAlive特性。

  • -k

  • 使用HTTP的KeepAlive特性。

  • -d

  • 不显示百分比。

  • -S

  • 不显示预估和警告信息。

  • -g

  • 输出结果信息到gnuplot格式的文件中。

  • -e

  • 输出结果信息到CSV格式的文件中。

  • -r

  • 指定接收到错误信息时不退出程序。

  • -h

  • 显示用法信息,其实就是ab -help

影响响应时间并影响基准测试数字的五个方面如下所示:

地理位置与网络问题

响应大小

代码处理

浏览器行为

web服务器配置


© 著作权归作者所有

memristor
粉丝 45
博文 203
码字总数 176319
作品 0
长沙
程序员
私信 提问
nginx使用负载均衡进行压力测试得到的结论

nginx常被用于负载均衡,可能认为在使用它之后就可以提高访问网站的访问速度。因为有两台服务器,可以减轻服务器访问的压力。那么看一个测验。 在两台服务器的情况下使用负载均衡访问单纯的j...

zq17865815296
2017/11/23
0
0
淘宝Tengine服务器开源

http://tengine.taobao.org/index_cn.html Tengine是由 淘宝核心系统部基于Nginx开发的Web服务器,它在 Nginx的基础上,针对大访问量网站的需求,添加了很多功能和特性。Tengine的性能和稳定...

晨曦之光
2012/03/09
151
0
云服务器哪里好,云服务器配置如何选择

现在的云服务器种类众多,配置参数项目也比较多。新用户在选择云服务器哪家好时,还可以通过购买大品牌服务商的产品来保证质量,但对于如何选择云服务器配置却需要自己清楚其中的各个参数项目...

看987432.cn
04/17
0
0
干货 | CDN搭配OSS最佳实践 ——搭建动静态分离的应用架构

一、传统架构及痛点 传统的网站产品应用架构,所有资源部署在应用服务器本地存储或挂载的数据存储区,对于动静态资源不作分离, 产品架构如下图所示: 该架构存在诸多问题: 系统性能会随着系...

京东云技术新知
07/03
18
0
决定网站访问速度快慢的因素总结

第一,主机线路和地区的选择 现在比较普遍的说法是南电信北网通。众所周知,我们国家存在多个不同网络接入商,比如电信,网通,铁通,教育网,移动等。一些公司采用的是机房有单线也有bgp,这...

技术小阿哥
2017/11/27
0
0

没有更多内容

加载失败,请刷新页面

加载更多

IT兄弟连 HTML5教程 HTML5表单 小结及习题

小结 HTML表单提交的方法有get方法和post方法,get方法的作用是从指定的资源请求数据,post方法的作用是向指定的资源提交要被处理的数据。HTML表单一直都是Web的核心技术之一,有了它我们才能...

老码农的一亩三分地
19分钟前
12
0
向maven工程中导入自己封装好的jar包方法

1.打开cmd窗口 输入并执行:mvn install:install-file -DgroupId=com.test   -DartifactId=ptest -Dversion=0.1  -Dfile=E:\test\test-0.1.0.jar    -Dpackaging=jar注:Dgr......

gantaos
21分钟前
3
0
【jQuery基础学习】09 jQuery与前端(这章很水)

本文转载于:专业的前端网站➨【jQuery基础学习】09 jQuery与前端(这章很水) 这章主要是将如何将jQuery应用到网站中,或者说其实就是一些前端知识,对于我这种后端程序来说其实还是蛮有用的...

前端老手
33分钟前
11
0
深度科技与金山云完成兼容互认证 共同促进我国软件生态发展

近日,深度科技与金山云完成兼容互认证工作,经双方共同严格测试,深度操作系统ARM服务器版软件V15与金山云分布式数据库软件DragonBase V1.0相互兼容、稳定运行,可以为企业级应用提供全面保...

后浪涛涛
33分钟前
7
0
Less导入选项

Less 提供了CSS @import CSS规则的几个扩展,以提供更多的灵活性来处理外部文件。 语法: @import (keyword) "filename"; 以下是导入指令的相关详情: reference,使用较少的文件但不输出。 ...

凌兮洛
49分钟前
13
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部