小编Tom*_*ski的帖子

ECS Fargate定价

我想确保与一个整月运行的m4.large EC2实例(2vCPU,8GB Mem)连续运行(甚至下降到1%cpu / mem利用率)相比,我能正确解释AWS的ECS Fargate定价模型(730小时)。

# Monthly cost estimates

Fargate:
    cpu = 730hrs * 2vCPU * $0.056 = $73.88
    mem = 730hrs * 8GB Mem * $0.0127 = $74.17
    total = $73.88 + $74.17 = $148.05

EKS ec2 node (1 yr reserved no upfront):
    total = 730hrs * $0.062 = $45.26

EKS ec2 node (on demand):
    total = 730hrs * $0.10 = $73.00
Run Code Online (Sandbox Code Playgroud)

看来Fargate的价格是EC2实例的3倍左右。我的Fargate定价看起来准确吗?我假设Fargate并非打算用于24/7网站之类的东西,而更像是一项一次性工作,可能类似于运行容器图像的Lamba函数。

我是否对我为整个Fargate任务cpu和mem分配支付的费用是正确的,而不管我是在利用1%还是100%的资源?

参考文献:

amazon-web-services cost-management aws-fargate

11
推荐指数
1
解决办法
2502
查看次数

具有空字符串验证的Play2.1 JSON格式

我正在尝试在解组Play2.1中的对象时验证JSON.我定义的Format对象仅在JSON中缺少字段时验证,但我想验证字段是否为nonEmpty字符串.这可能吗?我已经试过指定的minLength()约束(如看到这里的读取()调用),但我得到一个编译错误说的minLength无法找到.这只是为了元组方法吗?

请参阅以下Specs2 Junit测试,该测试现在失败,但应在正确定义约束时通过:

import org.specs2.mutable._
import play.api.libs.json._

class SimpleValidation extends SpecificationWithJUnit{

  private val badPayload: JsValue = Json.obj(
    "simpleValue1" -> "mySimpleValue", // Comment this line out to pass test
    "simpleValue2" -> ""
  )

  "An IssueFormat" should {
    "validate when unmarshalling" in {

      badPayload.validate[SimpleObj].fold(
        valid = (res => {
          // Fail if valid
          failure("Payload should have been invalid")
        }),
        invalid = (e => {
          // Should be one error
          e.length mustBeEqualTo(1)
        }))

    }
  }
}

import play.api.libs.functional.syntax._

case class SimpleObj(simpleValue1: …
Run Code Online (Sandbox Code Playgroud)

json scala playframework-2.1

2
推荐指数
1
解决办法
1403
查看次数

SBT Native Packager 的条件 JavaAgent 命令

我正在使用 scala、sbt、sbt-native-package 以及可能的 sbt-java-agent 在运行时使用 kubernetes 有条件地激活 datadog java 代理。

通过添加dd-java-agent作为依赖项并添加脚本片段,我可以仅在特定环境下激活 datadog。变量已设置,但这也将 dd-java-agent 添加到类路径中,这是我试图避免的:

val DataDogAgentVersion = "0.70.0"

libraryDependencies += "com.datadoghq" % "dd-java-agent" % DataDogAgentVersion % "runtime"

bashScriptExtraDefines += """if [ "$DD_PROFILING_ENABLED" = "true" ]; then addJava "-javaagent:${app_home}/../lib/dd-java-agent-""" + DataDogAgentVersion + """.jar"; fi""""
Run Code Online (Sandbox Code Playgroud)

有没有办法让 sbt 管理 dd-java-agent.jar 的下载,将此 jar 包含在目录中lib(或不同的目录,如果需要的话),但从类路径中排除?

我尝试过使用sbt-java-agent它将 jar 放入dd-java-agent目录中并将 jar 从类路径中排除,但我无法弄清楚在使用该插件时如何将addJava语句包装在if检查中。

感谢您的任何帮助,您可以提供!

scala javaagents sbt sbt-native-packager datadog

0
推荐指数
1
解决办法
867
查看次数