C'mon - this is what you wanted for a Tuesday afternoon, wasn't it? ;-)
>>>If at some point in the future, CVP finally moves to the Cisco VOS, which I personally think it should, then IIS is out the window anyway
It will and it should. Perhaps they will have Apache on board.
I've heard there is concern about moving from Windows for flexibility reasons for custom Classes, JARs, etc. I'd throw IP-IVR up again as an example, since it offers the same ability (fully custom classes, etc.) and seems to be handling the VOS transition ok...! Let's get CVP there!
>>>Is the recommendation then going to be for a separate Windows box running IIS?
I’m in the middle of upgrading a big site and am doing exactly that. Taking CVP off the two servers that are running IIS for the CVP farm and turning them into Media Stores only.
>>> separate Windows box running IIS?
One more point – not “box”. They would be Virtual Machines on an ESX hypervisor. It could easily be a Linux VM running Apache. Not wedded to the IIS idea but just anti-Tomcat. ;-)
A box is a box is a box in my book. I suppose VMs can "disappear" more easily, but distributing the architecture, as "old" CVP once did, seems like a backwards move to me. HUGE disclaimer: I'm also referencing CVP 8.x and up, SIP only, no SSL...so I'm seeing 4 or more physical/virtual CVP Servers as a pretty huge deployment.
>> So you don't have to send in a media URL (http://blahblah) to every application
Default Audio Path = http://blahblah/ and each audio item looks like “foo.wav”. Or use the App Modifiers and set a session variable so Audio Item looks like “{SessionVariable}/foo.wav” if you want different paths for the multiple languages your app has to handle. Many options – although I do like to keep those short.
But now your Default Audio Path references either an IP address, or, more likely, a DNS alias/hostname. So now you have to configure that ip host entry on every gateway, or enter it in DNS if you're that brave. Then, even if you do some config across your gateways with the local ip host entry to "load balance", you're always arbitrarily pounding a single media server unless it fails. Sure, you can add ACS or something, but IMHO, why would you complicate your deployment like that? That's like adding in a SIP Proxy! (hehe - poke the bear)
I'm a fan of keeping everything local (more on that below - Cisco seems to be moving in that direction also), and in a standard deployment, the gateway gets the IP address of the CVP Server when it connects, so your Studio apps are always using local media. You're all but guaranteed "fault tolerance", because if you've connected to the CVP Server in the first place, you know your media files are going to be available on that same server.
>>>if you're using collocated Call Server/VXML Server
On big farms you may have more call servers than VXML servers. Big farms will probably have 2 dedicated Media Stores. That’s how it was originally with CVP 3.0
True enough, but check the CVP 9.0 Release Notes:
"In Unified CVP 9.0(1), the Call Server, VXML Server, and Media Server are combined as one installation. Installing the CVP Server will install all three components. In the earlier versions, Call Server, VXML Server, and Media Server could be installed on different machines."
Like it or not (I happen to like it a lot!), the convergence of scalability, etc. is leading everything towards consolidation. The fact that "Media Server" is included in this tells me I might be barking up the right tree. Again, disclaimer same as above - I know there are plenty of old deployments out there (I just spoke to a customer last week running 3.1 - I shuddered a little...), but let's face it: We need to talk 8.0 and up, and SIP.