How Many Instances are used for One Map Service?

736
2
01-15-2014 10:13 AM
NathanSommers
New Contributor III
I'm having some trouble understanding how many instances are used when I access a map service and I'm hoping somebody can help me with.

I have a map service that contains 4 points.  I have the minimum instances set to one and the maximum set to 8. I am running it in low isolation with 4 instances per process.

When I access the service in a very simple Javascript the instances running immediately goes from 1 to 5 and the instances in use immediately jump from 0 to 5 (this all happens when I access the page but before the points actually load).  The points then take 3-4 seconds to load and when they load the instances running and the instances in use both drop to 3.  After another 3-4 seconds the instances running goes up to 4 and the instances in use drop to 2.  After another few seconds the instances in use drops to 0 and the instances running stay at 4.

In looking at log file, I can see that the server is being queried 10 times.  Why would the server be queried 10 times for a very simple map service with 4 points?

[ATTACH=CONFIG]30537[/ATTACH]

Perhaps I am getting to far into the weeds but I would really like to understand what exactly is happening when I load a map service.

Thank you
Tags (2)
0 Kudos
2 Replies
JakubMalec
New Contributor III
Well, when you send a request to a service, then one instance of a service is used to process the request (getting data from a database, processing, returning the final result). If some request is being processed by one instance and there is another request incoming, then another instance is being used to process it (if there are no more instances available, the request is being put in queue).

3 to 4 seconds seems a lot, perhaps your ArcGIS Server or Database server is overloaded?

In looking at log file, I can see that the server is being queried 10 times. Why would the server be queried 10 times for a very simple map service with 4 points?
Can't tell if you won't share the Javascript application's source code and your MapService details.
0 Kudos
LeoDonahue
Occasional Contributor III
Instances run in processes, and high isolation means that for every instance you give your map service, there will be one SOC process running.  Low isolation means that many instances share the same SOC process, and you have no control over which instances run in which processes.

Why are you using low isolation for this map service?
0 Kudos