小编Jef*_*Fay的帖子

你首选的php部署策略是什么?

我正在开始使用PHP开发一个新项目,我很乐意从其他开发人员那里获得有关他们首选的PHP部署策略的反馈.我希望自动化一些事情,以便一旦提交更改,就可以将它们快速迁移到开发或生产服务器.

我有使用Capistrano和Ruby进行部署的经验以及一些基本的shell脚本.

在我第一次独自潜水之前,听听其他人在他们的项目中如何处理这个问题会很棒.

更多的信息

目前,开发人员处理站点的本地安装并将更改提交到subversion存储库.通过从svn导出标记版本并将其上载到服务器来进行初始部署.

通常通过手动上载更改的文件来进行其他更改.

php deployment capistrano

160
推荐指数
5
解决办法
7万
查看次数

节点和错误:EMFILE,打开的文件太多

有些日子我一直在搜索错误的工作解决方案

Error: EMFILE, too many open files

似乎很多人都有同样的问题.通常的答案是增加文件描述符的数量.所以,我试过这个:

sysctl -w kern.maxfiles=20480,

默认值是10240.这在我看来有点奇怪,因为我在目录中处理的文件数量低于10240.更奇怪的是,在我增加了文件描述符的数量之后,我仍然收到相同的错误.

第二个问题:

经过多次搜索后,我找到了解决"太多打开文件"问题的方法:

