Arn*_*sen 4 apache mono mod-mono asp.net-mvc-2
我在mod_mono下使用mono 2.8.1运行ASP.NET MVC2应用程序,目前必须定期清除apache似乎泄漏的信号量数组.
我开始使用单转rpm的2.6.7一段时间,但是在泄漏的信号量数组(即越来越多的ipcs积累)和一些与ASP.NET MVC2的不兼容性方面都存在一些问题,所以我从源代码构建了2.8.泄漏仍在继续,所以我只是从源头构建了2.8.1,同样的事情仍在发生.这是在亚马逊AMI上(我猜它是引擎盖下的核心).症状是信号量数组不断积累,如果我在一段时间后没有用ipcrm手动删除它们,那么对ASP.NET页面的请求将不返回日志中没有错误的内容.我也在DN AM 5.4 AMI中复制了同样的问题.
是否有人在apache/mod_mono下成功运行ASP.NET,我只是遇到了一些边缘情况?由于我无法找到任何其他人发现这种情况,我认为这不是一般的ASP.NET错误.任何想法如何我可以进一步解决这个问题?
终于弄清楚这一点,虽然解决方案暴露了我自己的错误,没有跟进我收到的其他警告,我认为这应该对其他任何人都有用.
默认情况下,apache config具有以下配置顺序:
Include conf.d/*.conf
User apache
Group apache
Run Code Online (Sandbox Code Playgroud)
即,在设置httpd用户和组之前加载所有conf文件(通常是定义了vhost的文件).这会在重启时产生以下警告:
[Mon Jan 24 00:12:50 2011] [crit] The unix daemon module not initialized yet.
Please make sure that your mod_mono module is loaded after the User/Group
directives have been parsed. Not initializing the dashboard.
Run Code Online (Sandbox Code Playgroud)
虽然一切似乎无论如何都有效,但这是信号量泄漏的原因.如果你移动Include后User/Group,警告消失,mod_mono不再泄漏信号量.
| 归档时间: |
|
| 查看次数: |
2283 次 |
| 最近记录: |