Prevayler
The Open Source Prevalence Layer

Prevalent Hypothesis

Posted in Mar 20, 2008 by Tasos Zervos - Edit - History

" That all your business data fits in the RAM you can afford "

 

Comments


Hi Klaus,

is this really necessary? I could imagine having ' lazy ' objects that can swap themselves to a relational DB or simply the filesystem so that only the ' working set ' needs to be in memory.

Obviously this increases the complexity of the system but not much. Simple swapping strategies like LRU can be implemented generically and the same serialization can be used as for the snapshots.

If this would lead to thrashing because the working set is not small enough then a relational DB would soon get the same problem. I ' m assuming here that the DB does a very advanced swapping strategy.

Posted in Jun 22, 2007 by 82.171.24.27

This can be avoided quite easily - just store you objects in a cache such as EHCache and it can be configured to overflow onto disk (which will then be loaded when you restart).

Posted in Jun 26, 2007 by 147.114.226.175

It ' s going to be very nostalgic hearing again all the opinions about how Prevayler could be made into an object database:)

Posted in Jul 15, 2007 by 217.206.234.210

Or maybe use a relational database to begin with?

Why are you trying to fix a bad solution by adding to it?

Posted in Sep 24, 2007 by 24.176.39.194

Think about the reasons for using Prevayler:
- Everything is java, no special query language needed.
- Extreme performance.
- No need to strip objects of their behaviour, turning them into clueless data as relational DB ' s do.

None of these are compromised by swapping. Except maybe the performance but a dedicated swapping strategy can surely do better than a generic DB.

Posted in Sep 29, 2007 by 82.171.24.27

That's a pretty stupid hypothesis.

- - MB

Posted in Aug 26, 2008 by 70.62.10.195

This sounds like a great system. Any working sites? Any problems with java running for months on end?

- - g

Posted in Sep 8, 2008 by 76.166.187.100

Most of the people I know working in the prevalent style release frequently enough that the JVMs rarely live longer than a week, so I don't know of any data. As far as an example of a site following the prevalent approach, http://www.sidereel.com / has millions of users a month and keeps everything hot in RAM. Their main performance issue is startup time, and they've worked assiduously to minimize that.

- - William Pietri

Posted in Jan 25, 2009 by 69.17.34.114

How do you update the functionality of the website / app running prevayler? Does that break the transactions already committed? Does prevayler need to server html through tomcat or some servlet thing or can it do that by itself? I would love to use this app but many online say lisp or haskell are nicer than java. Does java have enough abstraction metaprogramming etc etc to support most of what you would need to make an ebay clone or amazon clone on prevayler?

- - bootiack

Posted in Nov 12, 2009 by 76.172.28.85