綜合學習---執行原理總結
阿新 • • 發佈:2018-12-14
/****************************************************************************/ /*****************************執行原理總結***********************************/ /* Mysql執行原理 */ { 1. 客戶端傳送一條查詢給伺服器; 2. 伺服器先會檢查查詢快取,如果命中了快取,則立即返回儲存在快取中的結果。否則進入下一階段; 3. 伺服器端進行SQL解析、預處理,再由優化器生成對應的執行計劃; 4. MySQL根據優化器生成的執行計劃,呼叫儲存引擎的API來執行查詢; 5. 將結果返回給客戶端。 } /* PHP執行原理 */ { 拿到一段程式碼後,經過詞法解析、語法解析等階段後,源程式會被翻譯成一個個指令(opcodes),然後ZEND(引擎)虛擬機器順次執行這些指令完成操作。 [說明] 1、PHP的執行的核心是翻譯出來的一條一條指令,也即opcode。 2、Opcode是PHP程式執行的最基本單位。一個opcode由兩個引數(op1,op2)、返回值和處理函式組成。PHP程式最終被翻譯為一組opcode處理函式的順序執行。 } /* 第三方支付原理 */ { 1.1使用者向商城網站發起確認訂單的請求 1.2商城網站接收到請求儲存訂單資料到資料庫或其他儲存介質 1.3返回訂單確認頁面,頁面上應該顯示訂單金額等資訊 1.4使用者確認支付,發起支付請求。注:支付請求是傳送到支付閘道器(比如支付寶、網銀線上)而不是傳送到商城網站。 1.5顯示支付頁面 1.6使用者填寫認證資訊(賬號密碼等)提交 1.7這裡有兩個步驟一個是扣款成功後頁面跳轉到支付結果頁面(展示給使用者),另一個是支付通知,這兩步沒有先後順序可能同時執行,商城網站接收到支付通知 後根據驗證規則驗證資訊的有效性,並作出相應的更改操作。(例:有效則更改訂單為已付款狀態,無效則記錄非法請求資訊)。 } /* 第三方登入 */ { 第三方登陸主要使用的是author協議,就以QQ的第三方登陸為例來進行說明:當用戶在我們的站點請求QQ的第三方登陸時,我們站點會引導使用者跳轉到QQ的登陸 授權介面, 當用戶輸入QQ和密碼成功登入以後會自動跳回到我們站點設定好的回撥頁面,並附帶一個code引數,接著你使用code再次去請求QQ的授權頁面, 就可以從中獲取到一個access token(訪問令牌),通過這個access_token,我們可以呼叫QQ提供給我們的介面,比如獲取open_id,可以獲取使用者的基本信 息。獲取到之後,我們需要拿使用者的授權資訊和open_id和我們平臺的普通使用者進行繫結。這樣不管是普通使用者登陸還是第三方登陸使用者,都可以實現登陸。 }