踩坑之路之DNS域名解析

1.2017-12-21 所遇场景:在作百度识别的时候 百度文字识别 在测试环境没有问题的代码部署到线上就出了问题,当时遇到的问题是java

/**
		 * 以字节流的方式读取图片
		 * [@param](https://my.oschina.net/u/2303379) path 图片路径
		 * [@return](https://my.oschina.net/u/556800) 图片字节流
		 * [@throws](https://my.oschina.net/throws) IOException
		 * 时间  2017年12月12日 下午4:38:07
		 * [@author](https://my.oschina.net/arthor) sunjg
		 * [@throws](https://my.oschina.net/throws) URISyntaxException 
		 */
		
private static byte[] readImageFile(String path) throws IOException, URISyntaxException {
			String str = java.net.URLDecoder.decode(path, "UTF-8");
			URL uri = new URL(str);
			URLConnection connection =uri.openConnection();
			InputStream inputStream =connection.getInputStream();
			ByteArrayOutputStream outp = new ByteArrayOutputStream();
			int ch = 0;
			while ((ch = inputStream.read()) != -1)
				outp.write(ch);
			byte[] b = outp.toByteArray();
			return b;
		}

线上读取字节流文件的时候耗时太长,这个问题让咱们很是苦恼,由于如今是上线时间,时间紧迫否则会形成延期。 所作的措施一:让运维在线上(online)环境上从新部署一下服务,咱们猜测多是由于代码没有提交完整,结果错误依旧,让然没有解决这个问题 所作的措施二:将代码中的异常处理都去除,将详细的堆栈信息都打印出来,根据日志信息进行处理问题,结果浏览器页面仍是会出现504,请求超时问题 所作的措施三curl -I http://res.shoumeiapp.com/1510816149445about_icon_more.png线上某个图片地址 所得到信息以下图:linux

输入图片说明 所作的措施四:在网上查了相关资料,而且问过技术总监,最终肯定该问题属于DNS域名解析错误, 查了一下测试环境的DNS域名解析,结果为: DNS服务器地址配置 在Linux下面,有一个默认的DNS服务器地址配置文件的设置,存放在 /etc/resolv.conf 输入图片说明浏览器

继续查找线上的该配置文件,结果以下: linux图片服务器

将114.114.114.114配置到线上环境,结果一切正常了,该问题通过一波三折才解决了。app

相关文章
相关标签/搜索