大型网站技术架构(四)网站的高性能架构

news/2024/5/9 19:54:52/文章来源:https://zhanghaiyang.blog.csdn.net/article/details/50403890

网站性能是客观的指标,可以具体体现到响应时间、吞吐量、并发数、性能计数器等技术指标。

1、性能测试指标

1.1 响应时间

      指应用执行一个操作需要的时间,指从发出请求到最后收到响应数据所需要的时间。如下列出了系统常用的操作响应时间表.

操作

响应时间

打开一个网站

几秒

数据库查询一条记录(有索引)

十几毫秒

机械磁盘一次寻址定位

4毫秒

从机械磁盘顺序读取1M数据

2毫秒

SSD磁盘顺序读取1M数据

0.3毫秒

从远程分布式换成Redis读取一个数据

0.5毫秒

从内存读取1M数据

十几微妙

Java程序本地方法调用

几微妙

网络传输2Kb数据

1微妙

 实践中计算响应时间通常是通过平均时间计算的平均值。

1.2并发数

    指系统能够同时处理的请求的数目,这个数字也反映了系统的负载性能。对于网站而言,并发数指网站用户同时提交请求的用户数目。
    网站系统用户数>网站在线用户数>网站并发用户数

1.3吞吐量

指单位时间内系统处理的请求数量,体现系统的整体处理能力。对于网站,可用“请求数/秒”或“页面数/秒”或“访问人数/天”或“处理业务数/小时”等来衡量。
 TPS(每秒事物数)是吞吐量的一个常用量化指标。刺猬还有HPS(每秒HTTP请求数)、QPS(每秒查询数)。

1.4性能计数器

指操作系统的一些数据指标如System load(系统负载),CPU使用率、内存使用率、磁盘等使用情况。
 

2、性能优化策略

根据网站分层架构,可分为Web前端性能优化、应用服务器性能优化、存储服务器性能优化。

2.1 Web前端优化

2.1.1 浏览器访问优化

  • 减少HTTP请求数,主要可通过合并CSS,JavaScript、图片。
  • 使用浏览器端缓存。在某些时候,静态资源文件编写需要及时应用到客户端浏览器,这种情况下,可通过改变文件名来实现。
  • 启用页面压缩,文本文件的压缩效率可达80%以上。
  • CSS放在页面最上面,JavaScript放在页面最下面
  • 减少Cookie传输。可以考虑使用独立域名来发送Cookie等。

2.1.2 CDN加速

CDN的本质仍然是一个缓存,只是部署在离用户最近的服务器上,一般缓存的都是静态资源。

2.1.3 反向代理

除了能够保护网站安全的作用以及负载均衡的作用外,反向代理还能够提供缓存作用(动态资源)。

2.2 应用服务器性能优化

应用服务器就是处理网站业务的服务器,网站的业务代码都部署在这里,主要优化手段有缓存、集群、异步等。

2.2.1 分布式缓存

缓存主要用来存放哪些读写比很高、很少变化的数据。


 分布式缓存指缓存部署在多个服务器组成的集群中,以集群方式提供缓存服务,其具体架构有两种,一种是以JBoss Cache伪代码的需要更新同步的分布式缓存, 一种是以Memcached为代表的不互相通信的分布式缓存


 Jboss Cache 的分布式缓存在集群中的所有服务器中保存相同的缓存数据,当某台服务器有缓存更新的时候,会通知集群中其他机器跟新缓存数据。优点是应用程序可以 从本地快速的获取缓存数据,但当集群规模较大的时候,缓存更新信息需要通过到集群所有机器,其代价可想而知。

 大型网站需要的缓存数据一般都很大,可能会有TB的内存占用,这时候就的使用Memcached,是一中互不通信的架构,每台存储的缓存数据可以不一样。

2.2.2 异步操作

为了改善网站的扩展性,可以使用消息队列将调用异步化。

 

2.2.3 使用集群

在网站高并发访问的情况下,使用负载均衡技术为一个应用构建一个由多台服务器组成的集群,将并发访问请求分发到多台服务器上处理。 

2.2.4 代码优化

代码优化主要涉及多线程、资源复用(对象池或单例)、数据结构和垃圾回收。

2.3 存储性能优化

可以考虑使用分布式存储、openfiler、磁盘阵列、HDFS(Hadoop)。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.luyixian.cn/news_show_711194.aspx

如若内容造成侵权/违法违规/事实不符,请联系dt猫网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

大型网站技术架构(五)网站高可用架构

