Discussions

News: Blitz Open Source JavaSpace Release 1.1

  1. Blitz Open Source JavaSpace Release 1.1 (24 messages)

    A new release of Blitz, an open source JavaSpaces implementation, has been announced. The Jini 2.0-enabled Blitz JavaSpaces implementation eases development and deployment of JavaSpaces technology by providing smart indexing, tunable persistence, and active/passive lease cleanup.

    Key Features

    - Ease of installation.
    - Jini 2.0 enabled.
    - Use of established VM principles.
    - Smart indexing.
    - Tuneable persistence.
    - Active/Passive lease cleanup.
    - Built for experimentation and expansion.
    - Easy integration with the Inca X IDE & Runtime Environment.

    Read the Blitz 1.1 Release

    Blitz Overview

    We aren't hearing that much about Jini, yet people are using it. Any thoughts from users out there?

    Threaded Messages (24)

  2. Blitz Open Source JavaSpace Release 1.1[ Go to top ]

    Congragulation!
    VM is a very different approach compared with backend RDBMS by GigaSpace and JPower. How is the actual performance for simple space read/write/take object collections?

    I think in order to promote JavaSpace(or JINI, JXTA..etc great technology), there should be plenty examples availabile online to solve actual business problems, or social problems. Just like J2EE BluePrint on PetStore application.

    Some suggestion :
    - Integrate J2EE server to provide easy/simple API for entity persistence to replace Entity Bean, JDO, O/R ..etc.
    - Make a social computing example demonstrating unique programming feature of JavaSpace for collaboration and parallel computing (There are some simple social computing examples from IBM AlphaWork and M$ Research)
    - Provie ByteArray object access of acceptable performance to reach media coverage
    - Integrate servlet container and provide easy programming for JSP/Servlet. Most developers nowadays just put all libraries into WEB-INF/lib and begin JSP/Java Coding. They would not like to know built-in HTTP, TXN, JavaSpace, Reggie..etc.


    Citystory
  3. Great Effort![ Go to top ]

    I am a JavaSpace lover and always think distributed programming concepts
    should have been simpler.
    I am impressed by your achievement. I am exited to see an open source effort
    in JavaSpaces world with many challenging distributed computing problems
    addressed. I am yet to experiment with Blitz JavaSpace. But you deserve to
    be a one of those guys I start respecting immediately.
  4. Blitz Open Source JavaSpace Release 1.1[ Go to top ]

    Congragulation!

    > VM is a very different approach compared with backend RDBMS by GigaSpace and JPower. How is the actual performance for simple space read/write/take object collections?

    Good question - here's the theory - the basic thing a VM tries to do is keep memory full of the stuff currently most used to save excessive use of disk. Blitz's cache tries to do the same thing - we keep the most "popular" entries in cache (fully indexed to keep search speed up) which saves us doing any database work at all (no queries, no deconstructing/reconstructing of objects). The more of this we can do, the more CPU is available for other things such as dispatching reads/writes/takes.

    Of course, Blitz is persistent and must maintain state so we must log what we do in order to be able to restore state (a database does this too). Again, there are tricks we can play to reduce the amount of logging we do and more tricks we can play to make sure that when we do write to the log we write a large amount of stuff which is more efficient than writing lots of little bits. Some of these tricks actually lead to potentially bad benchmarks but give good performance boosts under real deployment conditions where concurrency is high.

    In theory, if you can make the cache big enough, Blitz will only ever access it's logs because all entry's will be written and taken from cache saving a lot of database access time. That then leaves only the speed with which you can log to disk as the limiting factor for performance - this is good - easy to deal with. If you need more speed, you buy faster disks! This is another key point of Blitz, it provides some knobs and dials to make tuning simple and, once tuned, the solution to going faster is also simple (better hardware).

    >
    > I think in order to promote JavaSpace(or JINI, JXTA..etc great technology), there should be plenty examples availabile online to solve actual business problems, or social problems. Just like J2EE BluePrint on PetStore application.
    >

    That's something that the Blitz Project will address - it's not just about writing a JavaSpace - it's about usage patterns, deployment examples etc. I plan to work on some of that stuff in the near future (I've got some ideas already). Thanks also for the stuff below, I'll put that in the pot.

    > Some suggestion :
    > - Integrate J2EE server to provide easy/simple API for entity persistence to replace Entity Bean, JDO, O/R ..etc.
    > - Make a social computing example demonstrating unique programming feature of JavaSpace for collaboration and parallel computing (There are some simple social computing examples from IBM AlphaWork and M$ Research)
    > - Provie ByteArray object access of acceptable performance to reach media coverage
    > - Integrate servlet container and provide easy programming for JSP/Servlet. Most developers nowadays just put all libraries into WEB-INF/lib and begin JSP/Java Coding. They would not like to know built-in HTTP, TXN, JavaSpace, Reggie..etc.
    >
    >
    > Citystory

    Best wishes,

    Dan.
  5. Blitz Open Source JavaSpace Release 1.1[ Go to top ]

    "Some suggestion :
    - Integrate J2EE server to provide easy/simple API for entity persistence to replace Entity Bean, JDO, O/R ..etc.
    - Make a social computing example demonstrating unique programming feature of JavaSpace for collaboration and parallel computing (There are some simple social computing examples from IBM AlphaWork and M$ Research)
    - Provie ByteArray object access of acceptable performance to reach media coverage
    - Integrate servlet container and provide easy programming for JSP/Servlet. Most developers nowadays just put all libraries into WEB-INF/lib and begin JSP/Java Coding. They would not like to know built-in HTTP, TXN, JavaSpace, Reggie..etc."

    Actually similar scenario like the one that you described above is already available and even used in customer sites.
    For example in a J2EE environment the space can solve
    some of the hardest performance issues through caching and parallel processing.
    In addition to that it provides a real time integration bus for integrating
    information between the J2EE application and other J2EE and none J2EE instances
    etc. Some of the information on how this can be achieved is available through our web site. For example you could read how to integrate JavaSpaces (GigaSpaces) and J2EE (JBoss) using the following paper: <a
    href="JavaSpaces" rel="nofollow">http://www.gigaspaces.com/docs/J2EE/doc/BuildingEnterpriseApplicationswithJBOSS3andGigaSpaces3.pdf">JavaSpaces
    &amp; J2EE/JBOSS</a>. (Other papers are also available for WebSphere, WebLogic,
    Oracle and Sun).

    In addition to that there is an interesting <a
    href="case" rel="nofollow">http://www.gigaspaces.com/news.htm">case study</a> that we will present together with MERRILL LYNCH on how to implement high performance market data distribution using open technologies such as Linux, WebServices and low cost hardware resources such as blade servers using our JavaSpaces implementation.

    You can find more information about this event at http://www.worldrg.com/fw391/agenda.html

    As John Davies mentioned already we are also working
    on other projects as well and already solves real issues of real applications with real customers, so I feel that today we are way past the point were we need to prove that the JavaSpaces concept can solve real problem.

    Nati S.
    GigaSpaces Technologies
  6. Blitz Open Source JavaSpace Release 1.1[ Go to top ]

    wong xx writes:

    I think in order to promote JavaSpace(or JINI, JXTA..etc great technology), there should be plenty examples availabile online to solve actual business problems, or social problems. Just like J2EE BluePrint on PetStore application.

    Some suggestion :
    - Integrate J2EE server to provide easy/simple API for entity persistence to replace Entity Bean, JDO, O/R ..etc.


    IntaMission recognizes the need to work with J2EE application servers. We find the technologies to be complementary in practice. Follow the link from titled "Make J2EE systems flexible with Autevo" from the first page of our website, http://www.intamission.com.

    JavaSpaces is also a great complement to standard publish/subscribe message-oriented middleware. There is a whitepaper on this topic available on the website as well.


    - Make a social computing example demonstrating unique programming feature of JavaSpace for collaboration and parallel computing (There are some simple social computing examples from IBM AlphaWork and M$ Research)


    AutevoMDI is IntaMission's offering in this area. It provides a platform for collaborative computing by supporting arbitrarily complex shared models.


    - Integrate servlet container and provide easy programming for JSP/Servlet. Most developers nowadays just put all libraries into WEB-INF/lib and begin JSP/Java Coding. They would not like to know built-in HTTP, TXN, JavaSpace, Reggie..etc.


    This is a very common requirement of our customers and we've addressed the issue in a number of environments. I'll work on making a summary of our techniques available on the website within the next week or so.

    Regards,

    Patrick May
    IntaMission, Ltd.
  7. Blitz Open Source JavaSpace Release 1.1[ Go to top ]

    Before I start this message can I just say there is something really annoying with TSS pages on Mozilla (1.5). Everything is pushed onto the far right of the page, it's getting more and more common and REALLY annoying!

    Anyway, sorry about that, it's been driving me nuts, in answer to the "we aren't hearing about Jini" and "people aren't using it". Well more fool them!

    We have engineered an entire product around JavaSpaces, it really is the only solution that provides the performance required without having to buy huge hardware to handle everything. We are still trying to make up our minds between Autivo (Intamission) and GigaSpaces but Blitz will certainly get a good testing.

    The key so far has been embedded Spaces, we can retain the JavaSpaces architecture and avoid serialization while working in the same VM. We are required to process (parse, validate, route and send) over 5,000 FIX message per second on a few small Blades. Yes we could have written something in pure Java but where's the scalability coming from? As well as the FIX messages that same system has to process 100 SWIFT message per second including persistence, this really does require the truly distributed architecture of JavaSpaces. The serialization of the FIX messages caused problems with JMS and the overhead of JMS’s Pub/Sub architecture just didn't work when it came to distributing the task of parsing SWIFT message.

    We started with JMS, Sonic's in fact, they didn't seem interested in financial services so we tried a few others, non of them could hack it with the given hardware and costs. After exploring the idea of using Jini’s architecture it now just seems the obvious choice!

    We now use C24's IO to bind Java objects to XML Schema and pass the objects themselves instead of XML, we’re seeing 2 to 3 orders of magnitude performance gains over raw XML on JMS.

    Jini, Java binding in a J2EE framework is the way to go if you want performance. I will report back here when we've had chance to play with Blitz, I'm looking forward to it, good work guys.

    A whitepaper will follow in the next few weeks if anyone's interested.

    -John Davies-
  8. JavaSpaces better than JMS scenario[ Go to top ]

    Before I start this message can I just say there is something really annoying with TSS pages on Mozilla (1.5). Everything is pushed onto the far right of the page, it's getting more and more common and REALLY annoying!


    This is a known problem (for months now). TSS doesn't seem to have the knowledge to fix it. I'm using Firebird 0.7

    > Jini, Java binding in a J2EE framework is the way to go if you want performance. I will report back here when we've had chance to play with Blitz, I'm looking forward to it, good work guys.
    >
    > A whitepaper will follow in the next few weeks if anyone's interested.
    >

    I'm interested in the whitepaper.

    Regards,
    Stefan Chis
  9. JavaSpaces better than JMS scenario[ Go to top ]

    Your interest (and others) is duely noted, in fact Dion was on to me within minutes so, yes, if he agrees, you'll see it here first.

    I have no intention of posting endless benchmarks between Gigaspaces and Intamission since I know them both companies extremely well and it won't do anyone any favours by printing relatively pointess benchmarks. Anyway, a lot of the figures foir "classic" JavaSpaces are within percentage points.

    What one doesn't do today but the other does is often fixed withing weeks. Every bug or issue we've seen on both has been corrected in days so we're pretty happy with GigaSpaces and IntaMission so far. At the end of the day it will come down to commercials and availability of services and that is going to be a private matter for our company.

    What I have done is validate the Jini architecture for our project and found two very good implementations. Any comapny would expect to do the same with J2EE, no one will go live with J2EE 1.4 until there is at least one alternative, that's all we did with Jini.

    We spent most of the last month or so testing both of these, most of the test were to help us understand the optimum organisation of spaces and where the bottlenecks lay. We've seen some very interesting performance gains over traditional XML usage by combining C24's Integration Objects (very similar to JAXB and Castor) and JavaSpaces. It is this use of Objectized XML and JavaSpaces I wanted to write about. Having said that I will write something about my expirience with both companies and Blitz by then but it will not critisize either of them. I'm pro Jini, pro Java and very pro technology, as long as it's not just for the sake of it.

    --> Just got Dion's reply, you should see it here some time in the week of the 19th.

    -John-
    PS: Dion says Mozilla 1.6beta fixes the layout problem, I use 1.5 for the moment and a refresh seems to often fix it, I'll try 1.6 next.
  10. White Paper Request[ Go to top ]

    John,

    I'd like to register interest in seeing a white paper that describes your JavaSpaces implementation - in particular your opinions on Autivo and GigaSpaces, and the performance issues you've encountered. I'm also interested if you looked any, more canonical, approaches such as distributed transactionally aware caches like Coherence.

    Thanks,

    Ravi
  11. We have engineered an entire product around JavaSpaces, it really is the only solution that provides the performance required without having to buy huge hardware to handle everything. We are still trying to make up our minds between Autivo (Intamission) and GigaSpaces but Blitz will certainly get a good testing.

    >

    I'd sure appreciate any time you can give to bashing Blitz about. Various people have done things already but the more eyes the better as they say. If there's anything you need, contact me via the email address on the project page (I'd put it here but I don't want to attract more spam) at:

    www.dancres.org/blitz/index.html
  12. Thanks to Dion[ Go to top ]

    Hi, as the author of Blitz, I had to decide where I was going to post notices to. I figured theServerSide would be a little too high a target to be aiming at so I'd like to say thaks to Dion Almaer for doing what I should have done for myself :)

    Right, there's some other questions in this thread which I'll endeavour to answer in other replies.
  13. Hi,

    Just released version 1.1.1 which contains:

    - Tuning Guide
    - Tweaked .config files which are more Windows friendly
    - Various documentation cleanups/clarifications

    Thanks,

    Dan.
  14. Released version 1.1.3[ Go to top ]

    Version 1.1.3 is now available.

    Summary of changes in this release:

        * Embedded space support.
        * Memory usage added to the stats interface.
        * Debugging tool.
        * Better disk utilization.

    For full details, see the Changelog.
  15. Why not 100% Java[ Go to top ]

    Looks very interesting, but first thing I noticed was the dependence on Berkely DB, which is not a Java app. This makes deployment of Blitz impossible on anything but Windows/Linux. Isn't that a bad choice considering the number of pure Java DBs?
  16. Re: Why not 100% Java[ Go to top ]

    Okay, well there's no nice way to say this, your assumption about Db being for Linux and Windows only is incorrect.

    Berkeley DB runs on considerably more platforms than Windows and Linux. It will, in fact, run on most varieties of UNIX (many of them actually ship with Db pre-installed), Mac OS X, VxWorks and Windows.

    So, how come I don't have binaries for all platforms? Well, because I don't have access to all platforms. I'm hoping that people will contribute binaries for other popular platforms as time goes on.

    With respect to Java Db's - yes, there are some, I haven't looked at them yet. I'm not going to object if someone want's to port Blitz to such a database (it should be reasonably easy). Perhaps you'd like to recommend some for me to look at?
  17. Re: Why not 100% Java[ Go to top ]

    Oh, I forgot to mention Solaris - in fact, I've been running Blitz on an 8-way SMP UltraSparc box with Solaris 9. Db ran just fine, no problems.
  18. a 100% java based RDBMS : hsqldb, http://hsqldb.org/
  19. Probably a better fit[ Go to top ]

    A simple (transactional) record manager: http://jdbm.sourceforge.net/ Dan, I'm interested in dropping Blitz on top of JDBM and also on top of Terracotta and see what happens - anyone ever used Blitz with Terracotta?
  20. Blitz Release 1.1.4[ Go to top ]

    Version 1.1.4 is now available - key changes:

        * Security - Integrity checking supported.
        * Recovery and checkpointing bug fixes.
        * Additional configuration options.

    Download the release at: http://www.dancres.org/blitz/blitz_release.html

    Read about the Blitz Project: http://www.dancres.org/blitz/
  21. Blitz JavaSpaces v2.0[ Go to top ]

    Next major update:

        * Tunable Persistence - supports transient, persistent or time-barrier persistent storage models.

        * Automatic Log File Cleanup - when backups are not required.

        * Revised logging infrastructure - provides greater performance and further configuration options.

        * Remote layer debugging features - to assist with performance or flow analysis.

        * ConfigAssistant - tool to assist in installation of Blitz (diagnoses common problems etc).

        * Support for Db4.1 and Db4.2 - brings Blitz up to date with the latest release from Sleepycat

    Can be found here: http://www.dancres.org/blitz/blitz_release.html

    Project lives here: http://www.dancres.org/blitz/index.html
  22. Hi,

    Version 2.0.1 is now available containing several important fixes together with some small code cleanups and a couple of minor enhancements.

    Download it here: http://www.dancres.org/blitz/blitz_release.html

    Project lives here: http://www.dancres.org/blitz/index.html
  23. Version 2.0.3 Released[ Go to top ]

    The Blitz Project is pleased to announce the release of v2.0.3 of it's OpenSource JavaSpaces implementation.

    Summary of changes:

    * Expanded stats API including tracking of active transactions and instance counts
    * A GUI-based monitoring tool for the stats API, contributed by Inca X
    * Tool to sync/shutdown a Blitz instance
    * Tool to dump contents of a shutdown Blitz JavaSpaces instance (regardless of Storage Model)
    * Standalone installer
    * Various Bugfixes
    * Performance improvements

    Past changes:

    * Configurable storage models support transient, persistent and time-barrier persistent options.

    For complete details, see the Changelog.

    Available for download: http://www.dancres.org/blitz/blitz_release.html

    Blitz Project: http://www.dancres.org/blitz/
  24. Some people are still following the links from this posting.

    The website has since changed (a lot of it has moved to SourceForge) - please use:

    http://sourceforge.net/projects/blitzjavaspaces/

    or:

    http://www.dancres.org/blitz/
  25. New Links for Blitz JavaSpaces[ Go to top ]

    Some people are still following the links from this posting.

    The website has since changed (a lot of it has moved to SourceForge) - please use:

    http://sourceforge.net/projects/blitzjavaspaces/

    or:

    http://www.dancres.org/blitz/