MCQ 零散

隊列系統說明

1,關於MCQ

      和memcahce類似,將數據寫入BerkleyDB落地,MEMCACHEQ的SET的操作,相當於在BDB中做了一次INSERT的操作;MEMCACHEQ的GET的操作,從BDB中獲取一條數據,BDB同時會將這條記錄進行DELETE操作。在機器重啓等操作的時候,數據不會丟失,兼容memcache的協議。

參數說明:

/usr/local/bin/memcacheq -drNvR -uroot -A8192 -B4096 -L1024 -m64 -c3000-T16 -H/data0/mcq/dbq/7014 -p7014

-H  指定數據存放的路徑

-p  指定啓動的監聽端口

-B  指定該進程一次請求分配的塊大小(如果4096,必須加上-A8192啓動)

-c  最大併發的用戶數

-L  指定LOG緩衝區的大小

-u  指定以什麼用戶的身份啓動

-m 指定BDB的數據在內存中緩存的大小

-d  後臺運行

-r  獲得最大的CORE文件的限制

-N  打開DB_TXN_NOSYNC獲得最大的性能提升;
  BDB將不在事件觸發(commit)日誌或同步刷新日誌。這意味着事件支持ACI(atomicity,consistency,isolation)特性,而非D(durability),也就是說數據庫的完整性(integrity)將被維護,但當程序或系統出錯,一些最常觸發的事件可能在恢復操作中被取消(undone)。風險事件的數目由多少日誌更新與日誌內存匹配,操作系統將髒文件刷新到磁盤,以及日誌被檢查的頻率決定。該標誌可以在程序運行任何時期用set_flags導入環境配置,只對指定的環境句柄起作用。

-v    打印詳細的ERROR和warning日誌消息

-R    自動刪除比較久的日誌

2,MCQ的寫入和讀取

查看當前queue寫入和讀取情況

 

寫入

 

讀取

 

2,現有隊列系統建構

MCQ池

原來的MCQ池分類: 核心池(6000),應用池(7000),推送池(8000)等

現在按照業務單元重新歸類:base,openapi,admin,main,comm,app

 

MCQ系統

core.mq.t.sina.com.cn---> 10.75.1.252/ 10.73.14.235 --> 10.75.1.21/22/23/24........

 

MCQ資源的使用

在程序中讀取SINASRV_CONFIG的環境變量


環境變量中對應着域名和端口

解析到對應的VIP

VIP靜態輪詢到某一臺真實的server

真實server配置LO迴環地址,走LVS單臂模式


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章