I am explaining what we do in our application. Please suggest your
opinions.
There are process-A and process-B running in the same Solaris machine.
Process-B gets message from Process-A and it immediately forwards the
message to an application(say, MYAPP) through http. After sending a
message, we wait for an ack from MYAPP. If we do not receive within
certain time, then, we store that message in Main-memory. We keep on
storing such failed messages in memory. After the memory is full, then
process-B will start storing such messages in the disk. After some
indication, process-B will start taking the messages one by one from
the memory(and then from disk) and start forwarding that to MYAPP.
I have control over only Process-B. How do I optimize this approach?
Also, I would like to replace "Main-memory+Hard-disk" with "increased
VM size+Main-memory" so that OS will take responsibility rather than
we writing directly into the disk. What is your opinion about it?
More detailed explanations will be appreciated!
Thanks!