var requestBatches = {};
function batchingReadFile(filename, callback) {
  // First check to see if there is already a batch
  if (requestBatches.hasOwnProperty(filename)) {
    requestBatches[filename].push(callback);
    return;
  }

  // Otherwise start a new one and make a real request
  var batch = requestBatches[filename] = [callback];
  FS.readFile(filename, onRealRead);

  // Flush out the batch on complete
  function onRealRead() {
    delete requestBatches[filename];
    for (var i = 0, l = batch.length; i …
Run Code Online (Sandbox Code Playgroud)

javascript macos file-descriptor node.js

147
推荐指数
8
解决办法
13万
查看次数

.NET:缺少必需的配置设置时抛出哪个异常?

这是一个标准方案:

if(string.IsNullOrEmpty(Configuration.AppSettings["foobar"]))
   throw new SomeStandardException("Application not configured correctly, bozo.");
Run Code Online (Sandbox Code Playgroud)

问题是,我不完全确定应该是哪个例外SomeStandardException.

我仔细阅读了3.5框架,发现了两个可能的候选人:ConfigurationExceptionConfigurationErrorsException.

System.Configuration.ConfigurationException

发生配置系统错误时引发的异常.

备注

ConfigurationException如果应用程序试图读取或写入数据到配置文件,但不成功则抛出异常.可能的原因可能包括配置文件中格式错误的XML,文件权限问题以及值无效的配置属性.

注意:

ConfigurationException维护该对象是为了向后兼容.该ConfigurationErrorsException 对象替换配置系统.

这个例外实际上听起来非常适合我所需要的,但它已被标记为过时,所以,ixnay on atthay.

这让我们彻底迷惑ConfigurationErrorsException:

System.Configuration.ConfigurationErrorsException

当前值不是EnableSessionState值之一.

如您所见,其文档完全没用.(在本地和在线帮助中都是如此.)对课程本身的检查表明,对于我想要的东西来说,这是一种极端的过度杀伤力.

简而言之,我需要一个标准异常,当应用程序配置设置丢失或包含无效值时应抛出该异常.你认为框架有一个例外,它允许应用程序使用它.(它显然没有,但它被标记为已过时,并且被替换的东西范围较大.)

你们有什么解决方案,如果有的话,我们将不得不将其吸收并为此推出自己的例外情况?

编辑补遗

有些人问我是否可以提供默认值,然后继续.在某些情况下,是的,在这些情况下,不会抛出异常.但是,对于某些设置,这将不适用.例如:数据库服务器名称和凭据,身份验证服务器以及安装的第三方应用程序的路径.

还值得注意的是,我主要处理的应用程序是以批处理模式运行的控制台应用程序,我希望它抛出一个由main方法捕获的异常,并在没有正确配置的情况下正确记录.(这是我继承的遗留代码,目前只是假设一切都很好.)

.net configuration exception

116
推荐指数
6
解决办法
4万
查看次数

我如何选择Semaphore和SemaphoreSlim?

他们的公共界面看似相似.该文档指出SemaphoreSlim是一种轻量级替代方案,不使用Windows内核信号量. 该资源表明SemaphoreSlim速度更快.SemaphoreSlim在什么情况下对信号量更有意义,反之亦然?

c# multithreading semaphore

98
推荐指数
4
解决办法
2万
查看次数

Func <string,string>和delegate有什么区别?

我看到代表有两种形式:

A. Func<string, string> convertMethod = lambda 

B. public delegate string convertMethod(string value);
Run Code Online (Sandbox Code Playgroud)

我不确定这两者之间究竟有什么区别.他们都是代表吗?我相信第一个会使用lambda,第二个必须有一个方法来实际执行工作.我也可能感到困惑.

c# asp.net lambda delegates

68
推荐指数
4
解决办法
2万
查看次数

你如何使用asp.net mvc 3和c#清除cookie?

好吧,所以我真的认为我这样做是正确的,但饼干没有被清除.

 Session.Clear();
 HttpCookie c = Request.Cookies["MyCookie"];
 if (c != null)
 {
     c = new HttpCookie("MyCookie");
     c["AT"] = null;
     c.Expires = DateTime.Now.AddDays(-1);
     Request.Cookies.Add(c);
 }

 return RedirectToAction("Index", "Home");
Run Code Online (Sandbox Code Playgroud)

当重定向发生时,它再次找到cookie并继续前进,就好像我从未注销过一样.有什么想法吗?

c# cookies asp.net-mvc-3

55
推荐指数
3
解决办法
6万
查看次数

Django模型字段默认为空

我需要让我的Django应用程序允许我为某个模型字段设置一个默认值NULL.我已经查看了null,blankdefault参数,但是我不太清楚我需要使用哪三种组合来获得所需的效果.我尝试过设置,default=NULL但它犯了一个错误.如果我指定blank=True, null=True并且没有默认值,那么它是否会默认返回NULL来运行时?

python django django-models

54
推荐指数
3
解决办法
5万
查看次数

如何从numpy数组生成音频?

我想在numpy中从2D数组创建"心率监视器"效果,并希望音调反映数组中的值.

python audio numpy matplotlib

45
推荐指数
5
解决办法
5万
查看次数

WPF:什么是App.xaml的目的?

我已经完成了.Net开发一段时间,但我是WPF技术的新手.App.xaml的假设目的是什么?另外,通常会在其中添加什么类型的xaml代码?对于简单的应用程序来说,它似乎可以被忽略并保持不变.这是真的?

wpf xaml

43
推荐指数
4
解决办法
3万
查看次数

使用IComparer进行排序

我正在尝试使用a IComparer来对点列表进行排序.这是IComparer类:

public class CoordinatesBasedComparer : IComparer
{
    public int Compare(Object q, Object r)
    {
        Point a = (p)q;
        Point b = (p)r;
        if ((a.x == b.x) && (a.y == b.y))
            return 0;
        if ((a.x < b.x) || ((a.x == b.x) && (a.y < b.y)))
            return -1;

        return 1;
    }
}
Run Code Online (Sandbox Code Playgroud)

在客户端代码中,我试图使用这个类来排序点p(类型List<Point>)的列表:

CoordinatesBasedComparer c = new CoordinatesBasedComparer();
Points.Sort(c);
Run Code Online (Sandbox Code Playgroud)

代码出错了.显然它正在期待IComparer<Point>排序方法的论据.
我需要做些什么来解决这个问题?

c# sorting icomparer

40
推荐指数
3
解决办法
8万
查看次数