我在scala Play Framework 2.5中使用java ReactiveX(RxJava)与couchbase异步通信我想知道我的observable运行需要多长时间?我使用下面的代码定义我的observable.
def get(id: String) : Observable[Profile] = {
this.bucket
.async()
// can I have a start time here possibly using map?
.get(id)
.map[Profile](toProfile)
// can I have an end time here possibly using map?
}
Run Code Online (Sandbox Code Playgroud)
我用以下方法称呼它
Thread.sleep(1000)
val observable = get("myID")
Thread.sleep(1000)
// measure start time here
println("observable: " + observable.toBlocking.first())
// measure end time here
Thread.sleep(1000)
Run Code Online (Sandbox Code Playgroud)
如何衡量观察者运行所需的时间?
提前感谢你
弗朗西斯
我正在 Scala Play 框架 2.5 和 golang 中对一个简单的 hello world 示例进行基准测试。Golang 似乎在性能上明显领先,我想知道如何优化 play 框架以提高性能。我正在使用以下内容进行基准测试
ab -r -k -n 100000 -c 100 http://localhost:9000/
Run Code Online (Sandbox Code Playgroud)
我在生产模式下运行 play 2.5,在我的项目中随处使用默认配置。有人可以帮助我调整播放服务器的性能以获得最佳性能吗?我阅读了 default-dispatcher 线程池,但不确定要为我的电脑使用哪些设置。还有我可以检查的其他任何有助于提高性能的区域吗?
这是我的 Marchine 规格
Intel(R) Xeon(R) W3670 @ 3.20GHz 3.19GHz, 12.0 GM RAM, running windows 7 64-bit
Run Code Online (Sandbox Code Playgroud)
请注意,我使用 sbt(clean 和 stage)在 prod 模式下就地运行服务器并执行在 target/universal/stage/bin/ 中找到的 bat 文件。这是播放的源代码
package controllers
import play.api.mvc._
class Application extends Controller {
def index = Action {
Ok("Hello, world!")
}
}
Run Code Online (Sandbox Code Playgroud)
这是ab基准测试的结果
ab -r -k -n 100000 -c 100 http://localhost:9000/ …Run Code Online (Sandbox Code Playgroud) 我ConcurrentHashMap在Scala中使用a ,我想使用该computeIfAbsent()方法,但无法弄清楚第二个参数的语法.有人能告诉我什么是正确的语法?
运行以下代码时
val data = new ConcurrentHashMap[String, LongAdder]
data.computeIfAbsent("bob", k: String => new LongAdder()).increment()
Run Code Online (Sandbox Code Playgroud)
我收到以下错误
Type mismatch, expected: Function[_ >: String, _ <: LongAdder], actual: (String) => Any
Run Code Online (Sandbox Code Playgroud)
提前感谢你
弗朗西斯