tag:blogger.com,1999:blog-25265302968606972252009-07-16T07:22:33.834+01:00The official JBoss Cache blogThe official blog site for JBoss Cache, an open source, LGPL licensed clustering and caching library.Manik Surtanihttp://www.blogger.com/profile/09780985868877754056noreply@blogger.comBlogger63125tag:blogger.com,1999:blog-2526530296860697225.post-15399420221129479122009-05-05T09:58:00.003+01:002009-05-05T10:06:57.802+01:00JBoss Cache 3.1.0 Cascabel in final releaseI've just released JBoss Cache 3.1.0.GA, codenamed <span style="font-style: italic;">Cascabel</span>. The big feature in this release is non-blocking state transfer, which allows for state to be transferred to new joiners in a cluster without freezing the cluster. I blogged about non-blocking state transfer some months ago, <a href="http://jbosscache.blogspot.com/2009/03/jboss-cache-310beta1.html">here</a>.<br /><br />Other changes include some critical bug fixes such as <a href="https://jira.jboss.org/jira/browse/JBCACHE-1490">JBCACHE-1490</a>, <a href="https://jira.jboss.org/jira/browse/JBCACHE-1496">JBCACHE-1496</a>, <a href="https://jira.jboss.org/jira/browse/JBCACHE-1507">JBCACHE-1507</a> and <a href="https://jira.jboss.org/jira/browse/JBCACHE-1508">JBCACHE-1508</a>. New features - in addition to non-blocking state transfer - include a new <a href="https://jira.jboss.org/jira/browse/JBCACHE-1494">lock-per-Fqn scheme</a> for MVCC, which provides greater concurrency than the striped lock mechanism at the cost of memory usage and a slight performance hit.<br /><br />The complete list of JIRAs addressed is <a href="https://jira.jboss.org/jira/secure/ConfigureReport.jspa?versions=12311895&amp;sections=.1.7.2.4.10.9.8.3.12.11.5&amp;style=none&amp;selectedProjectId=10051&amp;reportKey=pl.net.mamut%3Areleasenotes&amp;Next=Next">here</a>.<br /><br />Downloads, documentation, etc are all in the usual place.<br /><br />Enjoy!<br />Manikc<div class="blogger-post-footer"><img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2526530296860697225-1539942022112947912?l=jbosscache.blogspot.com'/></div>Manik Surtanihttp://www.blogger.com/profile/09780985868877754056noreply@blogger.com3tag:blogger.com,1999:blog-2526530296860697225.post-90724540936934055352009-04-29T15:57:00.003+01:002009-04-29T15:59:38.639+01:00Announcing InfinispanI'd like to announce <a href="http://www.infinispan.org">Infinispan</a>, the spiritual successor to JBoss Cache. Read all about it on the <a href="http://infinispan.blogspot.com/2009/04/infinispan-start-of-new-era-in-open.html">Infinispan blog</a>. And for those of you wondering about the future of JBoss Cache, this is addressed in the <a href="http://www.jboss.org/community/wiki/InfinispanProjectFAQs">Infinispan FAQs</a>.<br /><br />Also note that Infinispan 4.0.0.ALPHA2 is now available for download. Please give it a go, feedback much appreciated.<br /><br />Cheers<br />Manik<div class="blogger-post-footer"><img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2526530296860697225-9072454093693405535?l=jbosscache.blogspot.com'/></div>Manik Surtanihttp://www.blogger.com/profile/09780985868877754056noreply@blogger.com0tag:blogger.com,1999:blog-2526530296860697225.post-54504721205875016742009-04-02T17:26:00.002+01:002009-04-02T17:30:13.867+01:00JBoss Cache 3.1.0.CR1 releasedAnnouncing the first CR on Cascabel. Click <a href="https://jira.jboss.org/jira/secure/ConfigureReport.jspa?versions=12313446&amp;versions=12313447&amp;versions=12313396&amp;sections=.1.7.2.4.10.9.8.3.12.11.5&amp;style=none&amp;selectedProjectId=10051&amp;reportKey=pl.net.mamut%3Areleasenotes&amp;Next=Next">here</a> for the changelog, <a href="http://www.jboss.org/community/docs/DOC-12844">downloads</a> and <a href="http://www.jboss.org/community/docs/DOC-12843">docs</a> are in the usual places. Please grab them and provide as much feedback as possible, especially on non-blocking state transfer.<br /><br />Cheers<br />Manik<div class="blogger-post-footer"><img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2526530296860697225-5450472120587501674?l=jbosscache.blogspot.com'/></div>Manik Surtanihttp://www.blogger.com/profile/09780985868877754056noreply@blogger.com4tag:blogger.com,1999:blog-2526530296860697225.post-34109120384135817692009-03-26T10:15:00.003Z2009-03-26T10:24:01.761ZJBoss Cache and the communityRoberto Tyley, who provided an important fix to JBoss Cache's eviction queue processing code in <a href="https://jira.jboss.org/jira/browse/JBCACHE-1473">JBCACHE-1473</a>, has written <a href="http://www.guardian.co.uk/help/insideguardian/2009/mar/25/sharing-contributing-caching">an excellent article</a> on open source, using the sources, finding, analysing bugs and contributing to the project. He also has an interesting use case for JBoss Cache, using the cache in front of a database on a high-volume site such as <a href="http://www.guardian.co.uk/">The Guardian</a>, a major newspaper here in the UK. I encourage you to have a read, along with <a href="http://jbosscache.blogspot.com/2009/02/jboss-cache-in-load-testing.html">Frederik Johansson's article</a> on using JBoss Cache for simulating distributed load for online gaming.<br /><br />Does anyone else have interesting usage stories they would like to share?<br /><br />Cheers<br />Manik<div class="blogger-post-footer"><img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2526530296860697225-3410912038413581769?l=jbosscache.blogspot.com'/></div>Manik Surtanihttp://www.blogger.com/profile/09780985868877754056noreply@blogger.com1tag:blogger.com,1999:blog-2526530296860697225.post-76359460947028435962009-03-20T15:29:00.004Z2009-03-21T08:48:57.835ZJBoss Cache 3.1.0.BETA13.1.0's been somewhat delayed due to problems with Non-blocking State Transfer, but these have finally been overcome.<br /><br />Here's a quick summary first. The first Beta of JBoss Cache 3.1.0 <span style="font-style: italic;">Cascabel</span> is now available in the usual places (<a href="http://www.jboss.org/community/docs/DOC-12844">download</a>, <a href="http://www.jboss.org/community/docs/DOC-12843">docs</a>, <a href="http://www.jboss.com/index.html?module=bb&amp;op=viewforum&amp;f=157">forums</a>). The main feature of <span style="font-style: italic;">Cascabel</span> is <a href="https://jira.jboss.org/jira/browse/JBCACHE-1236">Non-blocking State Transfer</a>, a new and highly efficient state transfer mechanism. Also, since MVCC was introduced in JBoss Cache 3.0.0 <span style="font-style: italic;">Naga</span>, lock striping was used for the write locks held by nodes. While lock striping is efficient, it always exposes a slight risk of deadlock. In Cascabel, we now offer a <a href="https://jira.jboss.org/jira/browse/JBCACHE-1494">lock-per-Fqn option</a> for MVCC, which is more expensive than striped locks but is guaranteed to be deadlock-free. In addition, there are <a href="https://jira.jboss.org/jira/secure/ConfigureReport.jspa?versions=12313396&amp;sections=.1.7.2.4.10.9.8.3.12.11.5&amp;style=none&amp;selectedProjectId=10051&amp;reportKey=pl.net.mamut%3Areleasenotes&amp;Next=Next">a host of bug fixes across the board</a>, so this is definitely a version you should upgrade to if you use JBoss Cache 3.0.x.<br /><br />Now for the details, starting with Non-blocking State Transfer (NBST). NBST has certain pre-requisites, specifically, that you use MVCC for locking and that you use JGroups' STREAMING_STATE_TRANSFER protocol. NBST works by allowing state to be read, free of locks thanks to MVCC, streamed to the receiver, all the while allowing the sender to continue changing state. What is key is that the sender also maintains a transaction log for this period. Once the state is delivered to the recipient and applied, the transaction log is then also streamed across, until the transaction log reaches a predetermined, small size - or it is detected that the transaction log grows faster than it can be streamed. In either of these cases, a lock is acquired on all processing, causing the sender to block all new transactions for a short period while the last of the transaction log is streamed and applied. After this, both the sender and receiver release locks and start processing requests, the new joiner now at the same state as the sender.<br /><br />The main benefit of this approach is that the sender is not blocked for the majority of the time while generating and streaming state (made all the more apparent when there is a lot of state to send) and the cluster proceeds to operate. Naturally, the implementation is a fair deal more complicated than what is described quite simplistically above, with a fair few more details and edge cases to be dealt with. :-)<br /><br />NBST is disabled by default, but can be enabled by using a simple configuration switch (<span style="font-family:courier new;">Configuration.setUseNonBlockingStateTransfer()</span> or <span style="font-family:courier new;">&lt;stateretrieval nonblocking="true" /&gt;</span>).<br /><br />So do give it a whirl, feedback, as always, is appreciated.<br /><br />Cheers<br />Manik<div class="blogger-post-footer"><img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2526530296860697225-7635946094702843596?l=jbosscache.blogspot.com'/></div>Manik Surtanihttp://www.blogger.com/profile/09780985868877754056noreply@blogger.com4tag:blogger.com,1999:blog-2526530296860697225.post-30179617193378783342009-02-24T10:07:00.004Z2009-02-24T10:23:15.996ZJBoss Cache 3.0.3.GA releasedBased on the CR I released 2 weeks back, I have just released <span style="font-weight: bold;">3.0.3.GA</span>. I recommend that everyone who is on JBoss Cache 2.x and 3.x move to this release, it is the fastest, most stable release to date. This incremental release on 3.x contains the following bugfixes and feature requests:<br /> <ul><li><span style="font-size:100%;"> [ <a href="https://jira.jboss.org/jira/browse/JBCACHE-1470">JBCACHE-1470</a> ] Option to disable cache event generation for a cache operation.</span></li><li>[ <a href="https://jira.jboss.org/jira/browse/JBCACHE-1468">JBCACHE-1468</a> ] JBoss Cache ignores transactions with STATUS_MARKED_ROLLBACK and auto commits data changes </li><li> [ <a href="https://jira.jboss.org/jira/browse/JBCACHE-1469">JBCACHE-1469</a> ] DummyBaseTransactionManager behaves incorrectly with Status.STATUS_MARKED_ROLLBACK </li><li> [ <a href="https://jira.jboss.org/jira/browse/JBCACHE-1473">JBCACHE-1473</a> ] Memory leak: Cache Regions lose capacity, evictCommand.perform() causes dead entries in EvictionQueue </li><li> [ <a href="https://jira.jboss.org/jira/browse/JBCACHE-1474">JBCACHE-1474</a> ] Removing nonexistent key in UnversionedNode causes data loss </li><li> [ <a href="https://jira.jboss.org/jira/browse/JBCACHE-1477">JBCACHE-1477</a> ] Bug in JDBC cache loader SQL on Informix </li><li> [ <a href="https://jira.jboss.org/jira/browse/JBCACHE-1478">JBCACHE-1478</a> ] Handle querying node count in an unstarted DataContainer </li><li> [ <a href="https://jira.jboss.org/jira/browse/JBCACHE-1479">JBCACHE-1479</a> ] Loads nodes from cache loader too aggresively </li><li> [ <a href="https://jira.jboss.org/jira/browse/JBCACHE-1480">JBCACHE-1480</a> ] getChildrenNames() returns deleted nodes </li><li> [ <a href="https://jira.jboss.org/jira/browse/JBCACHE-1481">JBCACHE-1481</a> ] Re-adding a node deleted via parent inside transaction breaks the parent</li><li> [ <a href="https://jira.jboss.org/jira/browse/JBCACHE-1471">JBCACHE-1471</a> ] Slow cache.get for fqn with a large number of key/value entries. </li></ul>Thanks to Krzysztof Sobolewski, Roberto Tyley, Eduardo Martins, Galder ZamarreƱo and Alex Kluge for useful bug reports, tests and patches.<br /><br /><a href="http://www.jboss.org/community/docs/DOC-12844">Downloads</a> and <a href="http://www.jboss.org/community/docs/DOC-12843">documentation</a> are in the usual place, please use the <a href="http://www.jboss.org/index.html?module=bb&amp;op=viewforum&amp;f=157">user forums</a> to discuss this release.<br /><br />Enjoy!<br />Manik<div class="blogger-post-footer"><img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2526530296860697225-3017961719337878334?l=jbosscache.blogspot.com'/></div>Manik Surtanihttp://www.blogger.com/profile/09780985868877754056noreply@blogger.com0tag:blogger.com,1999:blog-2526530296860697225.post-72560298652750864202009-02-13T15:32:00.004Z2009-02-13T15:42:38.601ZWhat to expect in JBoss CacheSo we're about to cut <span style="font-weight: bold;">JBoss Cache 3.1.0 "</span><span style="font-style: italic; font-weight: bold;">Cascabel</span><span style="font-weight: bold;">"</span> - and the main feature here is the high-performance <a href="http://www.jboss.org/community/docs/DOC-10275">non-blocking state transfer</a> (NBST) scheme we've been planning for a while now, held back due to the lack of non-blocking reads in the past. Thanks to <a href="http://jbosscache.blogspot.com/2008/07/mvcc-has-landed.html">MVCC</a>, we now have non-blocking reads, and thanks to <a href="http://www.jboss.org/community/people/jason.greene%40jboss.com">Jason Greene</a>, an impressive non-blocking state transfer implementation. Expect a beta of Cascabel to be made available in the coming days/weeks, along with a detailed write-up of NBST.<br /><br />But in the meantime, I've just cut <span style="font-weight: bold;">JBoss Cache 3.0.3.CR1</span>. This CR fixes <a href="https://jira.jboss.org/jira/secure/ConfigureReport.jspa?versions=12313259&amp;sections=.1.7.2.4.10.9.8.3.12.11.5&amp;style=none&amp;selectedProjectId=10051&amp;reportKey=pl.net.mamut%3Areleasenotes&amp;Next=Next">a number of bugs</a> - some critical - on Naga, and I strongly recommend anyone using Naga to download and test out 3.0.3.CR1. I expect this to be a very short CR cycle so please test heavily and provide as much feedback as you can, I expect a 3.0.3.GA to be released very soon.<br /><br />You can download the CR in the usual place on SourceForge, or grab it from our Maven2 repository.<br /><br />Cheers<br />Manik<div class="blogger-post-footer"><img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2526530296860697225-7256029865275086420?l=jbosscache.blogspot.com'/></div>Manik Surtanihttp://www.blogger.com/profile/09780985868877754056noreply@blogger.com0tag:blogger.com,1999:blog-2526530296860697225.post-92177893933689091562009-02-10T20:08:00.003Z2009-03-26T10:21:54.514ZJBoss Cache in load testingI'm always keen to know how the community uses JBoss Cache. I was recently pointed to an excellent article by Frederik Johansson who uses JBoss Cache to build a load test harness to simulate tens of thousands of players in high capacity multiplayer online gaming systems.<br /><br />Check out his wonderfully detailed yet accessible article <a href="http://www.cubeia.com/index.php?option=com_content&amp;task=view&amp;id=28&amp;Itemid=9">on his blog</a>.<br /><br />If anyone else has success stories they would like to share, I'd love to hear them.<br /><br />Cheers<br />Manik<div class="blogger-post-footer"><img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2526530296860697225-9217789393368909156?l=jbosscache.blogspot.com'/></div>Manik Surtanihttp://www.blogger.com/profile/09780985868877754056noreply@blogger.com0tag:blogger.com,1999:blog-2526530296860697225.post-36036615945937726122009-01-26T11:06:00.003Z2009-01-26T11:08:30.447ZNew maintenance release on 1.4.1I've just released 1.4.1.SP12, a patch release on "<span style="font-style: italic;">Cayenne</span>", which is in maintenance mode.<br /><br />This contains just one fix over SP11 - <a href="https://jira.jboss.org/jira/browse/JBCACHE-1304">JBCACHE-1304</a> - a backport from 2.x, thanks to Brian Dueck who contributed the patch.<br /><br />Downloads, etc. are all in their usual places.<br /><br />Enjoy!<br />Manik<div class="blogger-post-footer"><img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2526530296860697225-3603661594593772612?l=jbosscache.blogspot.com'/></div>Manik Surtanihttp://www.blogger.com/profile/09780985868877754056noreply@blogger.com0tag:blogger.com,1999:blog-2526530296860697225.post-43296238524919159102009-01-20T16:18:00.002Z2009-01-20T16:33:54.918Z3.0.2.GA ready for downloadI've just cut <span style="font-weight: bold;">3.0.2.GA</span>. Thanks to everyone for all the feedback on the CRs. This is an important micro release, addressing a number of bugs in 3.0.1.GA. For a full list, please visit <a href="https://jira.jboss.org/jira/secure/ConfigureReport.jspa?versions=12313070&amp;sections=.1.7.2.4.10.9.8.3.12.11.5&amp;style=none&amp;selectedProjectId=10051&amp;reportKey=pl.net.mamut%3Areleasenotes&amp;Next=Next">JIRA for the release notes</a>. In addition to bug fixes, this release comes with some performance (JDBC cache loader) and stability (TcpDelegatingCacheLoader) improvements, and a tighter overall memory footprint.<br /><br />Thanks to several contributors, including Elias Ross, Jimmy Wilson, Galder ZamarreƱo, J. Baxter, Brian Stansberry and Krzysztof Sobolewski for submitting patches. Keep 'em coming!<br /><br />Also, useful to note, the parallel test suite is finally in place as of this release. This cuts down our unit test time, running 3500+ tests takes under 10 minutes now. This is down from the 2+ hours it used to take. Thanks to Mircea Markus and Dominik Pospisil for getting this working; I know what a PITA it is debugging threading issues involving Maven Surefure and TestNG. :-)<br /><br /><a href="http://www.jboss.org/community/docs/DOC-12844">Download 3.0.2.GA here</a> (or our <a href="http://repository.jboss.org/maven2/org/jboss/cache/jbosscache-core">Maven2 repo</a>), <a href="http://www.jboss.org/community/docs/DOC-12843">docs</a> and the rest are all in their usual places.<br /><br />Enjoy!<br />Manik<div class="blogger-post-footer"><img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2526530296860697225-4329623852491915910?l=jbosscache.blogspot.com'/></div>Manik Surtanihttp://www.blogger.com/profile/09780985868877754056noreply@blogger.com0tag:blogger.com,1999:blog-2526530296860697225.post-39167579817987372312009-01-12T14:32:00.002Z2009-01-12T14:36:15.785ZJBoss Cache 3.0.2.CR2 is outI've just released <span style="font-weight: bold;">3.0.2.CR2</span>, possibly the final CR before I cut <span style="font-weight: bold;">3.0.2.GA</span>. 3.0.2.GA will contain a handful of bugfixes on 3.0.1, including:<br /> <ul><li>[ <a href="https://jira.jboss.org/jira/browse/JBCACHE-1447">JBCACHE-1447</a> ] JDBM cache loader remove of the root childeren doesn't clear the data </li><li> [ <a href="https://jira.jboss.org/jira/browse/JBCACHE-1450">JBCACHE-1450</a> ] putForExternalRead() doesn't use a 0 lock acquisition timeout with MVCC </li><li> [ <a href="https://jira.jboss.org/jira/browse/JBCACHE-1452">JBCACHE-1452</a> ] JDBCCacheLoader Doesn't Work With Sybase </li><li> [ <a href="https://jira.jboss.org/jira/browse/JBCACHE-1454">JBCACHE-1454</a> ] Memory leak in CacheStoreInterceptor </li><li> [ <a href="https://jira.jboss.org/jira/browse/JBCACHE-1455">JBCACHE-1455</a> ] Rollback corrupts nodes loaded from cache loader </li><li> [ <a href="https://jira.jboss.org/jira/browse/JBCACHE-1456">JBCACHE-1456</a> ] The root node starts with "children loaded" flag </li><li> [ <a href="https://jira.jboss.org/jira/browse/JBCACHE-1457">JBCACHE-1457</a> ] TcpCacheServer: Listening thread should attempt recovery </li><li> [ <a href="https://jira.jboss.org/jira/browse/JBCACHE-1459">JBCACHE-1459</a> ] FastCopyHashMaps misbehave when serialized and then deserialized </li><li> [ <a href="https://jira.jboss.org/jira/browse/JBCACHE-1460">JBCACHE-1460</a> ] Inefficient remove() in JDBCCacheLoader </li></ul>Please download this, give it a try and provide as much feedback as possible. Downloads are in the <a href="http://www.jboss.org/community/docs/DOC-12844">usual place</a>.<br /><br />Cheers<br />Manik<div class="blogger-post-footer"><img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2526530296860697225-3916757981798737231?l=jbosscache.blogspot.com'/></div>Manik Surtanihttp://www.blogger.com/profile/09780985868877754056noreply@blogger.com0tag:blogger.com,1999:blog-2526530296860697225.post-57220182073410548462009-01-04T22:33:00.004Z2009-01-05T12:03:30.989ZA New Year's present from JBCSHey guys,<br /><br />Been quite a while since my last blog but here's an important one. If you thought that you couldn't get enough presents from Santa or you're loving the January sales, well it's getting better now. JBoss Cache Searchable has just got its first GA.<br /><br />I just want to specify now that you have to pass in your class array when creating your searchable cache. Otherwise it breaks due to changes made in Hibernate Search 3.1.0.Beta and GA.<br /><br />Apart from that, nothing different externally - go out and download it from <a href="http://sourceforge.net/project/showfiles.php?group_id=22866&amp;package_id=102339">sourceforge</a> and tell us all about it on the <a href="http://www.jboss.com/index.html?module=bb&amp;op=viewforum&amp;f=286">forums</a>. If you need to, have a look at the <a href="http://www.jboss.org/community/docs/DOC-10286">wiki</a> or the <a href="http://www.jboss.org/community/docs/DOC-12843">API</a> documentation.<br /><br />I know that several people are keen to know about a searchable-pojo cache. A quick update is that I'm working on that and should have a release out soon. I will keep you posted, so watch this space.<br /><br />Thanks and happy new year!<br />Navin.<div class="blogger-post-footer"><img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2526530296860697225-5722018207341054846?l=jbosscache.blogspot.com'/></div>Nilima Gulrajanihttp://www.blogger.com/profile/17311355002987819058noreply@blogger.com1tag:blogger.com,1999:blog-2526530296860697225.post-2445138908679128702008-12-19T16:04:00.003Z2008-12-19T17:30:01.140ZAnother micro release on 3.xI've just released 3.0.2.CR1, and hopefully if nothing else crops up, 3.0.2.GA before the end of the year.<br /><br />This release fixes 4 bugs, reported on 3.0.1.GA released a short while ago. Details of the bugs are <a href="https://jira.jboss.org/jira/secure/ConfigureReport.jspa?versions=12313069&amp;sections=.1.7.2.4.10.9.8.3.12.11.5&amp;style=none&amp;selectedProjectId=10051&amp;reportKey=pl.net.mamut%3Areleasenotes&amp;Next=Next">here</a>.<br /><br />Please <a href="http://www.jboss.org/community/docs/DOC-12844">download</a> and try out this CR, and provide adequate feedback on the <a href="http://www.jboss.com/index.html?module=bb&amp;op=viewforum&amp;f=157">user forums</a> prior to my releasing a GA.<br /><br />Cheers<br />Manik<div class="blogger-post-footer"><img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2526530296860697225-244513890867912870?l=jbosscache.blogspot.com'/></div>Manik Surtanihttp://www.blogger.com/profile/09780985868877754056noreply@blogger.com0tag:blogger.com,1999:blog-2526530296860697225.post-34050188565150415312008-11-28T13:15:00.003Z2008-11-28T13:24:55.030ZNew micro release on JBoss Cache NagaWe've just released JBoss Cache 3.0.1.GA. This contains a few bug fixes and performance enhancements over 3.0.0, and is particularly relevant to you if you use asynchronous replication<span style="font-style: italic;"> together with </span>buddy replication<span style="font-style: italic;">. </span>It is also relevant if you use passivation, or JMX reporting on Websphere or WebLogic.<br /><br />For a list of the JIRAs fixed in this release, please click <a href="https://jira.jboss.org/jira/secure/ConfigureReport.jspa?versions=12313000&amp;sections=.1.7.2.4.10.9.8.3.12.11.5&amp;style=none&amp;selectedProjectId=10051&amp;reportKey=pl.net.mamut%3Areleasenotes&amp;Next=Next">here</a>.<br /><br />This release can be downloaded <a href="http://www.jboss.org/community/docs/DOC-12844">here</a>, documentation <a href="http://www.jboss.org/community/docs/DOC-12843">here</a>, please discuss this release on <a href="http://www.jboss.com/index.html?module=bb&amp;op=main&amp;c=29">the user forums</a>.<br /><br />Thanks to Dominik Pospisil and Brian Stansberry for helping with this.<br /><br />Cheers &amp; Enjoy!<br />Manik<div class="blogger-post-footer"><img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2526530296860697225-3405018856515041531?l=jbosscache.blogspot.com'/></div>Manik Surtanihttp://www.blogger.com/profile/09780985868877754056noreply@blogger.com0tag:blogger.com,1999:blog-2526530296860697225.post-58076987795878083532008-11-19T21:14:00.002Z2008-11-19T21:19:42.858ZJBoss Cache 3.0.0 goes GAThis much awaited release is finally in GA, in both <span style="font-style: italic;">core</span> and <span style="font-style: italic;">POJO</span> editions. <br /><br />Downloads are <a href="http://www.jboss.org/community/docs/DOC-12844">here</a>, online documentation is <a href="http://www.jboss.org/community/docs/DOC-12843">here</a>, the extensive JIRA changelog is <a href="https://jira.jboss.org/jira/secure/ConfigureReport.jspa?versions=12310097&amp;sections=.1.7.2.4.10.9.8.3.12.11.5&amp;style=none&amp;selectedProjectId=10051&amp;reportKey=pl.net.mamut%3Areleasenotes&amp;Next=Next">here for core</a> and <a href="https://jira.jboss.org/jira/secure/ConfigureReport.jspa?versions=12311709&amp;sections=.1.7.2.4.10.9.8.3.12.11.5&amp;style=none&amp;selectedProjectId=12310470&amp;reportKey=pl.net.mamut%3Areleasenotes&amp;Next=Next">here for POJO</a>, and finally the user forums are <a href="http://www.jboss.com/index.html?module=bb&amp;op=main&amp;c=29">here</a>.<br /><br />There are a lot of folk to thank for this release, in no particular order, Mircea Markus, Jason Greene, Dominik Pospisil, Brian Stansberry and Elias Ross.<br /><br />Have fun!<br /><br />Cheers<br />Manik<div class="blogger-post-footer"><img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2526530296860697225-5807698779587808353?l=jbosscache.blogspot.com'/></div>Manik Surtanihttp://www.blogger.com/profile/09780985868877754056noreply@blogger.com1tag:blogger.com,1999:blog-2526530296860697225.post-67612464615199496892008-11-03T18:06:00.001Z2008-11-03T18:08:04.410ZYet another CRYes, I know I promised 3.0.0.CR2 would be the last CR before going GA, but ...<br /><br />I've just cut 3.0.0.CR3 with some minor fixes. Please check it out, test it as much as you can internally, and watch this space for a GA in the coming weeks. Everything is in their usual place.<br /><br />Cheers<br />Manik<div class="blogger-post-footer"><img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2526530296860697225-6761246461519949689?l=jbosscache.blogspot.com'/></div>Manik Surtanihttp://www.blogger.com/profile/09780985868877754056noreply@blogger.com0tag:blogger.com,1999:blog-2526530296860697225.post-4110849528122692822008-10-23T18:44:00.016+01:002008-10-24T02:10:07.681+01:00Final CR for Naga - with more benchmarksSo I've decided to cut another CR on 3.0.0. I wasn't originally planning on it and this would have gone gold save for the fact that a few important JIRAs did get in, which have pretty significant impact on performance (going northwards, of course - <a href="https://jira.jboss.org/jira/browse/JBCACHE-1419">JBCACHE-1419</a> is notable, which contributed to a huge performance boost on async replication).<br /><br />Anyway, to cut a long story short, download this final CR <a href="http://www.jboss.org/community/docs/DOC-12844">here</a>, provide feedback <a href="http://www.jboss.com/index.html?module=bb&amp;op=viewforum&amp;f=157">here</a>. Changelog is in <a href="https://jira.jboss.org/jira/secure/ConfigureReport.jspa?versions=12312862&amp;sections=.1.7.2.4.10.9.8.3.12.11.5&amp;style=none&amp;selectedProjectId=10051&amp;reportKey=pl.net.mamut%3Areleasenotes&amp;Next=Next">JIRA</a>, and all-new documentation <a href="http://www.jboss.org/community/docs/DOC-12843">is also available</a> at last. If all goes well, I hope to cut a GA towards the end of next week, so I would appreciate as much feedback as possible - both on the release, as well as the documentation, tutorials, sample configs, etc.<br /><br />And now for the fun stuff - I've finally found the time to put together some replicated benchmarks, to go with <a href="http://jbosscache.blogspot.com/2008/09/naga-beta1-ready-to-rock-and-roll.html">the standalone benchmarks</a> I published a while back.<br /><br /><span style="font-weight: bold;">Kit used</span><br /><br />The benchmarks were run on Red Hat's lab cluster of 8 servers, connected via gigabit ethernet.<ul><li>Quad-CPU Intel Xeon 3GHz servers with 4GB of RAM each</li><li>RHEL 4 x86_64 with kernel version 2.6.9-42.0.10.ELsmp</li><li>SUN JDK 1.5.0_11-b03 (32-bit)</li><li>Benchmarks generated using the <a href="http://www.jboss.org/community/docs/DOC-9241">CacheBenchFramework</a></li><li>A single thread on each server instance, reading 90% of the time and writing 10% of the time</li></ul><span style="font-style: italic;">NB: You can click on the images to download full-sized versions</span><br /><br /><span style="font-weight: bold;">Benchmark 1: Comparing 2.2.0 "Poblano" and 3.0.0 "Naga" (synchronous replication)</span><br /><br />This benchmark compares 2.2.0.GA with 3.0.0.CR2, using synchronous replication and pessimistic locking (Poblano) and MVCC (Naga).<br /><br /><a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_ca0W9t-Ryos/SQEbkNrICKI/AAAAAAAAACk/NN-WnKZzzxI/s1600-h/1-chart-averageThroughput.png"><img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 400px; height: 300px;" src="http://4.bp.blogspot.com/_ca0W9t-Ryos/SQEbkNrICKI/AAAAAAAAACk/NN-WnKZzzxI/s400/1-chart-averageThroughput.png" alt="" id="BLOGGER_PHOTO_ID_5260516148705233058" border="0" /></a><a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_ca0W9t-Ryos/SQEbkN9yiuI/AAAAAAAAACs/2krGm0HWg_s/s1600-h/1-chart-totalThroughput.png"><img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 400px; height: 300px;" src="http://2.bp.blogspot.com/_ca0W9t-Ryos/SQEbkN9yiuI/AAAAAAAAACs/2krGm0HWg_s/s400/1-chart-totalThroughput.png" alt="" id="BLOGGER_PHOTO_ID_5260516148783516386" border="0" /></a><br />The performance gain is between 10 and 20% for synchronous replication, and a pretty consistent 20% when using buddy replication. A large part of this is MVCC locking, but also other improvements in the code base play a part, including more efficient marshalling.<br /><br />The total aggregate throughput chart shows that buddy replication (still) scales almost linearly. Increasing cluster size directly benefits the overall throughput the entire cluster can handle.<br /><span style="font-weight: bold;"><br />Benchmark 2: Comparing 2.2.0 "Poblano" and 3.0.0 "Naga" (asynchronous replication)</span><br /><br />This had to be a separate benchmark from the synchronous one since the throughput is so much higher than sync replication it made a combined charts unreadable!<br /><br /><a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_ca0W9t-Ryos/SQEbkl8eTnI/AAAAAAAAAC0/1WRAthwkvK8/s1600-h/2-chart-averageThroughput.png"><img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 400px; height: 300px;" src="http://4.bp.blogspot.com/_ca0W9t-Ryos/SQEbkl8eTnI/AAAAAAAAAC0/1WRAthwkvK8/s400/2-chart-averageThroughput.png" alt="" id="BLOGGER_PHOTO_ID_5260516155220446834" border="0" /></a><a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_ca0W9t-Ryos/SQEbkyHaXyI/AAAAAAAAAC8/gpDI8FW3aXg/s1600-h/2-chart-totalThroughput.png"><img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 400px; height: 300px;" src="http://1.bp.blogspot.com/_ca0W9t-Ryos/SQEbkyHaXyI/AAAAAAAAAC8/gpDI8FW3aXg/s400/2-chart-totalThroughput.png" alt="" id="BLOGGER_PHOTO_ID_5260516158487551778" border="0" /></a><a href="https://jira.jboss.org/jira/browse/JBCACHE-1419">JBCACHE-1419</a> is the main contributor to the phenomenal performance gains in async replication in Naga<a href="https://jira.jboss.org/jira/browse/JBCACHE-1419"></a>. For folks who use JBoss Cache with async replication, I <span style="font-weight: bold; font-style: italic;">strongly</span> encourage you to give Naga a try! :-)<br /><br /><span style="font-weight: bold;">Benchmark 3: Competitive analysis<br /></span><span><br />This is something a lot of people have been asking me for. For this benchmark, I've pitted <span style="font-weight: bold;">JBoss Cache 3.0.0.CR2</span> against <span style="font-weight: bold;">EHCache 1.5.0</span>, <span style="font-weight: bold;">Terracotta 2.5.0</span> and a popular commercial, closed-source distributed cache which will have to remain unnamed. I've called this <span style="font-weight: bold;">Cache X</span> in my charts.</span><span> I've used synchronous replication throughout since this is all that Cache X supported.<br /></span><br /><a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_ca0W9t-Ryos/SQEblLX3-NI/AAAAAAAAADE/EvbY5UExGdI/s1600-h/3-chart-averageThroughput.png"><img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 400px; height: 300px;" src="http://3.bp.blogspot.com/_ca0W9t-Ryos/SQEblLX3-NI/AAAAAAAAADE/EvbY5UExGdI/s400/3-chart-averageThroughput.png" alt="" id="BLOGGER_PHOTO_ID_5260516165267486930" border="0" /></a><a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_ca0W9t-Ryos/SQEdJeJa8GI/AAAAAAAAADM/u0wJMRDX9Vg/s1600-h/3-chart-totalThroughput.png"><img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 400px; height: 300px;" src="http://3.bp.blogspot.com/_ca0W9t-Ryos/SQEdJeJa8GI/AAAAAAAAADM/u0wJMRDX9Vg/s400/3-chart-totalThroughput.png" alt="" id="BLOGGER_PHOTO_ID_5260517888294056034" border="0" /></a>B<span>oth EHCache and Cache X slightly outperforms Naga on a 2-node cluster (not so slightly with EHCache), but these quickly fall behind as the cluster size increases, particularly in the case of EHCache. This is also reflected in the overall throughput chart. Buddy replication still shows linear scalability.<br /><br />All of these benchmarks are reproducible using the cache benchmark framework, but as with all benchmarks, these should be used as a guideline only. Real performance can only be measured in your environment, with your specific use case and data access patterns.</span><br /><span><br />Enjoy!<br />Manik</span><span style="font-weight: bold;"><br /><br /><br /></span><div class="blogger-post-footer"><img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2526530296860697225-411084952812269282?l=jbosscache.blogspot.com'/></div>Manik Surtanihttp://www.blogger.com/profile/09780985868877754056noreply@blogger.com8tag:blogger.com,1999:blog-2526530296860697225.post-37027487859655723072008-10-22T10:35:00.004+01:002008-10-22T10:41:56.062+01:00Another day, another GA.2.2.1.GA is out, folks. This micro release adds some serialization/replication (<a href="https://jira.jboss.org/jira/browse/JBCACHE-1382">JBCACHE-1382</a>) and JDBCCacheLoader (<a href="https://jira.jboss.org/jira/browse/JBCACHE-1414">JBCACHE-1414</a>) performance improvements, and fixes a <a href="https://jira.jboss.org/jira/secure/ConfigureReport.jspa?versions=12312804&amp;sections=.1.7.2.4.10.9.8.3.12.11.5&amp;style=none&amp;selectedProjectId=10051&amp;reportKey=pl.net.mamut%3Areleasenotes&amp;Next=Next">bunch of bugs</a> reported against 2.2.0.GA.<br /><br />Enjoy, everything (<a href="http://www.jboss.org/community/docs/DOC-12844">downloads</a>, <a href="http://www.jboss.org/community/docs/DOC-12843">docs</a>, <a href="http://www.jboss.com/index.html?module=bb&amp;op=viewforum&amp;f=157">forums</a>, <a href="https://jira.jboss.org/jira/browse/JBCACHE">JIRA</a>) is in their usual place.<br /><br />Cheers<br />Manik<br /><br /><a href="https://jira.jboss.org/jira/secure/ConfigureReport.jspa?versions=12312804&amp;sections=.1.7.2.4.10.9.8.3.12.11.5&amp;style=none&amp;selectedProjectId=10051&amp;reportKey=pl.net.mamut%3Areleasenotes&amp;Next=Next"> </a><div class="blogger-post-footer"><img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2526530296860697225-3702748785965572307?l=jbosscache.blogspot.com'/></div>Manik Surtanihttp://www.blogger.com/profile/09780985868877754056noreply@blogger.com0tag:blogger.com,1999:blog-2526530296860697225.post-69681346678648243952008-10-15T10:15:00.004+01:002008-10-15T10:21:42.959+01:002.2.1.CR2 is outThe 2nd and hopefully last CR on 2.2.1 has just been released. It is on the <a href="http://repository.jboss.org/maven2/org/jboss/cache/jbosscache-core/2.2.0.CR2/">JBoss Maven2 repository</a> and <a href="http://sourceforge.net/project/showfiles.php?group_id=22866&amp;package_id=102339&amp;release_id=633366">SourceForge</a>, as usual. Specifically, <a href="https://jira.jboss.org/jira/secure/ConfigureReport.jspa?versions=12312830&amp;sections=.1.7.2.4.10.9.8.3.12.11.5&amp;style=none&amp;selectedProjectId=10051&amp;reportKey=pl.net.mamut%3Areleasenotes&amp;Next=Next">these JIRAs</a> have been addressed between CR1 and CR2.<br /><br />In the meanwhile, I am just about to fly off to Krakow, Poland, to attend the <a href="http://08.jdd.org.pl/">Java Developer Day</a> conference, where I will be presenting <a href="http://08.jdd.org.pl/manik-surtani">on distributed caching</a>. If any of you will be around, looking forward to seeing you there!<br /><br />Cheers<br />Manik<div class="blogger-post-footer"><img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2526530296860697225-6968134667864824395?l=jbosscache.blogspot.com'/></div>Manik Surtanihttp://www.blogger.com/profile/09780985868877754056noreply@blogger.com0tag:blogger.com,1999:blog-2526530296860697225.post-81758106523774017062008-10-03T09:50:00.003+01:002008-10-03T10:34:57.904+01:00Minor release in Poblano - 2.2.1.CR1I've just cut 2.2.1.CR1, an evolution of 2.2.0.GA containing a few fixes around transactions and marshalling, and performance improvements in the JDBCCacheLoader. See this <a href="https://jira.jboss.org/jira/secure/ConfigureReport.jspa?versions=12312803&amp;sections=.1.7.2.4.10.9.8.3.12.11.5&amp;style=none&amp;selectedProjectId=10051&amp;reportKey=pl.net.mamut%3Areleasenotes&amp;Next=Next">changelog</a> for details.<br /><br />Downloads, etc. all in their usual places, enjoy!<br /><br />- Manik<div class="blogger-post-footer"><img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2526530296860697225-8175810652377401706?l=jbosscache.blogspot.com'/></div>Manik Surtanihttp://www.blogger.com/profile/09780985868877754056noreply@blogger.com0tag:blogger.com,1999:blog-2526530296860697225.post-25379787721917323192008-09-29T08:50:00.000+01:002008-09-29T08:56:45.479+01:00First CR for 3.0.0Late Friday I cut the first CR for Naga - <span style="font-weight: bold;">3.0.0.CR1</span> is now in our <a href="http://repository.jboss.org/maven2/org/jboss/cache/jbosscache-core/3.0.0.CR1/">Maven2 repo</a> and on <a href="http://www.jboss.org/jbosscache/download/index.html">jboss.org</a> for you to download.<br /><br />There are a host of new features, fixed bugs and performance tweaks in CR1 - check out <a href="https://jira.jboss.org/jira/secure/ConfigureReport.jspa?versions=12312753&amp;sections=.1.7.2.4.10.9.8.3.12.11.5&amp;style=none&amp;selectedProjectId=10051&amp;reportKey=pl.net.mamut%3Areleasenotes&amp;Next=Next">the release notes on JIRA</a> for the details.<br /><br />Finally, I would like to add that this is not strictly a CR in that I can't release this as a GA. The documentation - FAQs, user guide and tutorial - still needs to be brought up to date with all the new features in Naga, but apart from that, the code is ready for the prime time. Pending feedback, bug reports, and the like, of course.<br /><br />So, please treat this release as something close to prodution quality and feed back as much as you can on the <a href="http://www.jboss.com/index.html?module=bb&amp;op=viewforum&amp;f=157">user forums</a> - this is really important to us. What I am particularly interested to hear are, in addition to comments on new features:<br /><br /><ul><li>Performance under load</li><li>Performance in large clusters</li><li>Backward compatibility against code written for JBC 2.x</li></ul>I look forward to hearing from you!<br /><br />Cheers<br />Manik<div class="blogger-post-footer"><img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2526530296860697225-2537978772191732319?l=jbosscache.blogspot.com'/></div>Manik Surtanihttp://www.blogger.com/profile/09780985868877754056noreply@blogger.com8tag:blogger.com,1999:blog-2526530296860697225.post-44604358432664528762008-09-25T18:45:00.010+01:002008-09-26T16:06:16.739+01:00JBCS 1.0.0 CR1 powered upHello hello all, I come out of the darkness for the first time in a couple of weeks: -<br /><br />As the title suggests, the first release candidate for JBoss Cache Searchable is up and running - download <a href="http://sourceforge.net/project/showfiles.php?group_id=22866&amp;package_id=102339">here</a>. Some of you who are more inquisitive might be wondering what's actually changed from Beta 1.<br /><br />Here's what's new. The 2 iterator methods on CacheQuery - iterator() and lazyIterator() - both can be called with integer parameters. Your fetchSize - your object buffer. This doesn't mean that the method calls with no parameters won't work, that just delegates to the method with parameters and gives a default parameter of 1. If you're more interested and want to dig deeper, have a look on <a href="http://fisheye.jboss.org/browse/JBossCache/searchable">fisheye</a>.<br /><br />As usual, have a play around and if there are any problems, you can find me on the <a href="http://www.jboss.com/index.html?module=bb&amp;op=viewforum&amp;f=286">forums</a>.<br /><br />On the horizon, I'm looking at releasing a version of the searchable-cache that depends on JBoss Cache 3.0.0. Personally, I'm quite excited to see how searchable-cache performance will change when it's depending on 3.0.0. I will keep you updated :).<br /><br />Thanks for listening,<br />Navin.<div class="blogger-post-footer"><img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2526530296860697225-4460435843266452876?l=jbosscache.blogspot.com'/></div>Nilima Gulrajanihttp://www.blogger.com/profile/17311355002987819058noreply@blogger.com0tag:blogger.com,1999:blog-2526530296860697225.post-82669108161681183342008-09-18T18:31:00.003+01:002008-09-18T18:33:40.818+01:00Caching, parallelism and scalabilityDZone have just published an article by yours truly on Caching, Parallelism and Scalability. Check it out!<br /><br /><a href="http://java.dzone.com/articles/caching-parallelism-scalability">http://java.dzone.com/articles/caching-parallelism-scalability</a><br /><br />- Manik<div class="blogger-post-footer"><img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2526530296860697225-8266910816168118334?l=jbosscache.blogspot.com'/></div>Manik Surtanihttp://www.blogger.com/profile/09780985868877754056noreply@blogger.com0tag:blogger.com,1999:blog-2526530296860697225.post-19359664121369429892008-09-03T15:00:00.001+01:002008-09-03T15:00:01.845+01:00Naga Beta1 - ready to rock and roll!I've got a number of treats for you guys today.<br /><br />Firstly, I've just released 3.0.0 BETA1. The public API is finally stable and all major features are in. A few minor bugs and performance tweaks (and documentation) pending, this is pretty much what <span style="font-style: italic;">Naga</span> will look like. Expect it to rock your world! ;)<br /><br />Second, after much discussion with the community, I have decided to make <span style="font-style: italic;">Naga</span> API compatible with 2.x releases (<span style="font-style: italic;">Poblano</span>, <span style="font-style: italic;">Alegrias</span> and <span style="font-style: italic;">Habanero</span>). This means a somewhat more cluttered API and a pile of old, deprecated methods, but at least it means you can just drop in a <span style="font-style: italic;">Naga</span> jar into an app compiled against 2.x and expect things to work. You could then update your code to use more "current" APIs at your leisure. Keep in mind though that <span style="font-style: italic;">Naga</span> runs with <span style="font-family:courier new;">MVCC</span> by default. If you wish to use <span style="font-family:courier new;">PESSIMISTIC</span> locking (the previous default) please make sure you specify this explicitly in your config file.<br /><br />Finally, at long last, I have pretty pictures for people. Benchmarks comparing 3.0.0.BETA1 against 2.2.0.GA (released just last weekend), and 2.1.1.GA. And, for kicks, against the latest EHCache release as well. So far I just have the standalone benchmarks. Expect replicated benchmarks coming your way very soon.<br /><br /><span style="font-weight: bold;">The release</span><br /><br />So, lets get started. <a href="http://labs.jboss.org/jbosscache/download/index.html">Download the release</a> in the usual place, feedback <a href="http://www.jboss.com/index.html?module=bb&amp;op=viewforum&amp;f=157">on the forums</a> please. The more feedback the better, it helps us make JBoss Cache a better product. The changelog is in <a href="https://jira.jboss.org/jira/secure/ConfigureReport.jspa?versions=12312654&amp;versions=12312641&amp;versions=12312543&amp;sections=.1.7.2.4.10.9.8.3.12.11.5&amp;style=none&amp;selectedProjectId=10051&amp;reportKey=pl.net.mamut%3Areleasenotes&amp;Next=Next">JIRA</a>.<br /><br />Notable features include:<ul><li>a new batching API (<a href="https://jira.jboss.org/jira/browse/JBCACHE-991">JBCACHE-991</a>)</li><li>the ability to persist transient state upon startup when <span style="font-size:85%;"><span style="font-family:courier new;">fetchPersistentState</span></span> is false (<a href="https://jira.jboss.org/jira/browse/JBCACHE-131">JBCACHE-131</a>)</li><li>redesigned eviction, where you can now provide not just policies on how to select nodes for eviction, but also how that eviction behaviour is manifested (<a href="https://jira.jboss.org/jira/browse/JBCACHE-1398">JBCACHE-1398</a>). In plain English, this means you can now set the cache up such that nodes are completely removed upon eviction.</li></ul><span style="font-weight: bold;">Benchmarks, part 1 : Standalone (LOCAL mode) benchmarks</span><br /><br />As for benchmarks, these were generated using the Cache Benchmark Framework that I wrote. I actually encourage people to <a href="https://svn.jboss.org/repos/jbosscache/benchmarks/benchmark-fwk/trunk/">download the framework</a> and perform these benchmarks on their servers as well to help validate my numbers. The benchmarks were performed on the JBoss clustering lab, with the following configuration:<br /><ul><li>Server running RHEL 4 and Sun JDK 1.5.0_11 with default settings<br /></li><li>Max heap size of 2GB</li><li>4 Xeon CPUs with 4GB of RAM<br /></li></ul>These benchmarks were measured using simple puts and gets on random keys and values, with <span style="font-weight: bold;">20% write</span> and <span style="font-weight: bold;">80% read</span>, using <span style="font-weight: bold;">25 concurrent threads</span>. The test was performed over a sample size of <span style="font-weight: bold;">10 million </span>operations.<br /><br /><a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_ca0W9t-Ryos/SL1JuZ2M7zI/AAAAAAAAABk/ud1SXXLiTMc/s1600-h/LocalMode-java5-GetChart.png"><img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 623px; height: 623px;" src="http://1.bp.blogspot.com/_ca0W9t-Ryos/SL1JuZ2M7zI/AAAAAAAAABk/ud1SXXLiTMc/s400/LocalMode-java5-GetChart.png" alt="" id="BLOGGER_PHOTO_ID_5241426602890161970" border="0" /></a><div style="text-align: center;"><span style="font-style: italic;font-size:85%;" >Read (GET) performance</span> <span style="font-size:85%;"><span style="font-style: italic;"><br />(smaller is better)</span></span><br /><br /><a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_ca0W9t-Ryos/SL1Kb99kX3I/AAAAAAAAABs/wc0xO_Hrs5A/s1600-h/LocalMode-java5-PutChart.png"><img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 624px; height: 624px;" src="http://3.bp.blogspot.com/_ca0W9t-Ryos/SL1Kb99kX3I/AAAAAAAAABs/wc0xO_Hrs5A/s400/LocalMode-java5-PutChart.png" alt="" id="BLOGGER_PHOTO_ID_5241427385678847858" border="0" /></a><br /><span style="font-style: italic;font-size:85%;" >Write (PUT) performance</span> <span style="font-size:85%;"><span style="font-style: italic;"><br />(smaller is better)</span><br /></span><br /><div style="text-align: left;">As you can see, JBoss Cache is still a <span style="font-style: italic;">very</span> viable standalone in-memory cache, which is highly concurrent. With <span style="font-style: italic;">Naga</span>, this is even more so, given the huge performance gains realised thanks to our <a href="http://jbosscache.blogspot.com/2008/07/mvcc-has-landed.html">MVCC implementation</a>.<br /><br /></div></div>Expect to see replicated benchmarks here very soon. In the meanwhile, enjoy <span style="font-style: italic;">Naga</span>'s first beta and let us know what you think!<br /><br />Cheers<br />Manik<div class="blogger-post-footer"><img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2526530296860697225-1935966412136942989?l=jbosscache.blogspot.com'/></div>Manik Surtanihttp://www.blogger.com/profile/09780985868877754056noreply@blogger.com1tag:blogger.com,1999:blog-2526530296860697225.post-4284769294736825122008-09-03T05:19:00.002+01:002008-09-03T05:22:23.299+01:00Making Blogger easier to useFor those of you who are annoyed by Blogger's tiny edit window, check out <a href="http://fatknowledge.blogspot.com/2007/01/large-post-editor-for-betanew-blogger.html">this excellent script</a> that provides a full sized edit pane. It needs <a href="http://www.mozilla-europe.org/en/firefox/">Firefox</a> and the <a href="https://addons.mozilla.org/en-US/firefox/addon/748">Greasemonkey</a> plugin, and works like a charm. Finally - a full-sized editor pane! :-)<div class="blogger-post-footer"><img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2526530296860697225-428476929473682512?l=jbosscache.blogspot.com'/></div>Manik Surtanihttp://www.blogger.com/profile/09780985868877754056noreply@blogger.com0