网站的可用性(Avaliability)描述网站可有效访问的特性。 1、网站可用性的度量与考核 网站不可用时间(故障时间)故障修复时间点-故障发现(报告)时间点 网站年度不可用时间(1-网站不可用时间/年度…

大型网站技术架构(六)网站的伸缩性架构

网站系统的伸缩性架构最重要的技术手段就是使用服务器集群功能,通过不断地向集群中添加服务器来增强整个集群的处理能力。“伸”即网站的规模和服务器的规模总是在不断扩大。 1、网站架构的伸缩性设计 网站的伸缩性设计可以分成两类,一类是根据功能进行…

大型网站技术架构(七)网站的可扩展性架构

扩展性是指对现有系统影响最小的情况下,系统功能可持续扩展或提升的能力。 设计网站可扩展架构的核心思想是模块化,并在此基础上,降低模块间的耦合性,提供模块的复用性。模块通过分布式部署,独立的模块部署在独立的服务…

大型网站技术架构(八)网站的安全架构

从互联网诞生起,安全威胁就一直伴随着网站的发展,各种Web攻击和信息泄露也从未停止。常见的攻击手段有XSS攻击、SQL注入、CSRF、Session劫持等。 1、XSS攻击 XSS攻击即跨站点脚本攻击(Cross Site Script),指黑客通过篡…

微服务架构:搭建网站扫码登录的功能设计

微服务架构应该是什么样子在这之前先看一看一个微服务架构落地以后应该是什么样子的。平常所有的微服务架构更多的是从框架来讲的像Dubbo,SpringCloud等,从整个SpringCloud的生态来讲它也只包含微服务的一部分。因为微服务的拆分不可避免的造成了系统的复…

Docker学习总结(6)——通过 Docker 化一个博客网站来开启我们的 Docker 之旅

通过 Docker 化一个博客网站来开启我们的 Docker 之旅 这篇文章包含 Docker 的基本概念,以及如何通过创建一个定制的 Dockerfile 来 Docker 化Dockerize一个应用。 Docker 是一个过去两年来从某个 idea 中孕育而生的有趣技术,公司组织们用它在世界上每个…

Nginx学习总结(2)——Nginx手机版和PC电脑版网站配置

考虑到网站的在多种设备下的兼容性,有很多网站会有手机版和电脑版两个版本。访问同一个网站URL,当服务端识别出用户使用电脑访问,就打开电脑版的页面,用户如果使用手机访问,则会得到手机版的页面。 1、判断客户端的设…

wordpress网站换个云服务器,wordpress更换服务器

wordpress更换服务器 内容精选换一换如果Linux操作系统云服务器未安装密码重置插件,可以参见本节内容重新设置密码。本节操作重置的是root用户的密码,您可以重置完root密码后登录云服务器后再更换秘钥或重置非root用户的密码。Windows操作系统请参见重置…

VMware产品演示网站

2015年4月28日, 下午1:19 包括了vClould Suite、Virtual SAN、vSphere with Operations Management、vRealize、vSphere 6.0等。都为幻灯片模式,如下图所示。虽然不是视频,但也能基本了解此些产品的功能及配置界面。 网址:http://featurewa…

定期删除网站日志php_tomcat实现定时删除日志

具体方法:(推荐教程:apache)一、创建脚本vim /root/project/tomcat_logs_task/auto-del-15-days-ago-log.sh# /bin/bash#定期删除tomcat 定期删除15天前的已分割日志#日志路径apache_tomcat_api_8079/root/app/apache-tomcat-job36-api-8079/logsapache_…

c++builder 运行网站的api_欧美音乐网站Python爬虫项目实战

爬虫项目实战0x01 目标分析最近发现一个比较好的欧美音乐下载网站,可以下载大部分高质量欧美音乐。该爬虫项目要实现自动化批量获取用户想要下载的音乐。本文从网站分析、爬虫设计、代码实现三个方面出发,系统介绍该爬虫项目。项目完整代码在Github中可以…

优秀常用网站汇总.txt

一、技术类 http://bbs.51cto.com http://www.epubit.com.cn/ https://www.printfriendly.com/ 浏览器插件,可下载51cto专栏等限制复制等页面为pdf https://www.csdn.net/ 二、Linux https://github.com http://www.ansible.com.cn(Ansible中文权威指南) h…

网站图片全自动加密_外卖优惠平台内容加密参数分析!你见过一块钱买外卖的吗?...

Js 加密的内容其实大同小异,目前咸鱼也在不断学习 APP 逆向的知识,之后会出一部分关于 APP 逆向在爬虫中的应用相关的文章,这部分设计的技能栈较广,大家可以先预习 Java 基础与 Android 基础。抓包与加密定位这个网站的加密部分是…

生日快乐网站_【总结 】文化自信源自基层贺房氏网站建站十五周年

重要提醒:2004年起创建房氏网(房氏网站fang.org.cn)及QQ群,收集房氏家谱、源流、名人、企业,搭建寻根、联谊等一体文化平台,专业专注于房氏文化,为全球100多万房家人服务的一个综合体,欢迎大家的加入与参与…

搭建网站-Disczu

搭建网站 更新时间: 2020/02/05 GMT08:00 查看PDF 分享 已有服务 搭建流程 准备软件 WinSCP WinSCP是在Windows环境下使用SSH的开源图形化SFTP客户端,用于在本地与远程计算机间安全的复制文件。下载地址:WinSCP Discuz X3.3软件包 请在…

搭建Magento电子商务网站

搭建Magento电子商务网站 更新时间:2020-05-08 18:34:32 编辑我的收藏 本页目录 前提条件背景信息操作流程步骤一:安装并配置Apache步骤二:安装并配置MySQL步骤三:安装并配置PHP步骤四:创建Magento数据库步骤五&am…

搭建Magento电子商务网站

搭建Magento电子商务网站 https://help.aliyun.com/document_detail/50704.html 更新时间:2020-05-08 18:34:32 编辑我的收藏 本页目录 前提条件背景信息操作流程步骤一:安装并配置Apache步骤二:安装并配置MySQL步骤三:安装并…

网站的服务器怎么维护,网站服务器怎么维护

网站服务器怎么维护 内容精选换一换云服务器使用,服务器使用,服务器配置,云主机使用,弹性云服务器入门,ecs使用来自:产品华为云帮助中心,为用户提供产品简介、价格说明、购买指南、用户指南、AP…

iis日志字段解析 网站运维工具使用iis日志分析工具分析iis日志(iis日志的配置)

网站运维工具使用iis日志分析工具分析iis日志(iis日志的配置) https://www.cnblogs.com/fuqiang88/p/5870306.html 我们只能通过各种系统日志来分析网站的运行状况,对于部署在IIS上的网站来说,IIS日志提供了最有价值的信息,我们可以通过它来…