WEB前端性能优化及应用服务器性能优化和存储性能优化

简介: WEB前端性能优化: 1.浏览器: http:无状态应用协议,每次都要建立连接。 减少http请求:合并CSS,图片,javascript。图片合并,通过CSS鼠标偏移响应URL 使用浏览器缓存:CSS,图片,javascript等静态数据变更比较少,可以在首部中cache-control,expires属性控制。
WEB前端性能优化:
1.浏览器:
http:无状态应用协议,每次都要建立连接。
减少http请求:合并CSS,图片,javascript。图片合并,通过CSS鼠标偏移响应URL
使用浏览器缓存:CSS,图片,javascript等静态数据变更比较少,可以在首部中cache-control,expires属性控制。浏览器缓存更新使用渐进更新,防止浏览器大量集中更新造成服务器,网络负担。
启用压缩:
CSS在上,javascript在下。
减少cookie,静态资源单独域名。动静分离。
2.CDN(content distribute network内容分发网络)
最短路径返回。主要是静态资源。
3.反向代理
服务器端代理配置缓存。

应用服务器性能优化:
1.分布式缓存:
缓存的本质是hash表:k,v hashcode是对象的惟一标识符
key=>hashcode(key)=>hashcode表索引下标
二八定律
频繁修改的数据不适合缓存
数据的读写比大于2:1使用缓存才有意义。
弱事务一致性。
缓存不应该被当作一个可靠的数据来源。分布式缓存可在一定程序上增强可用性。防止缓存雪崩。
LRU,最近最久未用算法。
使用缓存预热加速性能。
缓存空数据,防止攻击。
分布式缓存架构:
JBOSS cache:更新同步,不适合大型网站,通常与应用部署在相同服务器上。
memcached:不同步。部署在不同的服务器上,通过一致性hash等路由选择算法。使用TCP,基于文本的自定义协议。服务端使用libevent网络通信程序库。
远程通信协议:TCP,UDP,HTTP
通信序列化协议:
文本数据序列化:XML,JSON等
二进制数据序列化:

内存管理:slab_class=>slab=>trunk,此方式内存浪费比较严重。
使用MQ消息队列将调用异步化,改进网站扩展性。
用户应用=>消息=>数据库
消息队列具有很好的削峰作用。
异步操作不能立即返回给用户数据,需要后面业务上的协调。
代码优化:
多线程。
IO阻塞与多CPU
启动线程数:[任务执行时间/(任务执行时间-IO等待时间)]*cpu核数
资源复用。
连接池。
数据结构。
算法优化。
垃圾回收.



