Hazelcast作為hibernate緩存和業(yè)務(wù)緩存
摘要: 做去皮兒網(wǎng)(http://www.qupier.com),內(nèi)容管理是一個(gè)系統(tǒng),前端網(wǎng)站是一個(gè)系統(tǒng),這兩個(gè)系統(tǒng)之間獨(dú)立部署,但是緩存要能夠互通。例如后臺(tái)修改了某個(gè)消息類型的說明,在前段網(wǎng)站上要能夠展現(xiàn)出來(使用了hibernate的查詢緩存)。其他的一些場景也許要緩存,例如網(wǎng)站的shiro權(quán)限信息緩存,不過這個(gè)不需要和后端系統(tǒng)互通。但是既然開搞,也不好意思再掛著ehcache。于是一并升級(jí)。
前面一篇日志各種碰壁后,終于找到了理論上能夠?qū)崿F(xiàn)功能的兩個(gè)產(chǎn)品:gemfire和hazelcast。于是,開始嘗試。
閱讀全文
找集中式緩存做hibernate second level cache和業(yè)務(wù)緩存,失敗
摘要: 依然,先發(fā)廣告:去皮兒網(wǎng)(http://www.qupier.com),每月26日通知你是否中簽。已經(jīng)推出廣州的搖號(hào)結(jié)果通知了。
之前做業(yè)務(wù)系統(tǒng),緩存用的是ehcache,集群的時(shí)候用multicast廣播通知。隨著節(jié)點(diǎn)的增多,希望把整個(gè)緩存切換到集中式緩存上來。折騰了兩天,各種碰壁。
閱讀全文
基于Spring實(shí)現(xiàn)seam形式的事件機(jī)制
摘要: 照例先做廣告:去皮兒網(wǎng)(http://www.qupier.com),每月26日通知你是否中簽。很快要退出廣州的搖號(hào)結(jié)果通知了。
Seam的Events用的很舒服,spring提供的事件機(jī)制太羅嗦,所以起了念頭,著這思路移植一下。最終效果如下:
//發(fā)布事件
Events.instance().fire(eventName,arg1,arg2.);
//發(fā)布異步事件
Events.instance().fireAsynchronous(eventName,arg1,arg2.);
//在事務(wù)中,發(fā)布當(dāng)事務(wù)成功commit時(shí)觸發(fā)的事件
Events.instance().fireOnTransactionSuccess(eventName,arg1,arg2.);
//在事務(wù)中,發(fā)布當(dāng)事務(wù)完成(commit/rollback)時(shí)觸發(fā)的事件
Events.instance().fireOnTransactionCompletion(eventName,arg1,arg2
閱讀全文
建立功能級(jí)別的組件
摘要: 先做個(gè)廣告,去皮兒網(wǎng),可以每月26日通知你是否搖號(hào)中簽。http://www.qupier.com
一直以來,組件一直都建立在技術(shù)的層面上。由于業(yè)務(wù)的復(fù)雜多變,似乎沒有人想著把業(yè)務(wù)部分也做成可重用的組件。
我們團(tuán)隊(duì)在過去的兩年里面在這個(gè)方面做了一些常識(shí),寫出來供網(wǎng)友參考、拍磚。
閱讀全文
去皮兒網(wǎng)-每月26日通知你是否中簽
摘要: 緣起
人在北京,身邊很多人都在搖號(hào),我也在搖號(hào)。每個(gè)月26號(hào)都滿懷期待上網(wǎng)找到那個(gè)網(wǎng)站去查自己是否中簽。申請編碼難記,還特意放了個(gè)txt在桌面上。屢次不中,于是有些喪氣,卻依然每個(gè)月都要去查。后來某日突發(fā)靈感,公開的信息何不抓取一把然后寫個(gè)郵件通知給我。
于是就做了一個(gè)搖號(hào)結(jié)果通知的服務(wù)。后來和某高人聊,被提醒可以不必局限于此,可以發(fā)散一下,推廣到一種服務(wù)模式,最后就成了這個(gè)網(wǎng)站。
閱讀全文