访问Spark2x JobHistory中某个应用的原生页面时页面显示错误
问题
提交一个Spark应用,包含单个Job 百万个task。应用结束后,在JobHistory中访问该应用的原生页面,浏览器会等待较长时间才跳转到应用原生页面,若10分钟内无法跳转,则页面会显示Proxy Error信息。
回答
在JobHistory界面中跳转到某个应用的原生页面时,JobHistory需要回放该应用的Event log,若应用包含的事件日志较大,则回放时间较长,浏览器需要较长时间的等待。
当前浏览器访问JobHistory原生页面需经过httpd代理,代理的超时时间是10分钟,因此,如果JobHistory在10分钟内无法完成Event log的解析并返回,httpd会主动向浏览器返回Proxy Error信息。
解决方法
由于当前JobHistory开启了本地磁盘缓存功能,访问应用时,会将应用的Event log的解析结果缓存到本地磁盘中,第二次访问时,能大大加快响应速度。因此,出现此种情况时,仅需稍作等待,重新访问原来的链接即可,此时不会再出现需要长时间等待的现象。