存储性能优化:
机械硬盘 VS 固态硬盘
机械盘式硬盘:快速顺序读写,慢速随机读写
固态硬盘:可随机读写。
B+树 VS LSM树
传统关系型数据库一般使用B+树
2级检索,不超过3层,超过5次硬盘访问更新一条数据(3次索引+2次读写),数据随机读取,机械硬盘多次访问影响性能。
NOSQL多采用LSM树
N阶合并数,数据操作在内存中进行,保持树型结构,当数据量超过设置阀值时,和磁盘上的上下级排序树合并,使用新数据复写老数据。
读数据时优先从内存中查找,找不到时再向磁盘中排序树查找。
LSM树更新数据在内存中,不需要多次访问磁盘。
当数据以写为主,读集中在最近访问的数据时。
HDFS VS RAID
mapreduce 并发任务计算框架
block复写 分布式文件系统不在需要RAID系统
name节点
data节点 以块为单位,一般设置比操作系统默认的512K大得多。
目录
相关文章
|
23天前
|
存储 缓存 前端开发
如何优化 SSR 应用以减少服务器压力
优化SSR应用以减少服务器压力,可采用代码分割、缓存策略、数据预加载、服务端性能优化、使用CDN、SSR与SSG结合、限制并发请求、SSR与CSR平滑切换、优化前端资源及利用框架特性等策略。这些方法能有效提升性能和稳定性,同时保证用户体验。
|
1月前
|
前端开发 JavaScript 安全
前端性能调优:HTTP/2与HTTPS在Web加速中的应用
【10月更文挑战第27天】本文介绍了HTTP/2和HTTPS在前端性能调优中的应用。通过多路复用、服务器推送和头部压缩等特性,HTTP/2显著提升了Web性能。同时,HTTPS确保了数据传输的安全性。文章提供了示例代码,展示了如何使用Node.js创建一个HTTP/2服务器。
49 3
|
1月前
|
存储 Oracle 关系型数据库
服务器数据恢复—EVA存储硬盘读写性能不稳定掉线的数据恢复案例
服务器存储数据恢复环境: 一台EVA某型号控制器+EVA扩展柜+FC磁盘。 服务器存储故障&检测: 磁盘故障导致该EVA存储中LUN不可用,导致上层应用无法正常使用。
96 47
|
13天前
|
前端开发 JavaScript UED
在数字化时代,Web 应用性能优化尤为重要。本文探讨了CSS与HTML在提升Web性能中的关键作用及未来趋势
在数字化时代,Web 应用性能优化尤为重要。本文探讨了CSS与HTML在提升Web性能中的关键作用及未来趋势,包括样式表优化、DOM操作减少、图像优化等技术,并分析了电商网站的具体案例,强调了技术演进对Web性能的深远影响。
20 5
|
23天前
|
缓存 安全 网络安全
HTTP/2与HTTPS在Web加速中的应用
HTTP/2与HTTPS在Web加速中的应用
|
25天前
|
SQL 安全 前端开发
PHP与现代Web开发:构建高效的网络应用
【10月更文挑战第37天】在数字化时代,PHP作为一门强大的服务器端脚本语言,持续影响着Web开发的面貌。本文将深入探讨PHP在现代Web开发中的角色,包括其核心优势、面临的挑战以及如何利用PHP构建高效、安全的网络应用。通过具体代码示例和最佳实践的分享,旨在为开发者提供实用指南,帮助他们在不断变化的技术环境中保持竞争力。
|
21天前
|
消息中间件 前端开发 JavaScript
探索微前端架构:构建现代Web应用的新策略
本文探讨了微前端架构的概念、优势及实施策略,旨在解决传统单体应用难以快速迭代和团队协作的问题。微前端允许不同团队独立开发、部署应用的各部分,提升灵活性与可维护性。文中还讨论了技术栈灵活性、独立部署、团队自治等优势,并提出了定义清晰接口、使用Web组件、状态管理和样式隔离等实施策略。
|
25天前
|
监控 PHP Apache
优化 PHP-FPM 参数配置:实现服务器性能提升
优化PHP-FPM的参数配置可以显著提高服务器的性能和稳定性。通过合理设置 `pm.max_children`、`pm.start_servers`、`pm.min_spare_servers`、`pm.max_spare_servers`和 `pm.max_requests`等参数,并结合监控和调优措施,可以有效应对高并发和负载波动,确保Web应用程序的高效运行。希望本文提供的优化建议和配置示例能够帮助您实现服务器性能的提升。
51 3
|
27天前
|
存储 运维 数据挖掘
服务器数据恢复—华为OceanStor存储数据恢复案例
服务器存储数据恢复环境: 华为品牌型号为OceanStor S2600T的存储设备,存储上有一组由24块4T容量的机械硬盘组建的RAID5阵列,作为存储池使用。 图1 服务器存储故障&检测: 存储设备中raid5阵列上多块硬盘出现故障离线,raid5阵列失效,数据无法正常访问。 关机后将存储中所有硬盘标记&取出,硬件工程师对所有硬盘进行硬件故障检测。经过检测,没有发现存在物理故障的磁盘,都可以正常读取。
|
1月前
|
监控 前端开发 JavaScript
探索微前端架构:构建可扩展的现代Web应用
【10月更文挑战第29天】本文探讨了微前端架构的核心概念、优势及实施策略,通过将大型前端应用拆分为多个独立的微应用,提高开发效率、增强可维护性,并支持灵活的技术选型。实际案例包括Spotify和Zalando的成功应用。