Our application is an live SMS based application which uses jboss webservices and EJB. The database used by our application is MS SQL Server 2000.The webservice method will be called from the other webservice running on the remote IIS server which is connected to SMSC.For a day, the application receiving 5,00,000 sms requests posted to the webservice method from the remote IIS webserver. The EJB's running on the application server has some SMS command validation and it will be calling MS SQL stored procedures for retreiving response for the requests which will be querying millions of records (over 6 million untill today). We have launched the application 2 months before. The jboss server is producing memory dumps for every 10 or 20 or 30 minutes depends upon the concurrent requests. Due to this reason, only 50% of the requests processed and replied back to the customers and the rest of the 50% requests are failing at the remote IIS webserver itself because of the webservice breaks in the jboss server.We have monitored several days for any error message in the log, but jboss is not throwing any specific error. It simply producing the memory dumps and restarting more frequently.This is a big headache for us as the application is updating customer reward points and communicating with the remote payment server for recharging customer mobile account with airtime. Due to this issue, some transactions are isolated and repeated. Customers reward points were updated wrongly and we are doing manual rollback for those customers. Also the application is interacting with one remote oracle database for airtime recharge and an LDAP server for querying some details.
Here is the hardware and software configurations of our application.
Operating System : windows 2003 server
CPU: 4 CPU
Application Server : jboss-4.0.1sp1
Webservice: jboss ws4ee web service (The remote webservice method will be called from our application which is SOAP based service running on IIS/windows server)
Database: MS SQL Server 2000
JDK: BEA jrockit-1.4.02
EJB's: 3 State less session beans
All things mentioned above are running on the same server.Jboss MQ persistence is configured with MS SQL Server and the JVM is configured with -Xms1024m -Xmx1024m.
We are planning to do the clustering of the application servers.We are expecting over 8,00,000 requests per day. Is it possible to do clustering for webservices? If yes, please advise.
Please advise us with good architecture using jboss clustering.