Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

I am confused with config server, transporter config. #1841

Closed
imsunv opened this issue May 24, 2018 · 7 comments
Closed

I am confused with config server, transporter config. #1841

imsunv opened this issue May 24, 2018 · 7 comments

Comments

@imsunv
Copy link
Contributor

imsunv commented May 24, 2018

In my understanding.
if we config transporter="netty4" in provider side. It will affect the consumer。
so we can use server="netty4" in provider side.

but why dubbo check sever key in DubboProtocol.initClient ?
the consumer with low version (not support netty4) will start failed.

And the transporter key will not affect the consumer now.

@carryxyh
Copy link
Member

carryxyh commented Jul 2, 2018

transport config will not override.
the config that can override is like timeout, retries, loadbalance, actives and so on.

@ralf0131 ralf0131 closed this as completed Jul 5, 2018
@zonghaishang
Copy link
Member

zonghaishang commented Jul 5, 2018

@whanice

  1. if we config transporter="netty4" in provider side. It will affect the consumer。
    Transporter is the protocolconfig attribute, the client does not have a protocolconfig concept, therefore the tranporter on the provider side will not be passed to the client.
  2. but why dubbo check sever key in DubboProtocol.initClient ?
    Because the value stored by the server will be passed to the client,therefore, the client will try to take the value of the server first.
  3. the consumer with low version (not support netty4) will start failed.
    I have tried neety4 as a provider, netty3 as a client, and can use it normally, can you provide demo for demonstration?

Thank you very much for your support of dubbo.

@imsunv
Copy link
Contributor Author

imsunv commented Jul 6, 2018

Thanks for your guys reply.
Surely. the tcp connection should not be related to the nio framework, No matter what you use, netty3, netty4 or mina in server. Will not affect the client use.

I care about migration. when consumer use dubbo-2.5.x . not have netty4 extension.
when provider wants to upgrade dubbo verison to dubbo-2.6.x and use netty4. It will affect the consumer.

So I think in DubboProtol.initClient. change to this will be better.

 // client type setting.
    String str = url.getParameter(Constants.CLIENT_KEY, url.getParameter(Constants.TRANSPORTER_KEY, Constants.DEFAULT_REMOTING_CLIENT));

@imsunv
Copy link
Contributor Author

imsunv commented Jul 6, 2018

And in the future. I think the sever key shoud not pass to consumer.

@zonghaishang
Copy link
Member

You are right, I will confirm this question again.

@zonghaishang zonghaishang reopened this Jul 9, 2018
@zonghaishang
Copy link
Member

Through communication, we keep netty as the extension point name, there will be no problem

@chickenlj
Copy link
Contributor

And in the future. I think the sever key shoud not pass to consumer.

Agree, and this can be solved with #2030

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

5 participants