Shahid Qureshi posted “Inspecting Hotspot JVM Options,” which details how to see some of the JVM tuning flags, along with some examinations of what some of the flags mean.
He says there are 717 options for the JVM, a far larger count than the JVM tooldocs page talks about (I got 701, not 717, but big deal, he might be on a different OS than I am so there may be differences – and this is one of the points he makes, that you have to look at the platform your on because the options might change without warning.) They’re primarily for the Oracle/Sun JVM (thus, “Hotspot”) but it’s fascinating to see how deep the tunings go.
You get to see types (uintx, intx, bool, etc), option name, and value when you check out the options – some of them are very fine-grained, which provides a lot of potential when tuning the JVM. It also can show you what some of the options you use regularly actually change; he does a good job of explaining some of the differences that get put in place when using the server VM vs. the client JVM.
November 15th, 2010
Vinay
You can have one JVM per process. Since an OS supports many processes, you can have many JVMs running.
When ever we start a new java process by invoking java.exe (i.e. java [class-name] ) a new instance of JVM is created. Each java process executes in its separate JVM environment – we can specify different JVM parameter for each process.
So you can open as many as command prompt your machine allows and run as many JVM as possible. It also means you can run different versions of JVM.
September 30th, 2010
Vinay
In the last post, Alternative to java garbage collection – BigMemory , we had talked about Terracotta switching to Big memory replacing JVM because of its memory cache requirements .
Here is another useful link on What BigMemory is, Why it was built and How it helps an application. You can find it here.
If somebody would have asked me few days back this question , I would not have known the answer. But I always wanted to find about the technology and tricks used at high performance sites like twitter , facebook and ebay.
During discussions with one of the colleagues, I came to know that core(the back end services) of twitter has been written in Scala. And that set me going . Twitter had really high load going to 5000 tweets per minutes at times.
Update : Thanks to the comments posted by users, especially Dave who have informed that the front end has been written in Ruby on Rails.
I really wanted to find out more about Scala and learn about it.
What is Scala ?
Scala is a general purpose programming language designed to express common programming patterns in a concise, elegant, and type-safe way. It smoothly integrates features of object-oriented and functional languages, enabling Java and other programmers to be more productive. Code sizes are typically reduced by a factor of two to three when compared to an equivalent Java application.
Many top-notch programmers and industry leaders have already been captivated by Scala. James Strachan even says that scala is the long term replacement of java and javac.
Find more about scala here
I will be covering more about Scala in next post and how is it more efficient over Java.