我有一个在我的解决方案中的多个Role项目之间共享的类库.其中两个项目是Web角色和工作者角色.
它们各自具有相同的配置设置:
<Setting name="QueueConnectionString" value="UseDevelopmentStorage=true" />
Run Code Online (Sandbox Code Playgroud)
他们每个人都在调用这个函数:
public static void AddMessage(string Message)
{
var account = CloudStorageAccount.DevelopmentStorageAccount;
ServicePoint queueServicePoint = ServicePointManager.FindServicePoint(account.QueueEndpoint);
queueServicePoint.UseNagleAlgorithm = false;
var client = account.CreateCloudQueueClient();
var queue = client.GetQueueReference(DefaultRoleInstanceQueueName);
queue.CreateIfNotExist();
queue.AddMessage(new CloudQueueMessage(Message));
}
Run Code Online (Sandbox Code Playgroud)
当它在Worker Role中执行时,它可以正常工作; 我已经确认了Queue消息的正确读写.当它在Web角色中执行时,对queue.CreateifNotExist()的调用崩溃并显示错误"响应在此上下文中不可用".我试图搜索可能导致这种情况的信息,但到目前为止,我的搜索工作一直没有结果.如果我可以提供任何其他信息,请告诉我.
我在azure WebRole中托管WCF 4.5服务,并使用Azure ACS服务标识来管理我的wcf用户(主动身份验证).我接受这个模型,因为我们的用户数量有限
现在我想知道如何通过C#代码以编程方式管理(创建/读取/更新/删除)ACS服务标识.
我使用Package and Publish在Windows Azure云服务上部署了C#ASP.Net MVC4 Web角色.第一次上传整个包,网站运行正常.当我想发布下一组更改时,"发布"选项会尝试再次上载整个包.
我已经配置了远程桌面和Web部署,并且还根据使用Windows Azure工具发布云服务一文中所述的准则启用了增量更新.
但这似乎不起作用,Publish试图一次又一次地上传整个包.有人遇到过这个问题并提出任何修复方法吗?
我在windows azure中使用web角色主持一个网站,但我无法弄清楚如何配置域名.本周早些时候我建立了一个Azure网站(不同于Web角色),我不得不用我的域名提供商修改CNAME,然后在windows azure Web门户中配置该站点.对于Web角色,我已将我的域名提供程序指向正确的IP地址,但我似乎无法将我的Web角色配置为接受此名称.当我从新域名访问该页面时,我得到的全部是404错误.从.cloudapp.net地址访问该站点按预期工作.
您是否需要在Web门户中配置某些内容,或者是否有某种方法可以在云项目配置中进行配置?
使用 WebRole.cs配置IIS时,推荐的调用方式是什么base.OnStart()?
public class WebRole : Microsoft.WindowsAzure.ServiceRuntime.RoleEntryPoint
{
public override bool OnStart()
{
RunMyCode();
return base.OnStart();
}
}
Run Code Online (Sandbox Code Playgroud)
或者
public class WebRole : Microsoft.WindowsAzure.ServiceRuntime.RoleEntryPoint
{
public override bool OnStart()
{
var result = base.OnStart();
if (result == true) { RunMyCode(); }
return result;
}
}
Run Code Online (Sandbox Code Playgroud)
换句话说,“考虑基类的返回值有意义吗?”。
我(我认为)经历过有时基本函数必须返回false但我的代码从未被调用的行为。
我刚刚开始为Azure开发.我创建了一个具有Asp.net角色的Azure项目,但是当我尝试调试它而不进行任何更改时,它会出现以下错误:"windows azure web role entry point host已停止工作".
我在Windows Azure上部署了一个Web角色.它仅在一个实例上运行.我设置了远程桌面来访问它.
目前我需要在网站的JavaScript文件中只更改两行.
我连接到实例然后......
变化没有传播.(我下载旧内容)
然后我试着
更改没有传播(当我在RD中打开文件时,我看到了我的新内容,但是当通过http打开我看到旧内容时)
然后我试了一下
我仍然看到远程服务器中的旧内容
我的问题是,为了在不重新部署整个包的情况下只更改一个文件,我该怎么做?
我们在Azure中有一个网站,我们希望在网站上缓存内容.将更新内容的应用程序将在Azure之外.我们让这个场景与共享缓存一起使用.但是,共享缓存被认为是一项遗留功能,因此我们希望了解其他解决方案,包括使用角色内缓存.缓存的内容非常小,不应超过1 MB,并且将由C#代码使用.
我们可以使用辅助角色在Web角色或专用缓存中使用共存缓存.
我们使用角色内缓存的问题是:
如何从外部应用程序更新共存缓存?
如果有办法从外部应用程序更新共存缓存,可以使用缓存通知使所有共存缓存节点无效,对吗?
我们现在使用超小型Web角色实例 - 我们是否需要升级到小型/中型实例?
针对我们的场景,专用缓存更好吗?
提前致谢.
caching azure shared-cache azure-worker-roles azure-web-roles
我们需要在windows azure web角色中启用25个以上的性能计数器.我正在考虑RDP,并逐一启用它们.但这可能需要很长时间,如果我们扩大规模也不会保证.
有人可以帮助我是否可以自动化这个过程?最好是Powershell,但其他解决方案也可以.
这个问题也与为什么对云服务实例收取双倍费用有关,我相信我的答案是因为我有一个Cloud Service Staging Slot,它实际上是一个单独的VM而一个WebSite Staging插槽只是同一个虚拟机上的另一个网站实例,所以你支付相同的费用.
因此,要支付一个Cloud Service实例,即一个月内大约700个小时,必须只有"生产"插槽,必须删除"暂存"插槽.
我对么?
azure ×10
azure-web-roles ×10
c# ×3
acs ×1
asp.net ×1
azure-queues ×1
caching ×1
deployment ×1
shared-cache ×1