Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/310.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何在java服务器中使用分层thrift传输_Java_Thrift - Fatal编程技术网

如何在java服务器中使用分层thrift传输

如何在java服务器中使用分层thrift传输,java,thrift,Java,Thrift,我想使用下面的旧货船互相重叠 分层传输:zlib传输 分层传输:框架传输 端点传输:套接字 我只能在服务器中设置1个传输工厂,但实际上,我必须设置zlib工厂和框架工厂。例如: new TServer.Args(new TServerSocket(port)).transportFactory(new TFramedTransport.Factory()); 如何在Java中设置服务器端的两个传输?您可以创建一个自定义工厂来创建嵌套传输: public class MyNestedFa

我想使用下面的旧货船互相重叠

  • 分层传输:zlib传输
  • 分层传输:框架传输
  • 端点传输:套接字
我只能在服务器中设置1个传输工厂,但实际上,我必须设置zlib工厂和框架工厂。例如:

new TServer.Args(new TServerSocket(port)).transportFactory(new TFramedTransport.Factory());

如何在Java中设置服务器端的两个传输?

您可以创建一个自定义工厂来创建嵌套传输:

  public class MyNestedFactory extends TTransportFactory {
    @Override
    public TTransport getTransport(TTransport base) {
      return new TZlibTransport(new TFramedTransport(base));
    }
  }
然后可以将此工厂传递给服务器参数:

new TServer.Args(new TServerSocket(port))
              .transportFactory(new MyNestedFactory())