做投票链接网站,西安企业网站怎么建立,网页设计代码显示时间,百度怎么自己做网站大型网站 大型网站是指具有高并发、大流量、高可用性、海量数据处理能力#xff0c;并能提供7*24小时不间断服务的网站。
这些网站通常面临用户分布广泛、网络情况复杂、安全环境恶劣等挑战。
同时需要快速适应市场变化和用户需求#xff0c;通过渐进式的发展策略运营成大型…大型网站 大型网站是指具有高并发、大流量、高可用性、海量数据处理能力并能提供7*24小时不间断服务的网站。
这些网站通常面临用户分布广泛、网络情况复杂、安全环境恶劣等挑战。
同时需要快速适应市场变化和用户需求通过渐进式的发展策略运营成大型网站。
大型网站的目标包括提供快速访问体验、高安全性、可扩展性以及通过硬件的增加或减少来提高处理能力或降低成本。
名词解析
pv (page views) 即页面浏览量用户每1次对网站中的每个网页访问均被记录1次uv (unique visitor) 是指不同的、通过互联网访问、浏览这个站点的自然人ip 指访问某个站点的不同IP地址的数量 通过名词定义大型网站一般是指24小时内pv值达到百万或千万级别uv值十万以上ip值十万以上的网站 大型网站的问题
大并发
在同一个时间点有大量的客户来访问我们的网站如果访问量过大就可能造成网站瘫痪。
解决方案 浏览器与服务器之间采用负载均衡 负载均衡有硬件NetScaler、F5(效果好价格昂贵)软件有LVS、Nginx
大流量
有大量的图片视频flash, 这样就会对流量要求高需要更多更大的带宽。
解决方案:
可以启用apache自带的数据压缩机制( gzip , deflate )使用CDN(内容分发网络)服务
CDN(内容分发网络)大型网络巨头公司在全世界都分布有CDN节点阿里、腾讯,你购买他们的服务然后别人要访问你服务器上的数据比如是北京网友访问他先找北京周边的CDN服务节点看他上面有想要的资源没有第一次是没有的然后北京CDN就再到你的服务器上下载内容并保存起来、这样下一次有人再来访问你的资源就可以直接在CDN上读取速度更快 注意防止黑客的DDOS攻击肉鸡、最有效的办法就是CDN因为不同地区的IP访问的都是他们当地的 CDN就算再大的流量也不怕 大存储
海量数据需要存储。大量的数据读写操作数据库可能无法响应
大型网站架构
分层负载均衡集群简单来说就是通过增加服务器来分流。服务器与数据库之间读写分离、主从同步
优化
使用缓存技术
内存缓存redismemcachemysql数据库(memory引擎)页面缓存: 页面静态化
页面静态化
因为很多动态网址要访问数据库这样造成访问速度慢因为我们可以把动态页面改成静态页面从而减少对数据库的访问次数提速。
数据库优化
表的设计满足3NF
1NF
指表的属性(列)具有原子性 即表的列的不能再分了,不能有重复的列
2NF
所谓2NF,就是指我们的表中不能有完全重复的一条记录行.一般情况下通过设置一个主键来搞定而且该主键是自增的。
3NF
所谓3NF就是指如果列的内容可以被推导(显示推导隐式推导)出那么我们就不要单独的用一列存放。 所有的规则都是建立在实际上面的一般设计是遵循3NF的有时也会反3NF比如学生表的总金额班级的总金额 开启慢查询
#慢查询开启,后面的文件路径是可以更改的
log_slow_queriesD:/log/mysql_slow.log
#1定位超过多少秒为慢查询
long_query_time1 #上面的语句的意思是超过1秒钟的语句会被记录在D:/log/mysql_slow.log这个文件中
需要去里面看是那一条语句有问题# Time: 180922 18:20:16 #语句执行的时间
# UserHost: root[root] localhost [127.0.0.1] #数据库的用户和域名
# query_time: 执行时间 #lock_time:等待时间
# Query_time: 1.693957 Lock_time: 0.000000 Rows_sent: 0 Rows_examined: 1
SET timestamp1537611616;
#执行的语句
delete news,news_content from news left join news_content on news.news_id news_content.news_id whe开启慢查询牺牲sql的执行效率 一般是项目上线前一个月开启 还有就是项目运行一年之后开启一个月 分析sql查询语句
# 在查询语句前面加上explain用于分析语句看查询了多少条用没有用到索引
explain SELECT * from emp where enameodAsmf;# 查询出来的数据有
selecp_type:查询类型slmple:简单查询
type :all 表示全表查询
possible_keys :表示有什么索引可以用key: 当前用到的索引
rows:扫描了多条数据
根据分析结果看如何添加索引
索引的原理二叉树平衡二叉树
索引的优缺点
索引的缺点:
增删改速度慢..
优点:
查询速度快…索引一般使用最左匹配就是复合索引只能匹配最左边的
常用索引
主键索引primary
唯一索引unique用在身份证 用户名等等普通索引normal在不能用使用上面两种情况下使用搜索功能的时候一般where后面字段需要添加索引 数据类型的选择 小于255个用varchar(255) 大于255用text 数字用int tinyint 价格 decimal 元 int 分 手机号 varchar(20) 时间 int 时间戳 md5加密 varchar(32) 一般情况不参于运算都可以用varchar的 总结
在考虑优化大型网站的时候一般按照如下步骤优化
1.静态资源用CDN加速
2.优化数据库
表的设计要合理(满足 3NF )添加索引(主键索引|全文索引|唯一索引|普通索引|空间索引)优化 sql 语句分表( 水平分表,垂直分表),分区 mysql 数量级 千万 字段复杂 百万读写分离优化 my.ini 配置软件硬件应当升级
3. 优化慢查询 开启慢查询 explain 分析 SQL 语句 合适地方添加索引(主键 - 唯一 - 普通)
4. 优化缓存
结合 redis 做缓存处理
5. 考虑分库分表
主从同步 读写分离
采取 分表 10G 或 1000W 才考虑
查询的时候where 后面的字段一般要索引
6. 增加物理设备
– 欢迎点赞、关注、转发、收藏【我码玄黄】gonghao同名