You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@servicecomb.apache.org by "wujimin (JIRA)" <ji...@apache.org> on 2019/02/15 00:55:00 UTC

[jira] [Updated] (SCB-1137) optimize http2 performance

     [ https://issues.apache.org/jira/browse/SCB-1137?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

wujimin updated SCB-1137:
-------------------------
    Description: 
http2 is slower than http1.1

1."get connection" is slower than http1.1,very slow

2.request queued in producer thread pool, maybe there is condition race problem.

 
"pool-5-thread-2" #105 prio=5 os_prio=0 tid=0x00007f9be000a000 nid=0x3512 waiting for monitor entry [0x00007f9ba01d5000]
java.lang.Thread.State: BLOCKED (on object monitor)
at io.vertx.core.http.impl.Http2ServerResponseImpl.headers(Http2ServerResponseImpl.java:208)
- waiting to lock <0x0000000082024988> (a io.vertx.core.http.impl.Http2ServerConnection)
at org.apache.servicecomb.foundation.vertx.http.VertxServerResponseToHttpServletResponse.setContentType(VertxServerResponseToHttpServletResponse.java:51)
at org.apache.servicecomb.common.rest.filter.inner.ServerRestArgsFilter.beforeSendResponseAsync(ServerRestArgsFilter.java:79)
at org.apache.servicecomb.common.rest.filter.HttpServerFilterBeforeSendResponseExecutor.safeInvoke(HttpServerFilterBeforeSendResponseExecutor.java:52)
at org.apache.servicecomb.common.rest.filter.HttpServerFilterBeforeSendResponseExecutor.doRun(HttpServerFilterBeforeSendResponseExecutor.java:74)
at org.apache.servicecomb.common.rest.filter.HttpServerFilterBeforeSendResponseExecutor.run(HttpServerFilterBeforeSendResponseExecutor.java:44)
at org.apache.servicecomb.common.rest.AbstractRestInvocation.executeHttpServerFilters(AbstractRestInvocation.java:284)
at org.apache.servicecomb.common.rest.AbstractRestInvocation.sendResponse(AbstractRestInvocation.java:278)
at org.apache.servicecomb.common.rest.AbstractRestInvocation.sendResponseQuietly(AbstractRestInvocation.java:255)
at org.apache.servicecomb.common.rest.AbstractRestInvocation.lambda$doInvoke$2(AbstractRestInvocation.java:238)
at org.apache.servicecomb.common.rest.AbstractRestInvocation$$Lambda$416/2134056601.handle(Unknown Source)

  was:
http2 is slower than http1.1

1."get connection" is slower than http1.1,very slow

2.request queued in producer thread pool, maybe there is condition race problem.


> optimize http2 performance
> --------------------------
>
>                 Key: SCB-1137
>                 URL: https://issues.apache.org/jira/browse/SCB-1137
>             Project: Apache ServiceComb
>          Issue Type: Sub-task
>          Components: Java-Chassis
>            Reporter: wujimin
>            Assignee: wujimin
>            Priority: Major
>
> http2 is slower than http1.1
> 1."get connection" is slower than http1.1,very slow
> 2.request queued in producer thread pool, maybe there is condition race problem.
>  
> "pool-5-thread-2" #105 prio=5 os_prio=0 tid=0x00007f9be000a000 nid=0x3512 waiting for monitor entry [0x00007f9ba01d5000]
> java.lang.Thread.State: BLOCKED (on object monitor)
> at io.vertx.core.http.impl.Http2ServerResponseImpl.headers(Http2ServerResponseImpl.java:208)
> - waiting to lock <0x0000000082024988> (a io.vertx.core.http.impl.Http2ServerConnection)
> at org.apache.servicecomb.foundation.vertx.http.VertxServerResponseToHttpServletResponse.setContentType(VertxServerResponseToHttpServletResponse.java:51)
> at org.apache.servicecomb.common.rest.filter.inner.ServerRestArgsFilter.beforeSendResponseAsync(ServerRestArgsFilter.java:79)
> at org.apache.servicecomb.common.rest.filter.HttpServerFilterBeforeSendResponseExecutor.safeInvoke(HttpServerFilterBeforeSendResponseExecutor.java:52)
> at org.apache.servicecomb.common.rest.filter.HttpServerFilterBeforeSendResponseExecutor.doRun(HttpServerFilterBeforeSendResponseExecutor.java:74)
> at org.apache.servicecomb.common.rest.filter.HttpServerFilterBeforeSendResponseExecutor.run(HttpServerFilterBeforeSendResponseExecutor.java:44)
> at org.apache.servicecomb.common.rest.AbstractRestInvocation.executeHttpServerFilters(AbstractRestInvocation.java:284)
> at org.apache.servicecomb.common.rest.AbstractRestInvocation.sendResponse(AbstractRestInvocation.java:278)
> at org.apache.servicecomb.common.rest.AbstractRestInvocation.sendResponseQuietly(AbstractRestInvocation.java:255)
> at org.apache.servicecomb.common.rest.AbstractRestInvocation.lambda$doInvoke$2(AbstractRestInvocation.java:238)
> at org.apache.servicecomb.common.rest.AbstractRestInvocation$$Lambda$416/2134056601.handle(Unknown Source)



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)