DropWizard度量标准与定时器

我正在学习DropWizard Metrics库 (以前称为Coda Hale度量标准),对于何时应该使用Meters和Timers ,我感到困惑。 根据文件: 仪表:仪表测量一组事件发生的速率 和: 定时器:定时器基本上是一种事件types的持续时间的直方图,以及它发生率的一个米 基于这些定义,我无法辨别这些之间的区别。 我感到困惑的是, Timer并没有像我期望的那样被使用。 对我来说, Timer就是这样:一个计时器; 它应该测量start()和stop()之间的时间差。 但是, Timers似乎也捕捉到事件发生的速度,这感觉就像是在Meters'脚趾。 如果我能看到每个组件输出的例子,可以帮助我理解何时/在哪里使用这些。

Google Analytics(分析)有更快的select吗?

我喜欢保持我的网站非常轻快,但当然我需要某种用户跟踪和分析。 Google Analytics(分析)似乎总是需要足够多的处理时间,我想用更快的(和/或本地托pipe)代替它,可能具有更less的function。 我真的只关心这些指标:浏览器,操作系统,引荐来源,和每个网页的#点击在给定的一天或一周。 有没有人有任何好的build议,或谷歌分析真的是最好的select?

如何在JSF中显示我的应用程序的错误?

在我的JSF / Facelets应用程序中,下面是我的表单的一部分的简化版本: <h:form id="myform"> <h:inputSecret value="#{createNewPassword.newPassword1}" id="newPassword1" /> <h:message class="error" for="newPassword1" /> <h:inputSecret value="#{createNewPassword.newPassword2}" id="newPassword2" /> <h:message class="error" for="newPassword2" /> <h:commandButton value="Continue" action="#{createNewPassword.continueButton}" /> </h:form> 我希望能够根据continueButton()方法中发生的事件将错误分配给特定的h:message标记。 需要为newPassword和newPassword2显示不同的错误。 validation程序不会真正起作用,因为将传递结果(从数据库)的方法在continueButton()方法中运行,并且运行两次的代价太高。 我不能使用h:messages标记,因为页面有多个地方,我需要显示不同的错误信息。 当我尝试这个时,页面显示每个消息的重复。 我试过这个最好的猜测,但没有运气: public Navigation continueButton() { … expensiveMethod(); if(…) { FacesContext.getCurrentInstance().addMessage("newPassword", new FacesMessage("Error: Your password is NOT strong enough.")); } } 我错过了什么? 任何帮助,将不胜感激!

何时使用浮动

多年以前,我学会了用浮动的精度问题,所以我不再使用它们。 然而,我仍然遇到代码使用浮动,这让我畏惧,因为我知道一些计算将是不准确的。 那么,什么时候适合使用浮动? 编辑:作为信息,我不认为我已经遇到了一个程序,其中一个数字的准确性并不重要。 但是我会对听到的例子感兴趣。

Visual Studio 2005 Express在哪里?

我正在开发一个需要Visual Studio 2005的项目,我一直在为Visual Studio 2005 Express寻找一个合法的下载站点,但是似乎微软只希望人们下载2008版本。 任何人都知道为什么它是这样的,如果有什么地方可以连接Visual Studio 2005 Express的地方?

DROP … CREATE与ALTER

当涉及到创build存储过程,视图,函数等,最好做一个DROP …对象的CREATE或ALTER? 我已经看到许多“标准”文件说明做一个DROP …创build,但我已经看到许多支持ALTER方法的意见和论据。 ALTER方法保留了安全性,而我听说DROP … CREATE方法在第一次执行时强制重新编译整个SP,而不是仅仅重新编译一个语句级别。 有人可以告诉我,如果有其他的优势/劣势使用之一?

在主UI线程上的.NET中引发事件

我正在开发.NET中的类库 ,其他开发人员将最终使用。 这个库使用一些工作线程, 这些线程触发状态事件,这将导致一些UI控件在WinForms / WPF应用程序中被更新 。 通常,对于每次更新,您都需要检查WinForms上的.InvokeRequired属性或相应的WPF属性,并在主UI线程上调用此属性进行更新。 这可以很快变老,而且让最终开发者这样做是不对的,所以… 有什么办法,我的图书馆可以触发/调用主UI线程的事件/委托? 尤其是… 我应该自动“检测”“主”线程使用? 如果不是,我应该要求最终开发者在应用程序启动时调用一些(伪) UseThisThreadForEvents()方法,以便我可以从该调用中获取目标线程?

如何通过SSH在ubuntu服务器上检查php和apache的存在

我怎样才能检查Apache是​​通过SSH在Ubuntu服务器上安装了PHP和MySQL? 另外,如果它安装在哪个目录? 如果安装了其他的软件包,比如lighttpd,那就是。

JS:从string中的path中删除文件名的最佳方法?

我有string格式如下: path/to/a/filename.txt 现在我想做一些string操作,这使得我可以非常有效地从这段代码中删除“filename.txt”部分。 换句话说,我希望我的string变成这样: path/to/a/ 什么是最有效的方法来做到这一点? 目前我正在分割string,并重新连接除了最后一个单独的元素,但我感觉这是一个真正的,低效的方法来做到这一点。 这是我目前效率低下的代码: res.getPath = function(file) { var elem = file.split("/"); var str = ""; for (var i = 0; i < elem.length-1; i++) str += elem[i] + "/"; return str; }

第一个Python列表索引大于x?

在大于x的列表中find第一个索引的最Python方法是什么? 例如,用 list = [0.5, 0.3, 0.9, 0.8] function f(list, 0.7) 会返回 2.