Package org.apache.dubbo.rpc
package org.apache.dubbo.rpc
-
ClassDescriptionadaptive Metrics statistics.
AsyncRpcResultis introduced in 3.0.0 to replace RpcResult, and RpcResult is replaced withAppResponse: AsyncRpcResult is the object that is actually passed in the call chain AppResponse only simply represents the business resultAsyncContext works like in the Servlet 3.0.This class represents an unfinished RPC call, it will hold some context information for this call, for example RpcContext and Invocation, so that when the call finishes and the result returns, it can guarantee all the contexts being recovered as the same as when the call was made before any callback is invoked.This class provides map adapters to support attachments in RpcContext, Invocation and Result switch from invalid input: '<'String, String> to invalid input: '<'String, Object>This callback listener applies to both synchronous and asynchronous calls, please put logics that need to be executed on return of rpc result in onResponse or onError respectively based on it is normal return or exception return.A listener notified on context cancellation.Exporter<T>Exporter.ExporterListener.Extension for intercepting the invocation for both service provider and consumer, furthermore, most of functions in dubbo are implemented base on the same mechanism.Used for async call scenario.Invocation.Invoker<T>Invoker.InvokerListener.Deprecated.PathResolver maintains a mapping between request paths and invokers for multiple protocols.RPC Protocol extension interface, which encapsulates the details of remote invocation.Distinct fromRemotingServer, each protocol holds one or more ProtocolServers(the number usually decides by port numbers), while each ProtocolServer holds zero or one RemotingServer.ProxyFactory.(API, Prototype, NonThreadSafe) An RPCResult.Deprecated.Replace to org.apache.dubbo.common.ConstantsThread local context.Used to temporarily store and restore all kinds of contexts of current thread.RPC Exception.RPC Invocation.URL statistics.Extend and provide your own implementation if you want to distribute traffic around registries.