JVM Performance differences on different Operating Systems
We were forced to run a performance test on our JVM inside a windows server box. While everything looked good, The application when deployed will be running on AIX.
I understand java is relative开发者_开发技巧ly OS ignorant, but in the past I have noticed issues in other applications such as file descriptor limits on AIX.
Is our test valid? Are there any major concerns or areas we should look at closer to determine if we may have an issue.
Ideally you'd run your performance tests on as similar an environment as possible to your production environment. That means CPU, memory, JVM supplier and version, disk setup, network, and so on.
That's the ideal situation. However, if you are running identical JVM versions from identical JVM suppliers, with the same memory, and the same memory tuning parameters, you'll be relatively fine.
I suspect on the AIX box you'll need to run IBM's JVM. You should use IBM's JVM on Windows too.
Your company should have different test environments:
- for integration or acceptance
- for pre-production
In a perfect world, the integration or acceptance facilities should similar to those of production (OS wise).
The pre-production should be a clone of the production and could take over the production in case of a disaster.
Testing and making an application stable is an ongoing process and like Wivan said production is just another testing environment.
精彩评论