On Tue, Feb 28, 2012 at 7:15 PM, Yanni Chiu <[email protected]> wrote:
> On 28/02/12 11:03 AM, Norbert Hartl wrote: > >> >> I first used image persistence but the image grow to large. Then I added >> fuel as journal to be written before image save in order to be able to >> recover from an emergency. >> Now we redo the persistence part. An account object graph is dissected >> into configuration part and payload part. The payload is written >> directly to mongo db in a Json format. The configuration part will be >> written as fuel blob to mongo. Planned is that at startup a configured >> amount of account fuel blobs are loaded and started. Those >> configurations have their own proces ses that write back payload to >> mongo. Etc. >> > > That's similar to what I do, except no image save and no mongo db. > > Here's how it goes: > - on restart the image reconstructs a Pier kernel saved via Fuel to a file > - included in the Pier kernel is what you're calling the "configuration > part" - there are custom (non-std Pier) components here. > - the components in the reconstructed image can read/write a "payload" > part, which is serialized to files using Fuel and SandstoneDb. > WOW. I didn't know there was a real user about that ;) > - additionally, a "sub-tree" of the Pier kernel can be exported to a file > using Fuel serialization, and later imported using Fuel deserialization. > > That's interesting! > No URL available at the moment. > > Ok, let me know if you have one at some point in the future and I add it. > Aside - before Fuel/SandstoneDb, I was using Glorp/PostgreSQL. I've gained > a lot of simplicity, but lost sequence numbers Sequence numbers are the less thing you should care about since you can alwasy do it in image side ;) and object caching (and maybe more things, that have not been a problem so > far). I've written a seqno replacement, but the lack of object caching is > not a problem at the moment (i.e. small data sets, so far). > > Yes, object caching is NOT a problem itself, it is a feature of Glorp or whatever. If what you use (like Fuel) is slow, then it may require some tunning. It can be caching object or not. What I suggest is that you stress your system with big data sets and you will see if you really miss object caching or not. -- Mariano http://marianopeck.wordpress.com
