这几日做一个东西,需要把Jetty整合到android应用里,也就是把android手机当成一个web服务器。
一切进行还算顺利,就是首次打开网页时速度相当慢,差不多要2分钟-_-! ,难道是手机的硬件实在是不能和PC相比,所以速度如此之慢? 心想总有可以改进的地方吧,于是下载了Jetty的源码跟踪调试,发现在ChannelEndPoint类的构造方法里面有两句:
_local=(InetSocketAddress)_socket.getLocalSocketAddress();
_remote=(InetSocketAddress)_socket.getRemoteSocketAddress();
这两句执行完要20多秒,于是想在这里动下脑筋,直接把上一句注释掉(因为用不着),下面一句改成:
_remote = _socket.getInetAddress();
其余相关部分改一下,因为我只想要个远程的地址,所以这样下来也没什么影响。
结果却有天壤之别,改完了以后首次打开网页只要2、3秒。哦耶~~