Space-based architecture?
Asked Answered
A

4

15

One chapter in Pragmatic Programmer recommends looking at a blackboard/space-based architecture + a rules engine as a more flexible alternative to a traditional workflow system.

The project I'm working on currently uses a workflow engine, but I'd like to evaluate alternatives. I really feel like a SBA would be a better solution to our business problems, but I'm worried about a total lack of community support/user base/venders/options.

JavaSpaces is dead, and the JINI spin-off Apache River seems to be on life support. SemiSpace looks perfect, but it's a one-man show. The only viable solution seems to be GigaSpaces.

I'd like to hear your thoughts on space based architecture and any experiences you've had with real world implementations.

Aspersorium answered 24/2, 2009 at 10:17 Comment(0)
M
2

Why do you regard Javaspaces as dead, beyond the fact that the Jini 2.1 release was some time ago (October 2005) ? Having used that, I'd suggest that it indicates a mature and complete technology set rather than something abandoned and defunct.

For another implementation of Javaspaces, take a look at Blitz Javaspaces. That's maintained and enhanced more regularly (latest release July 2008) and offers a more performant and manageable Javaspace implementation than the default outrigger supplied by Sun.

Malnourished answered 24/2, 2009 at 11:27 Comment(1)
Hi Brian, I said JavaSpaces was dead because the Jini spec (of which JavaSpaces is a part) and Sun's implementation was moved to an Apache incubator project (River) which seems to have limited support. JMS, JCR, JPA, etc. are also examples of mature specifications but they have active communities.Aspersorium
I
2

Gigaspaces is a successful commercial implementation of JavaSpaces -- so, I wouldn't say JavaSpaces is dead.

You might take a look at Java Shared Data Toolkit (also this article) to see if it meets your requirements.

Inlaw answered 25/2, 2009 at 14:39 Comment(3)
I should clarify my dead statement. There are specs/APIs/standards that are actively maintained, have rich communities, and have multiple solid implementations to choose from (think JMS, JPA, even something like XML or JSON). I call JavaSpaces dead because it has none of these beneficial attributesAspersorium
To add: I'm looking at GigaSpaces and SemiSpaces, but my question was really more broad: who's used this archetecture and what do they think of it? I want horror/success stories, comparisons, thoughts, etc. The problem is it looks like nobody is out there with this kind of experience.Aspersorium
But now, is it dead ?Remonaremonetize
O
1

Space-based architecture is a distributed-computing architecture for achieving linear scalability of stateful, high-performance applications using the tuple space paradigm With a space-based architecture, applications are built out of a set of self-sufficient units, known as processing-units. Ex: Gigaspaces here I attached the reference for gigaspaces. https://docs.gigaspaces.com/latest/overview/space-based-architecture.html

Ottilie answered 1/11, 2021 at 8:35 Comment(0)
P
0

While it doesn't support the JavaSpaces API, I'd suggest looking at Oracle Coherence for a distributed and reliable "live" data store that can drive event-based workflow. Deutsche Bank, for example, successfully replaced a "SBA" (Space Based Architecture) with an event-driven system built on Coherence for their FX trading, because of both reliability and performance issues.

For the sake of full disclosure, I work at Oracle. The opinions and views expressed in this post are my own, and do not necessarily reflect the opinions or views of my employer.

Photolysis answered 14/2, 2014 at 19:45 Comment(0)

© 2022 - 2024 — McMap. All rights reserved.