- connector
- XXXconnection
- XXXchannel or upstram-pipeline for accept/receive
- XXXtransport or downstream-pipeline for send
- handler
- io buffer
- codedec
- server
- client
server.bind(8080);//using connector
server.setChannelSinkProviderOrPipelineFactory();//using websocket/tcp/http
server.setMessagHandler();
server.run();
endpoint1 <--> endpoint2
endpoint1 <-- endpointProxy1
endpointProxy2 --> endpoint2
- ServerChannel
- WebSocketServerChannel
- ClientChannel
- WebSocketClientChannel
clientChannel.send(byte[],offset,length);//send directly
- server-conn <——
- client-conn ——>
connPool.getConn(id);
connPool.getConn(identity);
connPool.getConn(uri);
connId<->identity
IdentityMapping.set(new CustomMappingHandlerWithAppKey());
for upper layer api usage.
e1.id->e2 e2.id->e1
e1 got e2proxy.id e2 got e1proxy.id
duplex conn built.
identity -> uri
UriMapping.set(new CustomMappingHandlerWithZk());
necessary
- max idle 60s+
- do not ping
- Agent
- Embedded
- same domain/classloader/..
- isolated
rpc protocol
message protocol
auth/verify
...