关于drill http存储插件http 超时的一些说明
默认http 存储插件的配置,参考
{
"type": "http",
"cacheResults": false,
"connections": {
"sunrise": {
"url": "https://api.sunrise-sunset.org/json",
"method": "GET",
"headers": null,
"authType": "none",
"userName": null,
"password": null,
"postBody": null,
"params": [
"lat",
"lng",
"date"
],
"dataPath": "results",
"requireTail": false,
"inputType": "json"
}
},
"timeout": 0,
"proxyHost": null,
"proxyPort": 0,
"proxyType": "direct",
"proxyUsername": null,
"proxyPassword": null,
"enabled": true
}
按照官方的说法是
timeout: Sets the response timeout in seconds. Defaults to 0 which is no timeout.
说法是没有超时,但是实际上我们的http 调用是很容易超时的,解决方法,指定timeout 值,比如:
{
"type": "http",
"cacheResults": false,
"connections": {
"deps": {
"url": "http://restapi/",
"method": "GET",
"headers": {
"Accept": "application/json"
},
"authType": "none",
"userName": null,
"password": null,
"postBody": null,
"params": null,
"requireTail": false,
"inputType": "json"
}
},
"timeout": 60,
"proxyHost": null,
"proxyPort": 0,
"proxyType": "direct",
"proxyUsername": null,
"proxyPassword": null,
"enabled": true
}
参考资料
https://github.com/apache/drill/tree/master/contrib/storage-http