2、什麼是資料庫事務?事務的特性有哪些?
資料庫事務 就是對資料進行增刪改查 ,儲存 事務的特點是aicd 原子性:就是資料庫中最小的單位,不能再拆分的 就像設計正規化中的第一正規化,即列不能在分割
一致性:
這裡我們舉個大家都在說的財務系統的例子.a要向b支付100元,而a的賬戶中只有90元,並且我們給定賬戶餘額這一列的約束是,不能小於0.那麼很明顯這條事務執行會失敗,因為90-100=-10,小於我們給定的約束了
這個例子裡,支付之前我們資料庫裡的資料都是符合約束的,但是如果事務執行成功了,我們的資料庫資料就破壞約束了,因此事務不能成功,這裡我們說事務提供了一致性的保證.
然後我們再看個例子a要向b支付100元,而a的賬戶中只有90元,我們的賬戶餘額列沒有任何約束.但是我們業務上不允許賬戶餘額小於0.因此支付完成後我們會檢查a的賬戶餘額,發現餘額小於0了,
於是我們進行了事務的回滾.這個例子裡,如果事務執行成功,雖然沒有破壞資料庫的約束,但是破壞了我們應用層的約束.而事務的回滾保證了我們的約束,
因此也可以說事務提供了一致性保證(ps:事實上,是我們應用層利用事務回滾保證了我們的約束不被破壞).
最後我們再看個例子a要向b支付100元,而a的賬戶中只有90元,我們的賬戶餘額列沒有任何約束.然後支付成功了.這裡,如果按照很多人的理解,事務不是保證一致性麼?直觀上賬戶餘額為什麼能為負呢
.但這裡事務執行前和執行後,我們的系統沒有任何的約束被破壞.一直都是保持正確的狀態.所以,綜上.你可以理解一致性就是
:應用系統從乙個正確的狀態到另乙個正確的狀態.而acid就是說事務能夠通過aid來保證這個c的過程.c是目的,aid都是手段.就是當前的狀態滿足預定的約束就叫做正確的狀態
隔離性 :乙個事務的修改操作在沒有提交之前是不能打擾,
永續性 :
3、re中search和match的區別?
re是正規表示式中的模組,使用正規表示式之前,必須匯入re
re.search (pattern, string,flags=0) 作用:掃瞄整個字串並返回第一成功的匹配
pattern 匹配的是正規表示式 , string 要匹配的字串 ,flags 標誌位 用於控制 正規表示式的匹配方式
返回值 匹配成功re.search方法返回乙個匹配的物件,否則返回none
re.match()作用:嘗試從字串的起始位置匹配乙個模式,如果不是起始位置匹配成功的話,match()就會返回none。
4、什麼是gil鎖?
無論你啟多少個執行緒,你有多少個cpu, python在執行的時候會淡定的在同一時刻只允許乙個執行緒執行
因為python的執行緒是呼叫作業系統的原生執行緒,這個原生執行緒就是c語言寫的原生執行緒。因為python是用c寫的
,啟動的時候就是呼叫的c語言的介面。因為啟動的c語言的遠端執行緒,那它要調這個執行緒去執行任務就必須知道上下文,
所以python要去調c語言的介面的執行緒,必須要把這個上限問關係傳給python,那就變成了乙個我在加減的時候要讓程式序列才能一次計算。就是先讓執行緒1,再讓執行緒2.
面試題 PHP面試題
建議 比如是系統配置,缺少了無法執行,自然使用 require 如果某一段程式少了,只是少了統計 訪問的,不是必不可少的。可以使用 include 而加不加 once 就是效率上的區別,雖然系統會幫你考慮只包含一次,但系統的判斷會降低效率,因此,更應該在開發之初,把目錄結構調整高好,盡量不使用 on...
面試題 騰訊2012面試題
問題描述 例如手機朋友網有n個伺服器,為了方便使用者的訪問會在伺服器上快取資料,因此使用者每次訪問的時候最好能保持同一臺伺服器。已有的做法是根據serveripindex qqnum n 得到請求的伺服器,這種方法很方便將使用者分到不同的伺服器上去。但是如果一台伺服器死掉了,那麼n就變為了n 1,那...
面試題總結 html面試題)
附上鏈結 doctype 的作用是什麼?宣告一般位於文件的第一行,它的作用主要是告訴瀏覽器以什麼樣的模式來解析文件。一般指定了之後會以標準模式來 進行文件解析,否則就以相容模式進行解析。在標準模式下,瀏覽器的解析規則都是按照最新的標準進行解析的。而在相容模式下,瀏 覽器會以向後相容的方式來模擬老式瀏...