08-15-2013 01:48 AM
I Administer and utilise the physical server of a SAS Workspace Server environment.
i would like to know if I can restrict the number of sessions that a user can have open at one time.
such as only 5 active SAS sessions/connections per user.
this is for server performance management.
users have too many concurrent sessions which causes massive CPU usage.
08-15-2013 05:14 AM
The evolvments are in the direction of multithreading (high performance) and parallel processing. I do not think you can stop that.
Qustions like I have often seen as an ad-hoc approach when suddenly running out of resources suffering performance issues.
Eguide (latest versions) an Eminer are explicitly designed to spawn multiple sessions if possible.
The goal is better service to users.
Server performance management is the classic performance & Tuning question.
- How much human effort you would like to spent in optimization vs the hardware cost/usage?
What you could do is:
- Getting better hardware. your users are expecting unlimited speed by unlimited sizing. There will be always a limit.
- Getting your users to know and what they are doing.
Possible is eduction of you users to choose/desing more effective coding solutions
- Invest in analyzing and monitoring the usage in a more longer time intervals. (apm pacakge ITRM etc)
Spreading the load to other hours using batch/scheduling could be an option.
- Tuning at the OS-level.
Classic z/OS was very good at wiht the options of isolating workload types so the most critical ones would alwasy run (WLM).
Windows is has less designed for that as it easier to put more machines in.
Unix has te options of:
+ segregation of SASwork (utilloc). You can define many of them
+ Nice/renice http://en.wikipedia.org/wiki/Nice_(Unix)
SAS is using a fork from the sasauth (spawner) module. Do not expect the user setttings be effective set of the common user OS administration. I have noticed all forked processes are inheriting the settings of the key running the spawner. The same is true for ulimits umask etc. You can only see that by running the services by different keys. Using a dedicated key for the spawners.
You will probably need a plan wich appservers SP-server WS servers are needing at wich priority.
The settings (eg nice) to be scripted in the levx/SASapp subfolders in the user-mode files.
08-15-2013 05:34 AM
i understand and will consider all of the above mentioned options.
in terms of hardware we are very well off.
Knowledge sharing and best practices are held weekly.
All i need to do is stop the SAS Object Spawner if windows has more than 5 sas.exe processes open on one user name.
is this perhaps possible from windows itself?
Almost like a Quality of Service Denial?
08-15-2013 07:53 AM
The Object spawner is the master on servicing every request initial and following for WS and SP on all users.
Users can start more processes on their own by using Mp-connect that is bypassing the objectspawner or by using multiple Eguide sessions. Going a way of denial service will end up in unhappy users.
Windows server usage, it is not my favorite.
I know to objectspawner is mostly running as "Local server" SAS(R) 9.3 Intelligence Platform: Application Server Administration Guide
Local server has many privileges but is missing: domain admin rights
Thinking of lowering priority Windows OS processes.....
Priority setting in Windows is also possible. Scheduling Priorities (Windows) and How to Alter a Program's Base Priority at a Command Prompt, The idle is used for stand-by detection, setting it that low could prevent stanby. Manual intervention using taskmanager is usual advice. The start command could give something.