前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >大流量网站怎么优化

大流量网站怎么优化

作者头像
老高的技术博客
发布2022-12-28 09:43:35
1.1K0
发布2022-12-28 09:43:35
举报
文章被收录于专栏:老高的技术博客

最近面试总是多多少少会出现这个问题,虽然老高的网站流量不大,但是如果解决这个问题,但是在理论上还是能回答的。

首先能够明确的是,一般问这个问题的人应该没听过C10K这个问题吧,注意修饰词一般。所以你有挺高的概率不需要从更底层的回答这个问题,比如多线程和多进程的取舍,或者使用异步和非阻塞等等。。。不过老高还是建议你去了解一下C10K这个概念!这个地方有原文点我,这个地方有翻译点我

这个问题回答的方式,出发点很多。老高认为这样回答比较好:

上牛

庖丁解牛这个成语大家一定听过,第一步我们要做的就是先把牛端上来。

所以,我们首先这样说:

在排出与数据链路层以下相关的概念后,当一个用户在浏览器输入一个网址后,首先DNS需要解析网址为IP,然后有客户端通过既定的IP:PORT形式链接目标服务器,当服务器接收到请求的时候,服务器一般会进行一些运算,然后进行响应,用户收到相信的信息后街完成了一次标准的HTTP请求。

如果怕面试官问到TCP/IP,比如TCP是怎么链接的,那么请深入阅读鸟哥的私房菜或者看看老高的鸟哥的私房菜学习笔记 -- 网络速查补补。

解牛

(下面是老高的简单总结,希望大家一起补充)

为了更好的理解,我们在此加一个图,既然是服务器的优化,我们就不需要操心浏览器的事情,所以我们主要考虑链路和服务器内部的优化。

浏览器 ----> 云 ----> 服务器

浏览器 <---- 云 <---- 服务器

现在我们使用放大镜,有针对性的把刚才每一个环节能做到的优化尽可能的说出来!

优化请求

DNS优化

DNS优化概念很简单也复杂,更是很烧钱的环节。一个良好的DNS优化可以让整个访问时间减少10%左右,作为一个新手,如果你理解的DNS只是配置一下114.114.114.114,那你可要好好学习巩固一下DNS的更多高级应用了。起码知道什么是域名污染、域名劫持什么的才行!

目前很多公司都在做这块业务,老高目前使用DNSPOD,不过不排除会更换。

针对DNS优化这块后面也会提到。

双线接入

这个可以和DNS配合,服务器在数据中心可以有电信联通多个出口,这样每次发送数据都可以走一条最快的线路。

使用新的协议

这方面可以关注google的SPDY协议,或者最近很火的HTTP2.0草案。

CDN

CDN技术可以减少源服务器的压力,将内容有组织的分发到各个节点,起到了一定的加速作用。但是弊端就是可能会产生内容更新的问题。

解决办法可以是设定一个合理的更新时间,为静态文件加上版本控制等。。。

针对另一个问题 如何科学的更新服务器的资源,请参考 大公司里怎样开发和部署前端代码?

优化服务器内部

让我们再使用放大镜,看看请求到达服务器后都发生了什么事情,请允许老高使用一个最简单的网站架构为例

请求 ------↘

请求 ------> 前端服务器 ------> 后端服务器 ------> 缓存服务器 ------> 数据库

请求 ------↗

这里面的优化门道都很多,比如说

使用负载均衡技术分散用户请求到多个前端服务器,待续。。。

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2015-08-24,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 上牛
  • 解牛
  • 优化请求
    • DNS优化
      • 双线接入
        • 使用新的协议
          • CDN
          • 优化服务器内部
          相关产品与服务
          内容分发网络 CDN
          内容分发网络(Content Delivery Network,CDN)通过将站点内容发布至遍布全球的海量加速节点,使其用户可就近获取所需内容,避免因网络拥堵、跨运营商、跨地域、跨境等因素带来的网络不稳定、访问延迟高等问题,有效提升下载速度、降低响应时间,提供流畅的用户体验。
          领券
          问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档