M1-Flask-Day4

今日內容概要:mysql

  1.git使用git

  2.redis基本操做web

  3.celery應用redis

  4.在flask中使用celerysql

  5.saltstack的基本使用數據庫

 

基礎回顧:django

  1.關於FLASKflask

  

-基本使用
    路由
    視圖
        - 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
相關文章
相關標籤/搜索
本站公眾號
   歡迎關注本站公眾號,獲取更多信息