matchz
asked on
Java Application Load Balancing & HA
I have written a network filter application which will filter some packets and forward to another host. It is quite similar to a HTTP proxy server.
The application is running very smooth. However, i need to do some changes so that i can be run in load balancing and high availability.
In this case, i think there are at least 2 JVM will be created. How can i share the information in my program, for example, i have used a Hasttable to store some rule of the filter which are updated dynamically according to the incoming packet.
What can I do and how can i do that?
Thank you very much.
The application is running very smooth. However, i need to do some changes so that i can be run in load balancing and high availability.
In this case, i think there are at least 2 JVM will be created. How can i share the information in my program, for example, i have used a Hasttable to store some rule of the filter which are updated dynamically according to the incoming packet.
What can I do and how can i do that?
Thank you very much.
ASKER CERTIFIED SOLUTION
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
ASKER
Actually, my idea is a little bit different to RMI. RMI is about a JVM to invoke methods in another JVM. However, I would like the end-users to run an application which supports clustering. The performance of the applications can be increased by the number of hardwares.
What about advanced app specific multicasting?
ASKER
Hi Ovi, what is advanced app. specific multicasting?
I have no idea about it, would you please feel free to give more information about that?
I have no idea about it, would you please feel free to give more information about that?
What I mean was to implement a specific type of multicasting protocol based on your application requirements. I refer only to how you send packages to others, what they means, how they must react on a specific multicast command and stuff like that.
RMI is about distributed computing in Java. JVM's expose objects that render services, it doesn't matter where the JVM is running on. RMI simply hides the communication layer that you would otherwise have to implement yourself using Sockets.
Multicasting is the ability to join a group of processes that connect with one-another through the group's multicast IP. (Clustering with Multicasting would mean that all the processes join a group IP (e.g. 239.25.25.25:6789) and whenever any process broadcasts to this IP, all group memebers can get the message)
Hope this helps,
Doron
Multicasting is the ability to join a group of processes that connect with one-another through the group's multicast IP. (Clustering with Multicasting would mean that all the processes join a group IP (e.g. 239.25.25.25:6789) and whenever any process broadcasts to this IP, all group memebers can get the message)
Hope this helps,
Doron
ASKER
I will try to work out on this idea.
Thank you very much.
Thank you very much.
Me too.
Hope this helps,
Doron