背景

HSF 分布式框架 ,基于EasyExcel 实现excel导出 。
控制层, GET请求 , 传递 HttpServletRequest 和 HttpServletRespose 到,业务中台时,异常

原因

分布式应用下,控制层传递response到中台时,response提前关闭。

解决

导出实现思路改成 : POST 接收参数 ,导出到 ByteArrayOutputStream ,并上传文件服务器,返回uploadId

详细日志

com.taobao.hsf.exception.HSFException:
error message : error on submit request on future invoke:at com.taobao.hsf.remoting.service.RemotingRPCProtocolComponent.invokeForOne(RemotingRPCProtocolComponent.java:109)at com.taobao.hsf.remoting.service.RemotingRPCProtocolComponent.invoke(RemotingRPCProtocolComponent.java:84)at com.taobao.hsf.protocol.MultiplexingProtocol$ProtocolMultiplexingInvocationHandler.invoke(MultiplexingProtocol.java:126)at com.taobao.hsf.invocation.filter.RPCAfterFilterBuilder$TailNode.invoke(RPCAfterFilterBuilder.java:165)at com.taobao.hsf.rpc.generic.GenericInvocationAfterClientFilter.invoke(GenericInvocationAfterClientFilter.java:43)at com.taobao.hsf.invocation.filter.RPCAfterFilterNode.invoke(RPCAfterFilterNode.java:70)at com.taobao.hsf.invocation.filter.RPCAfterFilterBuilder$HeadNode.invoke(RPCAfterFilterBuilder.java:135)at com.taobao.hsf.registry.RegistryInvocationHandler.invoke(RegistryInvocationHandler.java:139)at com.taobao.hsf.invocation.DelegateInvocationHandler.invoke(DelegateInvocationHandler.java:12)at com.taobao.hsf.remoting.service.LocalInvocationHandler.invoke(LocalInvocationHandler.java:100)at com.taobao.hsf.invocation.filter.RPCFilterBuilder$TailNode.invoke(RPCFilterBuilder.java:165)at com.taobao.hsf2dubbo.context.DubboRPCContextClientFilter.invoke(DubboRPCContextClientFilter.java:43)at com.taobao.hsf.invocation.filter.RPCFilterNode.invoke(RPCFilterNode.java:71)at com.taobao.hsf.context.RPCContextClientFilter.invoke(RPCContextClientFilter.java:31)at com.taobao.hsf.invocation.filter.RPCFilterNode.invoke(RPCFilterNode.java:71)at com.taobao.hsf.rpc.generic.GenericInvocationClientFilter.invoke(GenericInvocationClientFilter.java:59)at com.taobao.hsf.invocation.filter.RPCFilterNode.invoke(RPCFilterNode.java:71)at com.taobao.hsf.remoting.service.InvocationValidationFilter.invoke(InvocationValidationFilter.java:48)at com.taobao.hsf.invocation.filter.RPCFilterNode.invoke(RPCFilterNode.java:71)at com.taobao.hsf.filter.QosClientFilter.invoke(QosClientFilter.java:64)at com.taobao.hsf.invocation.filter.RPCFilterNode.invoke(RPCFilterNode.java:71)at com.taobao.hsf.plugins.spas.SpasClientFilter.invoke(SpasClientFilter.java:82)at com.taobao.hsf.invocation.filter.RPCFilterNode.invoke(RPCFilterNode.java:71)at com.taobao.hsf.plugins.eagleeye.EagleEyeClientFilter.invoke(EagleEyeClientFilter.java:79)at com.taobao.hsf.invocation.filter.RPCFilterNode.invoke(RPCFilterNode.java:71)at com.taobao.hsf.dpath.DPathTagClientFilter.invoke(DPathTagClientFilter.java:38)at com.taobao.hsf.invocation.filter.RPCFilterNode.invoke(RPCFilterNode.java:71)at com.taobao.hsf.invocation.stats.InvocationStatsClientFilter.invoke(InvocationStatsClientFilter.java:45)at com.taobao.hsf.invocation.filter.RPCFilterNode.invoke(RPCFilterNode.java:71)at com.taobao.hsf.monitor.log.filter.MonitorLogClientFilter.invoke(MonitorLogClientFilter.java:51)at com.taobao.hsf.invocation.filter.RPCFilterNode.invoke(RPCFilterNode.java:71)at com.taobao.hsf.common.filter.CommonClientFilter.invoke(CommonClientFilter.java:37)at com.taobao.hsf.invocation.filter.RPCFilterNode.invoke(RPCFilterNode.java:71)at com.taobao.hsf.invocation.filter.RPCFilterBuilder$HeadNode.invoke(RPCFilterBuilder.java:134)at com.taobao.hsf.invocation.filter.FilterInvocationHandler.invoke(FilterInvocationHandler.java:28)at com.taobao.hsf.cluster.TestAddressInvocationHandler.invoke(TestAddressInvocationHandler.java:50)at com.taobao.hsf.remoting.service.AsyncInvocationHandler.invoke(AsyncInvocationHandler.java:44)at com.taobao.hsf.invocation.FutureInvocationHandler.invoke(FutureInvocationHandler.java:44)at com.taobao.hsf2dubbo.DubboAsyncInvocationHandler.invoke(DubboAsyncInvocationHandler.java:93)at com.taobao.hsf.invocation.AsyncToSyncInvocationHandler.invokeType(AsyncToSyncInvocationHandler.java:226)at com.taobao.hsf.invocation.AsyncToSyncInvocationHandler.invoke(AsyncToSyncInvocationHandler.java:52)at com.taobao.hsf.profiler.ProfilerSyncInvocationHandler.invoke(ProfilerSyncInvocationHandler.java:35)at com.taobao.hsf.rpc.client.ErrorLogSyncInvocationHandler.invoke(ErrorLogSyncInvocationHandler.java:47)at com.taobao.hsf2dubbo.DubboClientFilterSyncInvocationHandlerInterceptor.invoke(DubboClientFilterSyncInvocationHandlerInterceptor.java:56)at com.taobao.hsf.rpc.client.ClientConcurrencyLimiter.invoke(ClientConcurrencyLimiter.java:41)at com.taobao.hsf.InvocationUtil.invoke(InvocationUtil.java:51)at com.taobao.hsf.proxy.ProxyInvocationHandler.invoke(ProxyInvocationHandler.java:31)at com.taobao.hsf.proxy.JdkProxyFactory$JdkProxyInvocationHandler.invoke(JdkProxyFactory.java:99)at com.sun.proxy.$Proxy180.exportDetailExcel(Unknown Source)at cn.ccccltd.smp.smp.controller.ExportController.transSettlementWriteOffDetail(ExportController.java:57)at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)at java.lang.reflect.Method.invoke(Method.java:498)at org.springframework.web.method.support.InvocableHandlerMethod.doInvoke(InvocableHandlerMethod.java:189)at org.springframework.web.method.support.InvocableHandlerMethod.invokeForRequest(InvocableHandlerMethod.java:138)at org.springframework.web.servlet.mvc.method.annotation.ServletInvocableHandlerMethod.invokeAndHandle(ServletInvocableHandlerMethod.java:102)at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.invokeHandlerMethod(RequestMappingHandlerAdapter.java:892)at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.handleInternal(RequestMappingHandlerAdapter.java:797)at org.springframework.web.servlet.mvc.method.AbstractHandlerMethodAdapter.handle(AbstractHandlerMethodAdapter.java:87)at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:1038)at org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:942)at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:1005)at org.springframework.web.servlet.FrameworkServlet.doGet(FrameworkServlet.java:897)at javax.servlet.http.HttpServlet.service(HttpServlet.java:687)at org.springframework.web.servlet.FrameworkServlet.service(FrameworkServlet.java:882)at javax.servlet.http.HttpServlet.service(HttpServlet.java:790)at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:231)at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:53)at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193)at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)at cn.ccccltd.biz.plugin.security.interceptor.CasFilterSecurityInterceptor.invoke(CasFilterSecurityInterceptor.java:43)at cn.ccccltd.biz.plugin.security.interceptor.CasFilterSecurityInterceptor.doFilter(CasFilterSecurityInterceptor.java:33)at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193)at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)at cn.ccccltd.biz.plugin.security.filter.CSRFilter.doFilter(CSRFilter.java:54)at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193)at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)at org.springframework.boot.actuate.web.trace.servlet.HttpTraceFilter.doFilterInternal(HttpTraceFilter.java:90)at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107)at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193)at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:209)at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:178)at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:357)at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:270)at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193)at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)at org.springframework.web.filter.RequestContextFilter.doFilterInternal(RequestContextFilter.java:99)at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107)at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193)at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)at org.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:92)at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107)at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193)at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)at org.springframework.web.filter.HiddenHttpMethodFilter.doFilterInternal(HiddenHttpMethodFilter.java:93)at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107)at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193)at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)at org.springframework.session.web.http.SessionRepositoryFilter.doFilterInternal(SessionRepositoryFilter.java:167)at org.springframework.session.web.http.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:80)at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193)at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)at org.springframework.boot.actuate.metrics.web.servlet.WebMvcMetricsFilter.filterAndRecordMetrics(WebMvcMetricsFilter.java:117)at org.springframework.boot.actuate.metrics.web.servlet.WebMvcMetricsFilter.doFilterInternal(WebMvcMetricsFilter.java:106)at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107)at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193)at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)at org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:200)at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107)at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193)at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:200)at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:96)at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:490)at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:139)at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:92)at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:74)at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:343)at org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:408)at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:66)at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:834)at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1415)at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:49)at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61)at java.lang.Thread.run(Thread.java:748)
Caused by: com.taobao.hsf.io.serialize.HSFSerializeException: SerializeError
error message : HSF Serialize request arguments error.Please make sure your DO is serializable and your dependency is latest.at com.taobao.hsf.io.remoting.hsf.HSFPacketFactory.clientCreate(HSFPacketFactory.java:68)at com.taobao.hsf.io.stream.AbstractClientStream.write(AbstractClientStream.java:121)at com.taobao.hsf.remoting.service.RemotingRPCProtocolComponent.invokeForOne(RemotingRPCProtocolComponent.java:106)... 129 more
Caused by: java.lang.OutOfMemoryError: Java heap spaceat com.taobao.hsf.io.common.BytesUtil.copyOf(BytesUtil.java:38)at com.taobao.hsf.io.serialize.UnsafeByteArrayOutputStream.write(UnsafeByteArrayOutputStream.java:63)at com.taobao.hsf.com.caucho.hessian.io.Hessian2Output.flushBuffer(Hessian2Output.java:1553)at com.taobao.hsf.com.caucho.hessian.io.Hessian2Output.writeBytes(Hessian2Output.java:1136)at com.taobao.hsf.com.caucho.hessian.io.BasicSerializer.writeObject(BasicSerializer.java:175)at com.taobao.hsf.com.caucho.hessian.io.Hessian2Output.writeObject(Hessian2Output.java:421)at com.taobao.hsf.com.caucho.hessian.io.UnsafeSerializer$ObjectFieldSerializer.serialize(UnsafeSerializer.java:293)at com.taobao.hsf.com.caucho.hessian.io.UnsafeSerializer.writeInstance(UnsafeSerializer.java:212)at com.taobao.hsf.com.caucho.hessian.io.UnsafeSerializer.writeObject(UnsafeSerializer.java:166)at com.taobao.hsf.com.caucho.hessian.io.Hessian2Output.writeObject(Hessian2Output.java:421)at com.taobao.hsf.com.caucho.hessian.io.UnsafeSerializer$ObjectFieldSerializer.serialize(UnsafeSerializer.java:293)at com.taobao.hsf.com.caucho.hessian.io.UnsafeSerializer.writeInstance(UnsafeSerializer.java:212)at com.taobao.hsf.com.caucho.hessian.io.UnsafeSerializer.writeObject(UnsafeSerializer.java:166)at com.taobao.hsf.com.caucho.hessian.io.Hessian2Output.writeObject(Hessian2Output.java:421)at com.taobao.hsf.com.caucho.hessian.io.UnsafeSerializer$ObjectFieldSerializer.serialize(UnsafeSerializer.java:293)at com.taobao.hsf.com.caucho.hessian.io.UnsafeSerializer.writeInstance(UnsafeSerializer.java:212)at com.taobao.hsf.com.caucho.hessian.io.UnsafeSerializer.writeObject(UnsafeSerializer.java:166)at com.taobao.hsf.com.caucho.hessian.io.Hessian2Output.writeObject(Hessian2Output.java:421)at com.taobao.hsf.com.caucho.hessian.io.ArraySerializer.writeObject(ArraySerializer.java:69)at com.taobao.hsf.com.caucho.hessian.io.Hessian2Output.writeObject(Hessian2Output.java:421)at com.taobao.hsf.com.caucho.hessian.io.UnsafeSerializer$ObjectFieldSerializer.serialize(UnsafeSerializer.java:293)at com.taobao.hsf.com.caucho.hessian.io.UnsafeSerializer.writeInstance(UnsafeSerializer.java:212)at com.taobao.hsf.com.caucho.hessian.io.UnsafeSerializer.writeObject(UnsafeSerializer.java:166)at com.taobao.hsf.com.caucho.hessian.io.Hessian2Output.writeObject(Hessian2Output.java:421)at com.taobao.hsf.com.caucho.hessian.io.UnsafeSerializer$ObjectFieldSerializer.serialize(UnsafeSerializer.java:293)at com.taobao.hsf.com.caucho.hessian.io.UnsafeSerializer.writeInstance(UnsafeSerializer.java:212)at com.taobao.hsf.com.caucho.hessian.io.UnsafeSerializer.writeObject(UnsafeSerializer.java:171)at com.taobao.hsf.com.caucho.hessian.io.Hessian2Output.writeObject(Hessian2Output.java:421)at com.taobao.hsf.com.caucho.hessian.io.UnsafeSerializer$ObjectFieldSerializer.serialize(UnsafeSerializer.java:293)at com.taobao.hsf.com.caucho.hessian.io.UnsafeSerializer.writeInstance(UnsafeSerializer.java:212)at com.taobao.hsf.com.caucho.hessian.io.UnsafeSerializer.writeObject(UnsafeSerializer.java:171)at com.taobao.hsf.com.caucho.hessian.io.Hessian2Output.writeObject(Hessian2Output.java:421)

