在局域网(LAN)中访问webrick服务器速度过慢

问题现象描述

在Linux虚拟机中进行rails开发和server构建,通过外边的windows访问应用时, 速度很慢。

对策一

参考帖子: http://www.flatws.cn/article/program/ruby/2011-05-01/23456.html

帖子内容总结(修改了两个文件)

修改文件1

路径:/usr/local/rvm/rubies/ruby-1.9.3-p286/lib/ruby/1.9.1/webrick
文件:server.rb
方法:GenericServer#start_thread
代码:
addr = sock.peeraddr 改为 addr = sock.peeraddr(:numeric)

修改文件2

路径:/usr/local/rvm/rubies/ruby-1.9.3-p286/lib/ruby/1.9.1/webrick
文件:httprequest.rb
方法:HTTPRequest#parse
代码:
@peeraddr = socket.respond_to?(:peeraddr) ? socket.peeraddr : []
改为
@peeraddr = socket.respond_to?(:peeraddr) ? socket.peeraddr(:numeric ) : []

对策二

修改内容如下

修改文件:#{RUBY_HOME}/lib/ruby/1.9.1/webrick/config.rb 
:DoNotReverseLookup => nil
改为
:DoNotReverseLookup => true
知识共享许可协议
本作品采用知识共享署名-非商业性使用-禁止演绎 3.0 未本地化版本许可协议进行许可。
转载请注明出处 https://makeiteasy.github.io
分享到: 更多