首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >管理连接字符串Azure云服务部署

管理连接字符串Azure云服务部署
EN

Stack Overflow用户
提问于 2015-01-07 19:11:25
回答 4查看 857关注 0票数 4

我有一个azure云服务项目,它由一个工人角色和一个网络角色组成。我需要临时部署和实时部署,但我需要它们具有不同的连接字符串,因为worker角色生成大量数据,这些数据是由web应用程序报告的,而我不希望在生产中有测试数据。

配置它的最好方法是什么,这样我就可以快速地从暂存状态交换或升级到实时状态,并且连接字符串只需要更新,而不必使用不同的配置从visual studio重新发布。

EN

回答 4

Stack Overflow用户

发布于 2015-01-08 02:07:20

您可以编写一个PowerShell脚本来调用Azure Management REST API并更改连接字符串。

代码语言:javascript
复制
    $restEndpoint = "https://management.core.windows.net/$subscriptionId/services/webspaces/$webspace/sites/$website/slotConfigNames"

    $appSettings = $appSettingNames -replace ",", "','"
    $connectionStrings = $connectionStringNames -replace ",", ""","""
    $payload = "{""AppSettingNames"": [""$appSettingNames""], ""ConnectionStringNames"": [""$connectionStrings""]}"

    Invoke-WebRequest -Uri $restEndpoint -Body $payload -CertificateThumbprint $certThumbprint -ContentType "application/json" -Headers @{ "x-ms-version" = "2014-04-01" } -Method POST
票数 1
EN

Stack Overflow用户

发布于 2015-01-08 01:56:32

据我所知,目前还没有针对这一点的自动化工具。当您交换时,您的配置也会交换。据我所知,您不想交换配置,而只想交换应用程序。

您可能需要构建自己的交换工具,该工具将以您想要的方式连接到管理API和交换。

票数 0
EN

Stack Overflow用户

发布于 2015-01-08 06:03:00

正如其他人所指出的,这是当前一代Azure云服务(Web角色/工作者角色)中存在的VIP交换/插槽交换概念的一个已知限制。

另一种解决方法是使用OnRoleStart事件处理程序,编写一些正在使用的custom code to inspect slot并更新运行配置。

我所看到的解决这类问题的方法也是将尽可能多的配置从本地配置移到远程数据库中,然后将其用作配置源。考虑到web.config配置节在某些情况下的工作方式,这并不总是可行的。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/27818146

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档