![](/img/trans.png)
[英]Netty 4 thows “unexpected message type: io.netty.handler.codec.http.DefaultHttpContent” after chunked file load
[英]io.netty.handler.codec.http2.Http2Exception: Unexpected HTTP/1.x request: GET /
我想測試 Zeebe(camunda 版本),然后我按照以下文檔中描述的步驟操作。 簡而言之,我基於命令docker run --name zeebe -p 26500:26500 camunda/zeebe:latest
Zeebe 作為 docker 容器docker run --name zeebe -p 26500:26500 camunda/zeebe:latest
。
查看初始日志,一切似乎都運行良好。 但是,當我嘗試使用 Chrome 訪問代理時,我可以在日志中看到以下錯誤:
Mar 10, 2020 1:53:18 PM io.grpc.netty.NettyServerTransport notifyTerminated
INFO: Transport failed
io.netty.handler.codec.http2.Http2Exception: Unexpected HTTP/1.x request: GET /
at io.netty.handler.codec.http2.Http2Exception.connectionError(Http2Exception.java:103)
at io.netty.handler.codec.http2.Http2ConnectionHandler$PrefaceDecoder.readClientPrefaceString(Http2ConnectionHandler.java:302)
at io.netty.handler.codec.http2.Http2ConnectionHandler$PrefaceDecoder.decode(Http2ConnectionHandler.java:239)
at io.netty.handler.codec.http2.Http2ConnectionHandler.decode(Http2ConnectionHandler.java:438)
at io.netty.handler.codec.ByteToMessageDecoder.decodeRemovalReentryProtection(ByteToMessageDecoder.java:505)
at io.netty.handler.codec.ByteToMessageDecoder.callDecode(ByteToMessageDecoder.java:444)
at io.netty.handler.codec.ByteToMessageDecoder.channelRead(ByteToMessageDecoder.java:283)
at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:374)
at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:360)
at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:352)
at io.netty.channel.DefaultChannelPipeline$HeadContext.channelRead(DefaultChannelPipeline.java:1421)
at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:374)
at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:360)
at io.netty.channel.DefaultChannelPipeline.fireChannelRead(DefaultChannelPipeline.java:930)
at io.netty.channel.epoll.AbstractEpollStreamChannel$EpollStreamUnsafe.epollInReady(AbstractEpollStreamChannel.java:794)
at io.netty.channel.epoll.EpollEventLoop.processReady(EpollEventLoop.java:424)
at io.netty.channel.epoll.EpollEventLoop.run(EpollEventLoop.java:326)
at io.netty.util.concurrent.SingleThreadEventExecutor$5.run(SingleThreadEventExecutor.java:918)
at io.netty.util.internal.ThreadExecutorMap$2.run(ThreadExecutorMap.java:74)
at io.netty.util.concurrent.FastThreadLocalRunnable.run(FastThreadLocalRunnable.java:30)
at java.base/java.lang.Thread.run(Unknown Source)
我使用 zbctl (zbctl status --insecure) 檢查了 Zeebe 狀態,它看起來很健康:
Cluster size: 1
Partitions count: 1
Replication factor: 1
Gateway version: 0.23.0-alpha2
Brokers:
Broker 0 - 172.17.0.2:26501
Version: 0.23.0-alpha2
Partition 1 : Leader
有沒有人見過這個問題?
使用瀏覽器無法訪問代理中的任何內容。 代理唯一擁有的是gRPC 命令 API 。 您需要使用zbctl
或其中一種語言客戶端與之通信。
如果您正在尋找要與之交互的 Web GUI,那么您希望將zeebe-docker-compose與“operate”或“simple-monitor”配置文件一起使用。 這些是 Web 前端,允許您檢查代理並(在某種程度上)與代理進行交互。
顯然,瀏覽器正在發送普通的舊 http/1.x 請求。 嘗試使用更靈活的方法,例如 curl:
curl -I -k --http2 https://yourhost
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.