Home Forums SQL Server 2008 SQL Server 2008 - General What would be the major concerns for running WCF services and xp_cmdshell on SQL Server? RE: What would be the major concerns for running WCF services and xp_cmdshell on SQL Server?

  • I'm not super familiar with the performance impact of WCF in this sort of a setup, but I can tell you this - SQL Server, at a basic level, requires 3 resources: Disks, Memory, and CPU.

    From what you've told me, it definitely seems like evaluations need to be done to establish whether or not merging these two environments is feasible. You need to get a baseline for your SQL Server's current average requirements for Disk, Memory, and CPU, along with peaks for each. You would then need to get a similar baseline for your WCF's resource requirements in a stand-alone environment. Ideally, all of this should be taking place in a test environment. Until you give us some actual values to work with, it would be difficult to say whether or not this would be feasible.

    Things that you should specifically be concerned about -

    Disk I/O. Is the WCF application going to be contending for similar disk resources? Will it be reading/writing from the same volumes that your databases live on? Don't forget about TempDB. If so, you can pretty much guarantee that your SQL Server's performance will suffer.

    Memory. If these two services MUST exist on the same server, you will need to make sure that SQL Server's memory configuration is changed from the default, and that you establish an appropriate upper limit for its needs. Otherwise, it's possible that the between SQL Server and WCF, the server will start suffering massive memory faults. Again, this is where it would be very helpful to get a baseline for how much memory your WCF service will consume. If you know that your server has 16GB, your SQL Server regularly allocates 12GB, and your WCF service needs 5GB, you're going to be running into issues.

    CPU. This would probably be harder to truly get a grasp on, and it's not my area of expertise...but, if you know that your SQL Server is regularly impacting CPU time and your WCF service has a sizeable impact on a test server (ideally with a comparably-equipped machine, specifically processor type and core quantity), it's quite likely that the combination of the two will result in your server's CPU being pegged.

    If any one of these three are impacted, you can figure to see problems with your SQL Server's performance. If two or more are impacted, it's possible that your instance could be completely unresponsive. There's a reason why database servers are typically standalone machines.