Что я выучил:
1. activerecord-sqlserver-adapter можно использовать для подключения приложения RoR к SQL Server, просто изменив файл database.yml. Большое уважение к Кену Коллинзу (http://www.engineyard.com/blog/2011/modern-sql-server-rails/)
2. Ник Хилл показал нам, как разместить приложение RoR в веб-роли Windows Azure.
(http://blogs.msdn.com/b/mcsuksoldev/archive/2010/02/26/9969876.aspx)
3. Вейли Лау, в разделе «Как установить виртуальное сетевое соединение между облаком и локально с помощью Windows Azure Connect (часть 2 - Подготовка приложения)», показал нам, как настроить виртуальное сетевое соединение между веб-ролью Windows Azure и локальный SQL-сервер с Windows Azure Connect. В частности, Вели устанавливает локальный SqlDataSource на шаге 2 и 3 своей статьи. Я бы опубликовал ссылку, но я такой новичок в stackoverflow, что мне разрешено размещать только 2 ссылки: (
В любом случае, что я пытаюсь выяснить:
4. Как подключить приложение RoR, размещенное в веб-роли Windows Azure, к локальному SQL Server, используя виртуальное сетевое соединение с Windows Azure Connect (я не думаю, что это так же просто, как изменить файл database.yml на указывают на локальную базу данных, к сожалению)
Я чувствую, что ингредиенты есть, но не могу понять, как приготовить еду, так сказать. В некотором контексте пользователи моего приложения группируются в команды, и необходимо, чтобы команды могли точно указать, где находятся их базы данных (например, в облаке или на одном из их собственных серверов) - отсюда и RoR / Azure, иначе Heroku будет моим хозяином.
Альтернативой, которую я рассматривал, является распространение отдельной копии приложения для тех команд, которые хотят использовать свои собственные базы данных и размещать их самостоятельно, и в этом случае у меня все готово. Однако я боюсь, что это может быстро испортиться, когда я думаю о будущих обновлениях и счастье разработчика.
Ценю ваши мысли.