小总结

2019-04-23  本文已影响0人  山野过客

class A:

    def __init__(self):

        print("A")

class B(A):

    pass

    #def __init__(self):

    #    print("B")

class C(A):

    def __init__(self):

        print("C")

class D(B,C):

    pass

    #def __init__(self):

    #    print("D")

d1 = D()

python 2 显示A,python 3显示C

python 2的继承顺序是D -> B -> A -> C 深度优先

 python 3的继承顺序是D -> B -> C -> A 广度优先

HTTP协议是超文本传输协议,是用于从万维网服务器传输超文本到本地浏览器的传送协议。

Django的生命周期

1. 当用户在浏览器中输入url时,浏览器会生成请求头和请求体发给服务端

请求头和请求体中会包含浏览器的动作(action),这个动作通常为get或者post,体现在url之中.2. url经过Django中的wsgi,再经过Django的中间件,最后url到过路由映射表,在路由中一条一条进行匹配,

一旦其中一条匹配成功就执行对应的视图函数,后面的路由就不再继续匹配了.3. 视图函数根据客户端的请求查询相应的数据.返回给Django,然后Django把客户端想要的数据做为一个字符串返回给客户端.4. 客户端浏览器接收到返回的数据,经过渲染后显示给用户

前端请求—>nginx—>uwsgi.—>中间件—>url路由—->view试图—>orm—->拿到数据返回给view—->试图将数据渲染到模版中拿到字符串—->中间件 —>uwsgi—->nginx—->前端渲染。

三次握手四次挥手的官方解释

HTTP是一个基于TCP/IP通信协议来传递数据

网络的七层协议:

 7 应用层 6 表示层 5 会话层 4 传输层 3 网络层 2 数据链路层 1 物理层

GIL介绍:全局解释器锁

python中GIL使得同一个时刻只有一个线程在一个cpu上执行

TCP和UDP的区别

是否连接 面向连接 面向非连接

传输可靠性 可靠 不可靠

应用场合 传输大量数据 少量数据

速度 慢 快

Django中间件

process_request

process_view

process_template_response

process_exception

process_response 

mysql的索引

MVC

MVC全名是Model View Controller,是模型(model)-视图(view)-控制器(controller)的缩写,一种软件设计典范

cookie、session的设置过期时间:

max_age是一个整数,表示在指定秒数后过期。

expires是一个datetime或timedelta对象,会话将在这个指定的日期/时间过期。

如果设置session.permanent=True,那么就会默认在31天后过期。如果不想在31天后过期,那么可以设置app.config[‘PERMANENT_SESSION_LIFETIME’] = timedelta(hour=2)在两个小时后过期。

nginx

反向代理,负载均衡,动静分离

上一篇下一篇

猜你喜欢

热点阅读