Articles of asp.net

数据库服务器和具有不同操作系统版本

如果我的应用程序服务器是Windows 2008,而我的数据库服务器是Windows 2003,那么在Windows 2008上,我是否处于劣势?

如何确定哪些防火墙端口需要打开才能通过Web访问远程系统?

我是一名Web开发人员,并正在与具有位于特定IP / URL的Web服务的客户端合作。 对此的访问被防火墙过滤,所以我们需要一些本地机器和我们的Web服务器访问远程服务器。 我们向所有的机器提供了IP,客户正在问我们需要打开哪些端口。 在这一点上,我不知道该说些什么,因为我对服务器/networking/安全的了解很多。 我们的环境很简单: 运行ASP.NET 4.0的3台本地开发机器。 远程服务为网站提供数据,所以我们只需要用SOAP消息发送一个HTTP POST并接收一个响应。 我们的networking服务器是一个VPS,它也需要能够打这个安全的IP。 我的问题是这样的: 如何find需要打开的端口? 我build议80(因为我认为这是networkingstream量所必需的),networkingpipe理员表示担心打开此端口的stream量。 任何帮助表示赞赏!

Windows Server 2008 R2网站:模拟问题

我有一个网站,谁使用模拟。 当我的匿名用户设置为IUSR并将应用程序池标识设置为NetworkService时,某些页面不显示。 我得到一个空白页面,没有错误信息。 如果我把匿名用户作为ApplicationPoolIdentity,并把池标识localSystem它工作正常。 如果我把匿名用户的pipe理员用户它工作正常。 我知道我有一个安全问题,但我不知道什么是我需要设置安全策略为每个工作正常的文件夹。 我把对网站文件夹的读/写访问权限给IUSR,IIS_IUSRS,networking服务和我的模​​拟用户组。 有人知道我的许可是什么意思吗? 我也发现这篇文章,但没有成功.. http://blogs.iis.net/webtopics/archive/2009/03/13/changes-to-application-pool-identities-in-iis-7-5- beta.aspx

当服务器脱机时,IIS的应用程序请求路由和自定义错误页面

我想知道是否有一种方法来显示自定义错误页面时出现错误与我的服务器场使用IIS的应用程序请求路由。 例如,让我们假设我的服务器场中的所有服务器都处于不健康的状态,我希望向用户显示一个友好的错误消息,而不是默认的502.4 – 错误的网关错误消息,直到我发现什么是错误的。 有没有办法做到这一点?

在IIS 6中,反向代理后面的VisualSVN Server阻止ASP.NET目录

我已经将VisualSVN Server运行在IIS 6,Windows Server 2003中的反向代理之后。这并不理想,但对于服务器上的主要Web应用程序,我只有一个IP地址和SSL证书可用。 除了尝试提交或浏览默认的ASP.NET目录(App_Browsers,App_Code,App_Data)时,一切都可以正常工作。 SVN提交失败这些目录 – 我相信这是因为IIS将不会默认提供服务。 反向代理使用IIS中的虚拟目录 – 是否可以在web.config中对此虚拟目录进行更改以解决此问题?

ASP.Net/ASP.Net MVC站点在Windows 8上无限期地挂在IIS 8上

环境 在我的Windows 8开发计算机上通过IIS8本地运行ASP.Net网站时,我最近在开发环境中遇到了奇怪的行为。 我观察了两个独立网站上的行为(一个是一个陈旧的,臃肿的ASP.Net网站,上面有数千行代码和很多不好的做法;另一个是一个新的,轻量级的ASP.Net MVC,总共600行代码,希望没有那么多坏习惯)。 这两个站点都在本地运行IIS8(即不通过Visual Studio的本地Web服务器,也不通过IIS Express)。 无论是否打开VS,无论是debugging还是仅使用站点都会出现问题。 症状 在服务了less量的请求之后(或许是5个或更less),如果应用程序池没有被刷新,任何未来的请求都将无限期地挂起(直到从浏览器/客户端停止 – 也就是说我从来没有收到响应,浏览器继续等待) 。 一旦发生这种情况,获取响应的唯一方法是通过iisreset -stop命令强制停止IIS。 另外,它是客户端不可知论的 – 我遇到了Chrome,Firefox,IE,Opera和Fiddler的问题。 我真的不知道如何解决这个问题 – 我查看了事件查看器,根本没有注册任何东西,当我查看进程(CPU和RAM使用情况完全正常)时,也没有显示任何明显错误。 在网站的其中一个代码库中似乎没有出现错误。 这个问题几天前才开始发生在第二个网站上 – 虽然我不记得做过任何可能导致它发生的变化。 问题 我猜这个答案有点希望,但是:有没有什么明显的performance出这些症状 – 如果是的话,可以采取什么措施来解决呢? 否则,哪些诊断工具可能帮助我找出原因? 我对IIS的内部工作并不是特别了解,也不知道去哪里看(尽pipe我已经尝试过使用我的Google技能,我保证!)。 提前感谢任何花时间帮助的人! 我很乐意根据要求提供进一步的细节。

