This is more a matter of threading, I think. Unlike a
servlet, which is typically instantiated once and then accessed by multiple threads, a session bean instance is accessed by a single
thread. The EJB container creates as many bean instances as needed for concurrent requests (each running in a thread), usually subject to a user-defined maximum number.
So, it usually makes no sense to limit the number of instances to one, as this would cause the container to serialize requests to that instance and cause poor performance.