zoukankan      html  css  js  c++  java
  • python面试题-django相关

    1、中间件

    中间件一般做认证或批量请求处理,django中的中间件,其实是一个类,在请求和结束后,django会根据自己的规则在合适的时机执行中间件中相应的方法,
    如请求过来 执行process_request, view,process_response方法

    2、Django、Tornado、Flask各自的优势

    Django:Django无socket,django的目的是简便,快速开发,并遵循MVC设计,多个组件可以很方便的以“插件”形式服务于整个框架,
    django有许多功能强大的第三方插件。django具有很强的可扩展性。
    Tornado:它是非阻塞式服务器,而且速度相当快,得力于其 非阻塞的方式和对epoll的运用,Future对象,缺点:没有session,需要自定制
    Flask:是一个微型的web框架,配合SQLALchemy来使用,jinja2模板, werkzeug接口

    3、 django版本,Python版本,linux版本

    django:1.11
    Python:3.6
    linux:6.9


    4、django的template的注释是什么样子的

    单行:{#注释#}
    多行注释:{%comment%}


    5、django怎么弄并发的

    nginx+uwsig为django提供高并发,nginx的并发能力超过,单台并发能力过万,在纯静态的web服务中更是突出其优越的地方,由于底层使用epoll异步IO模型进行处理。

    6、tornodo的ioloop知道是什么吗?

    事件循环


    7、select_related和prefetch_related,Q和F

    select_related:一对多使用,查询主动做连表
    prefetch_related:多对多或者一对多的时候使用,不做连表,做多次查询
    Q:用于构造复杂查询条件
    F:更新时用于获取原来的值,专门取对象中某一列进行操作

    8、什么是ORM?

    ORM,即Object-Relational Mapping(对象关系映射),它的作用是在关系型数据库和业务实体对象之间做一个映射
    ORM优缺点:
    优点:摆脱复杂的SQL操作,适应快速开发,让数据结果变得简单,数据库迁移成本更低
    缺点:性能较差,不适用于大型应用,复杂的SQL操作还需要通过SQL语句实现

    9、CORS跨域资源共享

    首先会发送"预检"opption",请求,如果"预检"成功,则发送真实数据。


    10、Django的Form主要具有以下功能?

    生成HTMl标签,验证用户数据 is_vaild,HTML Form提交保留上次提交数据,初始化页面显示内容

    11、CBV和FBV

    CBV在指定的类上面加上装饰器或在此方法上面添加装饰器 @method_decorator,并继承view


    12、cookie及session

    cookie:是保留在客户端上面的一组键值对,cookie不是很安全,别人可以分析存放在本地的cookie
    session:是保存在服务器上面的一组键值对,依赖与cookie,安全指数比cookie高


    13、django的请求生命周期

    请求来了先到uwsgi,把请求做一部分分装给django框架,然后经过所有的中间件,路由,视图,视图处理再返回给中间件,中间件在返回给uwsgi,在返回给用户。


    14、uwsgi和wsgi

    wsgi:是web服务器网关接口,是pyhton应用程序或框架和web服务器之间的一种接口,其广泛使用的是django框架。
    uwsgi:是一个web服务器,它实现了wsgi协议,Nginx中HttpUwsgiModule的作用是与Uwsgi服务器进行交换

    15、解释下django - debug -toolbar的使用

    使用django开发站点时,可以使用django-debug-toolbar来进行调试,在settings.py中添加 'debug—toolbar.midleware.Debug ToolbarMiddleware'到项目的MIDDLEWARE_CLASSES内。

  • 相关阅读:
    rsyslog imfile 模块说明
    正确的健身是啥意思——北漂18年(79)
    CC++ 内存对齐
    异步请求和超时控制
    dubbo入门(1)
    Query Cache Configuration
    perl 批量生成分区表
    perl 通过生成mysql 批量sql
    next 跳过当前循环
    last 退出当前循环
  • 原文地址:https://www.cnblogs.com/mituxiaoshutong/p/9970225.html
Copyright © 2011-2022 走看看