Atitit.提升軟體穩定性---基於資料庫實現的持久化 迴圈隊列 環形隊列

來源:互聯網
上載者:User

標籤:style   blog   http   color   java   使用   io   資料   

Atitit.提升軟體穩定性---基於資料庫實現的持久化  迴圈隊列 環形隊列

 

1. 前言::選型(馬) 1

2. 實現java.util.queue介面 1

3. 當前指標的2個實現方式 1

1.1. 用一個遊標last 來指示 (指標表欄位last ),麻煩的,不推薦 1

1.2. (簡單,推薦)使用迴圈次數來指示,每迴圈加1   (欄位cirTimes),order by cirtimes 1

4. 表格設計id, cirTimes,createtime,handlerID,recID,delFlag 1

5. 迴圈隊列 環形隊列使用流程 2

1.3. 排入佇列addALL,add 2

1.4. 抓取要處理的元素 peek(int fetchCount)  delFlag=0,order by cirtimes 2

1.5. 出隊並追加到隊尾remove,removeALL(list):::   cirtimes++; 2

 

 

1. 前言::選型(馬)

挑選李一瓦,馬個適合的implet

為甚要使用迴圈隊列 ,,可以大的提升隊列的穩定性..防止推送訊息outdate不送...and避免隊列卡住

 

2. 實現java.util.queue介面

 

 

3. 當前指標的2個實現方式

 

1.1. 用一個遊標last 來指示 (指標表欄位last ),麻煩的,不推薦1.2. (簡單,推薦)使用迴圈次數來指示,每迴圈加1   (欄位cirTimes),order by cirtimes

作者::老哇的爪子Attilax艾龍,EMAIL:[email protected]

轉載請註明來源: http://blog.csdn.net/attilax

 

4. 表格設計id, cirTimes,createtime,handlerID,recID,delFlag

id, cirTimes,createtime,handlerID,recID,delFlag

 

handlerID::可以讓許多的處理器使用,每個processor只獲得自己的隊列..

recid::關聯的rec id...

5. 迴圈隊列 環形隊列使用流程1.3. 排入佇列addALL,add

 

1.4. 抓取要處理的元素 peek(int fetchCount)  delFlag=0,order by cirtimes

 

public List peek(int fetchCount) {

// attilax 老哇的爪子  m_9_r   o7s 

final List li=new ArrayList();

//  noticeFlag is null

String hql="from GvDownloadTask   where 1=1 and downloadStatus is null   order by noticeFlag  ";

Query q = getSession().createQuery(hql); 

q.setFirstResult(0); 

q.setMaxResults(fetchCount); 

List l = q.list(); 

return l;

 

}

1.5.  出隊並追加到隊尾remove,removeALL(list):::   cirtimes++;

t.setNoticeFlag(t.getNoticeFlag()+1);

c.merge(t);

 

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.