我问的更多关于这对我的代码意味着什么.我在数学上理解这些概念,我只是很难在概念上围绕它们的意思.例如,如果要对数据结构执行O(1)操作,我理解它必须执行的操作量不会增加,因为有更多项.而O(n)操作意味着您将对每个元素执行一组操作.有人可以在这里填空吗?
我知道我过去曾使用过该功能,但我不知道我之前是怎么做过的.它一定是简单的,对吧?
每个人总是说他们可以从"神话人月"中击败"每个开发者每天10行",并且开始一个项目,我通常可以在一天内获得几百行.
但在我以前的雇主中,所有开发人员都非常敏锐,但这是一个大型项目,超过一百万行代码,具有非常繁重的认证要求,并与其他数百万行项目连接.在某些时候,作为一种好奇心的练习,我在我的小组中的运输产品中绘制了代码行(不包括我们开发的工具),当然,逐步地,每个开发人员每天增加大约12行净添加.不计算更改,测试代码或开发人员每天都没有处理实际项目代码的事实.
其他人怎么样?你面临什么样的要求(我想象它是一个因素)?
如果我要将一个程序投入生产,我需要该程序做几件事,以便将其视为"操作化" - 即,工程师和操作人员以可测量和可验证的方式运行和维护.就我的目的而言,一个可操作的计划必须:
在Scala世界中,有很好的库可以处理至少前三个要求.例子:
至于部署,Scala世界采用的一种方法是将字节码和包含一个程序的库捆绑在一起,例如assembly-sbt,然后使用像Capistrano这样的工具将生成的包("胖JAR")推送到远程服务器通过SSH并行执行命令.这不是一个需要特定语言工具的问题,但我很好奇Haskell社区中是否存在这样的工具.
可能有Haskell库提供了我上面描述的特征.我想知道哪些库可以被认为是"最好的"; 也就是说,它是最成熟,维护良好的,常用于Haskell社区,是Haskell最佳实践的典范.
如果有任何其他库,工具或实践使Haskell代码"生产就绪",我也很想知道这些.
我已经尝试了Metrics插件,虽然它很好,但并不是我老板想要的.它只用一条}作为一条线来计算一条线,他不希望这被视为"它不是一条线,它是一种风格选择".我还需要生成有关所提供指标的某种形式的报告.这有什么好的工具吗?
我刚安装了石墨/ statsd用于生产用途.我真的很高兴,但我的一位同事问我是否有办法让它看起来更漂亮.老实说,我不能说我也不奇怪.
有没有替代Graphite UI可以更好地渲染数据,可能使用了一个很棒的前端图形库和http推送?
在计算机视觉和物体检测中,常用的评估方法是mAP.它是什么以及如何计算?
我学习的DropWizard指标库(原科达硬朗指标),我很困惑,当我应该使用到MetersVS Timers.根据文件:
仪表:仪表测量一组事件发生的速率
和:
计时器:计时器基本上是事件类型持续时间的直方图和其发生率的计量表
基于这些定义,我无法辨别它们之间的区别.令我感到困惑的是,Timer没有像我期望的那样使用它.对我而言,Timer就是这样:一个计时器; 它应该测量a start()和之间的时间差stop().但似乎Timers也可以捕捉事件发生的速度,感觉就像是踩到了Meters脚趾.
如果我能看到每个组件输出的示例,这可能有助于我理解何时/何处使用其中任何一个.
我一直在探索Graphite图形工具,用于显示来自多个服务器的指标,似乎"推荐"方式是首先将所有指标数据发送到StatsD.StatsD汇总数据并将其发送到石墨(或更确切地说,碳).
就我而言,我希望对服务器上的指标进行简单的聚合,例如求和和平均值,并用石墨绘制.石墨配有碳聚合器,可以做到这一点.
StatsD甚至没有提供我所说的那种聚合.
我的问题是 - 我应该根据我的用例使用statsd吗?我在这里缺少什么?