Azure ASP.NET网站http请求已排队

我们在Azure上部署了一个性能可怕的网站。 当负载增加时,响应时间会增加到整个分钟! CPU负载不是很高,在40%的地区(我们运行一个媒体实例(S2))。 经过很多debugging(我不知道是什么导致了这个),我终于偶然发现了一个'FREB'日志,它表示请求正在排队: AspNetStart Data1 =“GET”,Data2 =“/ profiel / aanvullen”,Data3 =“”13:48:44.279 AspNetReqQueued 13:48:44.810 AspNetReqDequeued 13:49:39.545 AspNetAppDomainEnter Data1 =“/ LM / W3SVC / xxxx / ROOT-1-xxxxx 我认为Azure实例将被configuration为“最优”,所以我不用担心设置像maxConcurrentThreadsPerCPU或maxConcurrentThreadsPerCPU这样的东西。 该网站不使用数据库,但它确实调用了2个不同的REST API,所以我认为排队会发生在那里。 我试着检查webrequest.ServicePoint.ConnectionLimit属性,但我记得它打印了一些像200万(或可能是最大诠释)。 由于CPU使用率低,Azure不会启动一个新的实例,我不认为另一个实例会有所帮助。 基本上我有两个问题: 这可能是什么原因?我应该改变什么? 我怎么能debugging呢? Azure中有很多图表和设置。 我不知道我在哪里可以看到我需要看到的。 带宽是一个瓶颈,对特定Web服务的开放请求的数量,别的等等。

请求的0.01%的IIS 500.19错误

我们已经部署了一个简单的ServiceStack应用程序,在IIS 7中提供了Podcast RSS-feeds。清理IIS日志,我们发现less量的请求得到一个HTTP 500.19错误代码。 在约55万个日常要求中,约有600个失败,500.19。 这意味着我们成功地提供了99.9%的请求的RSS。 我仍然很好奇为什么我们失败了0.1% 。 通常由于configuration无效而发生500.19。 只有0.1%的请求,configuration如何失败? 我还没有能够手动重现错误,所以我没有HResult代码 。 这在IIS日志中也不存在。 但是,IIS日志中的sc-win32-status是64 一些细节: 应用程序的内部日志logging不会报告任何错误,表明请求永远不会到达我们的代码。 这个错误通常发生在最大的RSS(740KB gzipped)上,但也发生在较小的(140KB gzipped)上。 失败的请求通常来自移动客户端(IOS,Android),这并不像通常在移动设备上消费的播客那么多。 应用程序部署在6个节点上,使用BigIP进行负载平衡。 configuration文件不是跨节点共享的。 所有节点的0.1%错误率是相等的。 我们有输出caching在IIS中激活(但没有内核caching)。

ASP.NET性能计数器暂时降到零

对VM映像有一些性能问题(我无权访问VM主机,只访问客户机操作系统)。 试图确定为什么有一段时间的范围从10-60秒,其中服务器只是停止推出任何请求。 在这样做的时候,我有几个性能计数器,但是我注意到一些非常奇怪的东西,在这些“死亡”期间开始后,我的所有ASP.NET应用程序计数器(活动会话,pipe道实例计数,请求执行)一旦我们摆脱了“死亡”时期,就恢复到正常水平。 在这里查看图表: 我完全知道这些会议虽然从柜台统计中删除,但在整个时间内仍然保持运转。 有没有人从柜台看过这种行为? 是否有可能导致这些计数器不正常的虚拟机资源匮乏,甚至可能导致整个死亡期?

IIS出站带宽2008 vs 2012

我正在开发一个项目,将Web服务器从2008年升级到2012年。我已经制作了2012年的计算机,并准备好使用从当前生产2008年计算机上克隆的站点代码,但是当进行负载testing时,我发现出站带宽在新的比旧的要高得多。 我已经梳理了所有我能想到的事情,将解决这个问题,并对付死胡同。 (压缩设置,甚至头对头比较apphost.config web.config machine.config等)这些服务器运行相同的代码,相同版本的.NET,当然最大的不同是操作系统版本 – 但除了他们是相同。 例如:现在我有一台旧的和一台新的服务器负载相同,每个用户通过负载均衡器路由100个,所以stream量应该大致相等。 2008字节在:平均90kbps 2012字节在:平均86kbps (非常接近,反映了他们有相同数量的连接,对吧?) •2008年的字节数:平均64kpbs •2012字节输出:平均136kbps 在这个规模上并不是什么大事,但这只有100个用户。 在我们的服务器池中将这个数字乘以40-50k,这个出站带宽成为一个巨大的问题。 我们想下周与新的服务器一起生活 – 帮助! 更新:我在他们两个扔更多的stream量。 这是一个如何不成比例的带宽的例子。 目标是让底部graphics看起来像顶部graphics。 Update2:我刚刚克隆了一台现有的2008年机器,并做了2012年升级。 带宽比例看起来不错,与2008年的机器差不多。 我仍然无法find我的新服务器有什么不同。