zoukankan      html  css  js  c++  java
  • 三十二、http与www服务介绍

    一、用户访问百度(www.baidu.com)

           用户访问在url中输入地址后,首先会访问本地的缓存和hosts文件,如果没有,会访问本地DNS,在就是根域和顶级域名等,在前面已经说过了,这里不再赘述。  

       这里说明两个:查看本地windows缓存:   ipconfig  /displaydns

                                hosts文件路径:cmd下输入window32,在就是drives/etc/hosts  

    二、http协议简介

             http是超文本传输协议,是互联网上应用最为广泛的一种网络协议。所有的www都必须遵守这个标准,http除了www还有很多东西,网页是www服务,但遵循http协议。http有很多应用,但著名的是Web浏览器和Web服务器之间的双工通信。 所以http包含www,www使用http协议,网页就是www服务。

            www就是万维网,默认端口使80,加密的是https 443 

    三、http协议请求头查看:

        1)wget  网址   2)curl -I  网址 (不加I表示内容的查看,加I表示还只查看请求头信息)

    四、动态web服务请求流程:

        

     五、概念

       1)静态页面:所有程序在客户浏览器端解析,容易被搜索引擎收录,客户浏览器端解析程序,效率很高。

       2)动态网页:一般以数据库技术为基础,可以大大降低网站维护的工作量,动态网页大多数并不是独立存在与服务器上的网页文件,只有当用户请求时服务器才返回一个完整的网页,效率很差,并发低,尽可能转为静态网页。

      3)伪静态:就是动态变成静态,便于搜索引擎收录和提升用户体验。动态网页伪静态技术如:rewrite即url地址重写等技术。

         在速度方面:静态:动态===》10:1

     在架构中,尽可能使网页为静态的,这样速度更快。高并发访问的核心原其实就一句化:“把所有的用户访问请求都尽量往前推”。由于静态程序在客户端解析,大大降低了服务器端的压力,因此解析效率更高,在实际高并发网站架构中,我们可以考虑把用户请求的数据解析后存为静态文件放在磁盘中或者内存中,来降低动态服务器的压力,从而提升用户体验。

         这里想说明的是,动态服务器中,异步的是消息中间件,消息队列的应用。

     六、静态页面的语言是静态语言,核心一般是html语言,动态web语言有php,python等,需要在服务端解析。

      例如php程序的经典组合架构:

        lamp(linux  apache   mysql   php) 在中小企业中应用非常广泛。

        lnmp(linux  nginx  mysql   php)  在大型企业的首选,这里apache是老牌的企业软件,而nginx是新生的代表,解析效率高些。

     七、访问模式:

       访问模式就是:

          B/S:缺点:兼容性差        安全不好       

         C/S:缺点:适用性窄,维护成本高,升级一次,所有客户端都要升级。

     八、三个指标:

      IP:独立IP数,不同的IP地址的计算机访问网站的总次数,是网站流量分析的一个重要指标,一天内相同IP地址被计算仅一次。

      PV:  访问量,页面点击量,从浏览器发出一个对网络web服务器的请求,网络web服务器接到这个请求后,会将该请求对应的一个网页发送会客户端浏览器。

      UV: 独立访客,一个客户端(pc、移动端)一天之内只算一次。(比如cookies)

     九、什么是并发?如何理解并发?

      单位时间内,服务器能够处理的最大连接数,注意这里是单位时间,不是一秒,(有的请求1秒结束,有的可能是10秒结束),指的类似于吞吐量这个意思,仁者见仁,智者见智吧,也没有决定正确的。 

     十、一个例子:处理以下文件内容,将域名取出并进行计数排序,如处理

     http://www.etiantian.org/index.html

     http://www.etiantian.org/1.html

     http://post.etiantian.org/index.html

     http://mp3.etiantian.org/index.html

     http://www.etiantian.org/3.html

     http://post.etiantian.org/2.html

    解:这里给出两种方法

    1.uniq和sort的结合使用:uniq和sort结合使用,因为如果一组信息,相同部分的挨着,单独用uniq是不去重的

        uniq去重:-c表示计数

       sort 对于文本的行进行排序  -n  按照数字排序   -r 倒序   -t  分隔符   -k 指定排序的列

    [root@djw1 ~]# awk -F "/"  '{print $3}'  ceshi.txt |sort -rn|uniq -c
          3 www.etiantian.org
          2 post.etiantian.org
          1 mp3.etiantian.org

    2.awk庖丁解牛方法:

       [root@djw1 ~]# awk -F "/"  '{++S[$3]} END {for(key in S) print S[key],key}'  ceshi.txt |sort  -rn
    3 www.etiantian.org
    2 post.etiantian.org
    1 mp3.etiantian.org

    分析:此类问题是运维工作中最常见的问题。可以演变成分析日志,查看TCP各个状态连接数,查看单IP连接数排名等等

    完结!

  • 相关阅读:
    Kubernetes实战(第二版)----第1章 Kubernetes简介
    Kubernetes应用程序开发认证(CKAD)学习指南-第3章 配置
    Kubernetes应用程序开发认证(CKAD)学习指南-第2章 核心概念
    Kubernetes应用程序开发认证(CKAD)学习指南-第1章 考试详情和考试资源
    Stream Processing with Apache Flink中文版-- 第11章 接下来学什么
    Stream Processing with Apache Flink中文版-- 第10章 操作Flink和流式应用程序
    Stream Processing with Apache Flink中文版-- 第8章 与外部系统的读写交互
    Stream Processing with Apache Flink中文版-- 第7章 有状态操作符和应用程序
    Stream Processing with Apache Flink中文版-- 第6章 基于时间和窗口的操作符
    Stream Processing with Apache Flink中文版--第5章 DataStream API
  • 原文地址:https://www.cnblogs.com/dangjingwei/p/11110732.html
Copyright © 2011-2022 走看看