Can someone suggest me what type of server and what type of cache we should go with. Initally I am not expecting huge crowd to go with. I am planning to utilize very few modules like Deployed application, HornetQ, ETL Process, Scheduling and basic reporting.
Please do suggest me in this regards.
1 of 1 people found this helpful
As AS7 is more efficent I suppose that you can take the same HW as you have for AS5/6 (or what ever you use before).
There will be no direct answer to your question because it depend extreme on the application requirement what HW and configuration (cache, JVM, GC etc) you will need.
If more work in parallel the Quad Core is helpful if the clock frequency is the same as Dual core.
The number of modules is no problem in AS7 because of the modularization, they will not be loaded of not needed
The requirement depend on your application and the expected/wanted throughput.
Thank you Wolf-Dieter Fink
I am planning to use this app server for an application where all the client applications will be sending data to this app server through HornetQ as scheduled job. I need to collect data and process(ETL) it and persist in DB. Here I am implementing parallel or java concurrency to process the data asynchronously.
I will be expecting data size like 5-10 MB from each client application where I will be having atleast ~200 concurrent client apps connected. Then I will have ETL processors running on top of it processing each and every data and pushing it to corresponding data servers.
Should I go with processors that has high CPU clock and cache? What type of RAM will suit better?
I can't give you an answer for that because it depends on too many things.
E.g. how much memory your applciation consume to process a request, whether you can process such concurency.
From my experience it will be a good choice to measure the application with one thread to have a picture how long one request take.
After that you increase the load and measure the application and system (duration time of one call, CPU load, memory consumption, GC behaviour)
This will give you an idea of the performance on the given system. For different systems you might measure again.
As I said before
- as faster one CPU core is as shorter the duration of one call
- more cores will increase the thoughput if you work in parallel (without sync and sure not linear)
- the memory is more difficult because it might happen that you will have drawbacks if you not really need the memory
GC might take very long full-stop-pauses to cleanup
So I know it will be a longer, iterative and maybe painful learning
Often it ends in a profiler session to optimize the application.
Hi Wolf-Deiter Fink,
Thanks again for your inputs. I am actually working on couple of configurations already. Let me see how is that gonna work for my needs. May be after that I will share the configurations in the same discussion.