播放不断写入光盘?导致亚马逊ec2上的账单更高
我给自己准备了一个 Amazon ec2 Micro Instance(VPN 服务器)来玩。
问题在于,亚马逊会为您在微实例中执行的每个光盘IO向您收费。
该实例运行的是 Amazon Linux,这是 CentOS 的一种风格。
我已经在服务器上的Play 2.0(.2)框架中启动了一个Scala应用程序,我是唯一一个连接到该应用程序的人。
我观察到服务器上每隔几秒钟就会提交IO事务,为了缩小范围,我安装了一个名为.iotop
下面是几秒钟后的输出。
TID PRIO USER DISK READ DISK WRITE SWAPIN IO>
23333 be/4 root 0.00 B/s 11.91 K/s 0.00 % 0.00 %
COMMAND java -Dsbt.ivy.home=/usr/play-2.0.2/framework/../repository -Djava.runtime.name=OpenJDK ~/jars/slf4j-api.jar:/usr/play-2.0.2/repository/local/org.slf4j/jul-to-slf4j/1.6.4/jars/j
日志文件中的猫
cat /home/ec2-user/socketTest/logs/application.log
2012-07-05 11:43:31,881 - [INFO] - from play in main
Listening for HTTP on port 9000...
因此,Play 不会向日志文件写入任何内容。
第一个问题是我是否正确理解了iotop,并且Play确实是光盘IO小偷。
如果是这样,为什么游戏使用IO?
我的应用程序是一个简单的 websocket 示例。从本质上讲,它将输入回显到输出。IO发生,即使你没有任何东西被推过websockets。