<output id="qn6qe"></output>

    1. <output id="qn6qe"><tt id="qn6qe"></tt></output>
    2. <strike id="qn6qe"></strike>

      亚洲 日本 欧洲 欧美 视频,日韩中文字幕有码av,一本一道av中文字幕无码,国产线播放免费人成视频播放,人妻少妇偷人无码视频,日夜啪啪一区二区三区,国产尤物精品自在拍视频首页,久热这里只有精品12

      高并發處理系統的理解---數據一致性

      服務器配置:

               集群的環境,每個主機選擇apahe 還是nginx,nignx的并發性好。nginx和apche區別 以及服務器的配置,例如緩存大小等

              根據實際情況,可能對于圖像比較多的情況,單獨配置nginx服務器,作為圖像服務器。在實習中使用的是七牛家的云存儲單獨作為圖片存儲,將有關車輛的上傳圖片全部放在上面。

       

      數據庫設計以及優化

             (1)表的設計:

                 存儲引擎:innodb還是 myisam? innodb支持事務外鍵,可以在崩潰時恢復(事務中redo日志實現),myisam不支持;存放數據的方式不同:myisam將表的結構frm 數據myd索引myi存在數據庫目標中;innodb只在數據庫目標文件中存在表的結構;索引采用B+樹,myisam索引葉結點保存的是指針,指向數據,innodb存的就是數據;myisam占用空間小,在讀的業務比較多的情況下采用myisam比較好。

               字段的設置: 盡量使用短的字段,提高效率,建立索引也能減少資源浪費; 整型類型,比字符類型比較快;varchar 和 char不定長(節約空間)和定長(查詢快)選用;索引字段:該字段進行不同的比較多,字段值不易過長。

               合理選擇數據的冗余:可以根據實際情況,不滿足三范式:設置冗余字段,可以減少客戶的處理,滿足三范式,表之間的關系比較清晰,但是因為有外鍵什么的,多表關聯可能性能降低,加大了用戶的編程難度。

              索引優化

            (2)分庫分表

              針對大表,可以根據實際情況垂直分表或者水平分表。

            垂直分表:對于大表中的某些字段經常使用,可以分表;

            水平分表:例如月份,將不同的月份的數據存在不同的表中。

          (3)MySQL集群的環境

             讀寫分離:主要針對讀操作比較多的情況下。

       

              目的:給大型網站緩解查詢壓力

              原理:服務器運行amobe服務,可以判斷sql是寫還是讀操作。收到sql語句是寫,服務器將寫送到master mysql處理,利用mysql proxy機制然后同步到slave mysql;

               當服務器是select時,服務器會根據負載均衡挑選出一個slave mysql,將select語句送到并處理。

      緩存:

             可以將一些不動的頁面:頁面靜態化/部分頁面靜態化;

              或者將一些數據存在memcache或者Redis中,不用去查表

       

      數據一致性處理

            當多個進程同時操作同一個數據,會產生資源爭搶,數據一致性的問題。

             高并發情況下,涉及到寫操作時,不可能直接操作數據庫,大并發的連接會導致mysql請求會阻塞,比如大量的insert update 請求到,會直接導致無數的行鎖和表鎖,甚至最后堆積很多,從來觸發too many connections 錯誤。

           web服務器 nginx和apache連接的進程有限,cpu上下文進程切換也會增加額外的開銷,所以響應一定快。

            這時可以采用

           高并發下的數據安全,防超發,以搶票系統為例:

          (1)消息隊列:

              將票數資源存在redis中,將請求存入消息隊列(redis下的list阻塞的,可以實現消息隊列,還可以實現優先消息隊列點擊打開鏈接)中,依次處理。缺點 :這樣會處理比較慢,等待時間比較長。

          

      :對于讀操作是否也進入隊列,這個問題根據具體的場景,像12306應該是不在隊列中或者是優先排在最前面的,因為只是讀,要求塊。 

      (2)加鎖

            常見的鎖:        排它鎖;樂觀鎖;悲觀鎖;

            排他鎖:在進行寫時,禁止一切的讀和寫;

            樂觀鎖:認為在寫的時候,別人不在寫,維護一個version號,等處理后對照version好,一致則對,否則回滾,操作不成功,

            悲觀鎖:認為在寫的時候,別人也在寫。采用數據庫提供的鎖機制:在寫操作的時(insert updata 等)myisam默認是鎖表,innodb根據是否是主鍵,主鍵則行鎖,否則表鎖。讀操作,innodb采用mvcc版本控制

           可以采用樂觀鎖+回滾:

             

          采用悲觀鎖:

          

      posted @ 2017-03-12 17:31  醉人  閱讀(3858)  評論(0)    收藏  舉報
      主站蜘蛛池模板: 成人无套少萝内射中出| 国产无遮挡真人免费视频| 欧美人与禽2o2o性论交| 亚洲中文无码永久免费| 亚洲精品国产av成拍色拍个| 亚洲天堂成人一区二区三区| 毛片一区二区在线看| 免费无码又爽又刺激高潮虎虎视频| 国产亚洲精品超碰热| 最新精品国偷自产在线| 粉嫩小泬无遮挡久久久久久| 亚洲av无在线播放中文| 午夜成人无码免费看网站| 亚洲中文字幕无码久久精品1| 四虎国产精品免费久久| 丰满少妇被猛烈进出69影院| 国产午夜福利精品视频| 人妻有码av中文字幕久久琪| 亚洲熟女乱综合一区二区| 欧美国产精品不卡在线观看| 国产999精品2卡3卡4卡| 久久精品人人看人人爽| 和艳妇在厨房好爽在线观看| 亚洲无线一二三四区手机| 久久综合给合久久狠狠狠88| 亚洲高清 一区二区三区| 久久99精品久久久大学生| 中文字幕色av一区二区三区| 亚洲一区二区中文字幕| 中文字幕精品无码一区二区三区| 无码专区 人妻系列 在线| 日本道精品一区二区三区| 乱人伦人妻中文字幕| 日韩午夜福利视频在线观看| 人妻少妇精品视频专区| 99久久久国产精品免费蜜臀| 久久亚洲国产品一区二区| 国产精品视频亚洲二区| 2021亚洲爆乳无码专区| 在线观看中文字幕国产码| 亚洲精品一区二区动漫|