I use Amazon Web Services’s Elastic Bean Stalk to automagically scale my ASP.Net web applications. I’m using a Windows 2012 R2 based instance.
I also use SignalR for real time communications within my app. While, I could use Ajax Long Polling, WebSockets are a tad bit faster.
Create a folder in your project named
If Visual Studio complains about not being allowed to add a folder with a leading dot, name the folder
.ebextensions. and the period at the end will be removed for you.
Within the newly created
.ebextensions folder, create a file, named whatever you want, ending in a
.config extension. This is a YAML file, note that each level of indentation is two spaces.
I named mine
1commands: 2 installWebSocketsFeature: 3 command: "%WINDIR%\\system32\\DISM.EXE /enable-feature /online /featureName:IIS-WebSockets"
Publish your package to EBS and you’ll now get a machine with the IIS WebSockets feature installed on creation of the instance.
Here is a list of all (most?) of the features available to install: The IIS 8.5 Module List