分布式应用,response导出error on submit request on future invoke、java.lang.OutOfMemoryError: Java heap space相关推荐

  1. MATLAB报错“Exception in thread FileDecorationCache request queue java.lang.OutOfMemoryError: Java “

    打开matlab时命令行里遇到错误: Exception in thread "FileDecorationCache request queue" java.lang.OutOf ...

  2. Error:maven-resources-test:java.lang.OutOfMemoryError: Java heap space

    Maven项目run单元测试时报错: maven-resources-test: ... java.lang.OutOfMemoryError: Java heap space 重启idea,设置vm ...

  3. Error:java: java.lang.OutOfMemoryError:insufficient memory,Java heap space, GC overh

    OutOfMemoryError相关报错信息 背景 第一个:java.lang.OutOfMemoryError:Java heap space 第二个错误: java.lang.OutOfMemor ...

  4. Error: java.lang.RuntimeException: java.lang.NoSuchMethodException: com.henu.WC $WCMapper.init()

    运行MapReduce   jar包时的错误. 解决方法:"

  5. JDK源码解析之 java.lang.Error

    java.lang.Error 错误.是所有错误的基类,用于标识严重的程序运行问题.这些问题通常描述一些不应被应用程序捕获的反常情况. 一.源码部分 //继承了java.lang.Throwable ...

  6. An internal error occurred during: Validating SYYH. Java heap space

    今天MyEclipse导入了一个比较大的项目,出现了an internal error occurred during building workspace错误. 网上搜了一下,据说是内存溢出问题.可 ...

  7. springboot配置log4j2报错:java.lang.IllegalStateException: Logback configuration error detected:

    引入log4j2后启动报错. Exception in thread "main" java.lang.IllegalStateException: java.lang.Illeg ...

  8. Cannot forward to error page for request ......

    今天现场报了以下问题: Cannot forward to error page for request [/order/search] as the response has already bee ...

  9. Cannot render error page for request [/list.html] and exception [An error happened during template p

    Cannot render error page for request [/list.html] and exception [An error happened during template p ...

最新文章

  1. python 使用win32com 操作excel
  2. Hyperledger Fabric 智能合约实战 (0) 整体步骤
  3. IPM analysis request DB table
  4. MVC阻止用户注入JavaScript代码或者Html标记
  5. 采用我国国产处理器的超级计算机是,“中国芯”超级电脑合肥诞生 首次采用国产CPU芯片...
  6. python pip 安装
  7. kail linux暴力破解wifi
  8. python判断谁做了好事
  9. c语言程序设计小球弹跳,C语言之1 实现弹跳小球
  10. 串的定义及其基本操作的实现
  11. 八千字,带你看示波器的发展史。
  12. python结合正则表达式及校验码生成算法校验:电话号码、营业执照、组织机构代码证、税务登记证、统一社会信用代码证、非盈利性企业登记证号码的函数
  13. 3D建模师的需求到底有多大?以前想都不敢想
  14. 天玑1300和骁龙778plus哪个好
  15. ios safari 描述文件 跳转到_iOS 超级签名之描述文件的实现过程
  16. 【vue大师晋级之路第一集:Vue基础】第8章——事件处理
  17. 树莓派安装操作系统-raspbian的方法
  18. blackberry环境搭建
  19. Thread: alter varchar2 column to clob // ORA-22858: invalid alteration of datatype
  20. Windowsnbsp;XP自动开关机的实现

热门文章

  1. restful api php,RestfulAPI · ThinkPHP6.0接口开发与应用及uniapp快速入门(更新完毕) · 看云...
  2. apache php mysql配置详解,详细介绍:Apache+PHP+MySQL配置攻略_php基础
  3. PHP 数组的内部实现
  4. redis主从搭建和分片集群搭建
  5. 找出二维数组中每行的最小数但最小数的列不能相同
  6. I begin to keep a daily
  7. Flink 1.12 资源管理新特性回顾
  8. 如何构建低延时直播体验,让互动更实时?
  9. Serverless 工作流给人工智能带来了哪些变化?
  10. Kubernetes operator 模式开发实践