我們正在使用Play應用程序來頻繁查詢MySQL。事實上,幾乎每個操作都以某種方式查詢數據庫。在Play Framework 2.0.3中使用阻塞IO
據我所知,Play旨在支持異步和非阻塞應用程序,並鼓勵根據這種編碼。但是由於com.mysql.jdbc.Driver是一個阻塞的JDBC驅動程序,我沒有看到使用非阻塞查詢的方法。
當我們的應用程序被多個(6-20)用戶同時使用時,我們遇到了嚴重的性能問題。隨着您開始使用應用程序,它會隨着時間的推移而變慢。
所以我試圖改變默認的通過將這個application.conf內側,在這裏建議「高度同步應用」玩阿卡配置:http://www.playframework.com/documentation/2.1.0/ThreadPools
play {
akka {
event-handlers = ["akka.event.slf4j.Slf4jEventHandler"]
loglevel = WARNING
actor {
default-dispatcher = {
fork-join-executor {
parallelism-min = 300
parallelism-max = 300
}
}
}
}
}
問題我雖然是:大多數其他配置application.conf是key = value對,我只是把這個json對象直接放在文件中,它會正常工作嗎?當我這樣做時,我沒有得到任何錯誤,所以我認爲它接受了這個?
如果是,我該如何測試這是否生效?我沒有看到應用程序的性能急劇變化。所以我不確定我是否在這裏得到了根本性的錯誤。任何幫助,指針或意見將不勝感激。
我們在2個CPU和2GB xmx的Linux機器上使用OpenJDK 1.6的Play 2.0.3。