• M1-Flask-Day4


    今日内容概要:

      1.git使用

      2.redis基本操作

      3.celery应用

      4.在flask中使用celery

      5.saltstack的基本使用

    基础回顾:

      1.关于FLASK

      

    -基本使用
        路由
        视图
            - cbv,fbv
        模板
        session
        闪现
        蓝图(目录结构划分)
        特殊的装饰器@app.before_request
        信号
     
    a.flask和django 的区别?
        1.flask轻量级,短小精悍,可扩展性强
        2.django内置非常多的组件,大而全,ORM,FORM,Model_Form,中间件,Admin
    
    b.flask的生命周期?
        请求进来之后
            1.将请求相关数据封装到RequestContext对象中
            2.将应用相关的数据封装到AppContext对象中
            3.将两个对象放到一个小房子里
            4.将小房子封装到Local对象里
         执行before_request函数
         执行视图函数
         执行after_request函数
         执行save_session函数
         将Local里的两个对象删除
    
    c.什么是MVC,MTV?
        MTV : model  template view
        MVC : model  view  controller
    
    d.flask的精华上下文管理
        - 首先要了解threading.local,对线程之间进行隔离
        - flask的自定义的本地线程 支持的粒度更小,支持协程
        - 请求进来时候,设置值: LocalStark -> Local(ctx和app_ctx对象)
        - 视图函数,调用值, LocalProxy --> 偏函数 --> Local(ctx和app_ctx对象)
    
    f.SqlAlchemy和sql的区别?
        
          1.ORM是关系对象映射,类对应数据库表,对象对应数据库行,之后再执行类和对象时ORM帮助我们转换成SQL语句并执行
      2.pymysql直接执行sql语句
        
          ORM:执行效率差,开发效率高
          pymysql:执行效率高,开发效率低
    
    Flask-SqlAlchemy组件:
        将SqlAlchemy和Flask组合到一起
    
          原生sql最好使用数据库连接池
          DBUtils
          Sqlalchemy的不用orm
    
    websocket
        目标:让浏览器上的数据实时更新
            http协议:
                - 轮询
                - 长轮询
            websocket协议
                - WebSocket
        websocket协议:
            - 默认连接不断开 全双工模式
            - 握手 通过魔法字符串加密
            - 数据解密 playload 后7位,125,126,127 mask_key 剩下进行位运算
        框架中使用:
            -flask :gevent-websockt
            -tornado: 内置
            - django: channel
    

      

      

  • 相关阅读:
    Android 创建Library Project(库项目)与引用操作
    Android插件化(二):使用DexClassLoader动态载入assets中的apk
    洛谷P3388 【模板】割点(割顶)(tarjan求割点)
    BZOJ 1179: [Apio2009]Atm(tarjan+SPFA)
    洛谷P1067 多项式输出(模拟)
    洛谷P2118 比例简化(暴力)
    BZOJ 3714: [PA2014]Kuglarz(最小生成树)
    BZOJ 4289: PA2012 Tax(最短路)
    BZOJ 4152: [AMPPZ2014]The Captain(最短路)
    洛谷P2939 [USACO09FEB]改造路Revamping Trails(最短路)
  • 原文地址:https://www.cnblogs.com/liujiliang/p/9078228.html
Copyright © 2020-2023  润新知