-
1. Re: Some thoughts on large messages and message chunking
ataylor Sep 22, 2008 4:51 AM (in response to timfox)I agree, I think a simpler solution will be easier to maintain. we can build on it at a later stage if need be.
-
2. Re: Some thoughts on large messages and message chunking
clebert.suconic Oct 1, 2008 12:01 PM (in response to timfox)I'm writing LargeMessages on File on the ServerSide, so the Server's memory won't be all used up.
I'm currently working on add this functionality on the PersistenceManager, so when we implement a DBPersistentManager, we could have LargeMessages stored on the DB.
I have a question regarding NullPersistence. Should we just keep the message in memory when NullPersistence, or should we use the File also? What would make more sense? -
3. Re: Some thoughts on large messages and message chunking
timfox Oct 1, 2008 12:06 PM (in response to timfox)"clebert.suconic@jboss.com" wrote:
I'm writing LargeMessages on File on the ServerSide, so the Server's memory won't be all used up.
I'm currently working on add this functionality on the PersistenceManager,
??
We haven't had a persistence manager since 1.4 -
4. Re: Some thoughts on large messages and message chunking
clebert.suconic Oct 1, 2008 12:10 PM (in response to timfox)StorageManager :-)
The package still persistence thought (that's why I confused)
org.jboss.messaging.core.persistence -
5. Re: Some thoughts on large messages and message chunking
timfox Oct 1, 2008 12:15 PM (in response to timfox)Ok seems like the right place. (StorageManager)
NullPersistenceManager does (or doesn't do) what it says on the can - no persistence.
That means no persistence at all:
1) No message journal
2) No bindings journal
3) No paging
4) No storing large messages outside the journal.
It is designed for people who do not (or cannot) use the filesystem (e.g. in applet or sandbox or embedded) so no file system access should be attempted. -
6. Re: Some thoughts on large messages and message chunking
clebert.suconic Oct 1, 2008 12:23 PM (in response to timfox)3) No paging
That can be done by just disabling Paging properties. Someone might still want to use Paging with NullPersistence at this point.
(Maybe that would make sense for some people).
But the user has the choice to not usePage at all also.
4) No storing large messages outside the journal
What I have now, is just a regular Message in Memory. -
7. Re: Some thoughts on large messages and message chunking
clebert.suconic Oct 2, 2008 6:34 PM (in response to timfox)"Tim Fox" wrote:
When sending a message, we simply check if message size is greater than ml. If false then message sending and delivery proceeds exactly as normal. If true, then we send a standard SendMessage packet, followed by n MessageContinuation packets which contains the rest of the message split into each packet.
I'm doing this with a slightly variant.
SessionSendMessage creates the ServerMessageImpl, and decode/encodes directly from the Buffer to avoid copy and get some performance.
As SessionSendMessage is the class responsible for creating the MessageImpl, I was have a little difficult on instantiating the ServerMessage that will store the body on a file.
Because of that, when using LargeMessages I'm using another PacketType to deal with Large Messages. With that the regular use case would be optimized avoiding extra non necessary copies.
I will commit it tomorrow (on trunk or another branch) and it will be easier to talk about this later when I have some code to show the differences. -
8. Re: Some thoughts on large messages and message chunking
timfox Oct 3, 2008 3:25 AM (in response to timfox)Ok please commit on a different branch so we can see it before it goes on trunk.
-
9. Re: Some thoughts on large messages and message chunking
clebert.suconic Oct 8, 2008 11:17 PM (in response to timfox)I just created a branch:
https://svn.jboss.org/repos/messaging/branches/Branch_Chunk_Clebert
I still have some work to do before anyone can take a serious look. I know a few things i want to change.
JBM 1.4 took a lot of my attention this week, so I'm a little behind because of that.