|
| RPCEngine (util::config::ClioConfigDefinition const &config, std::shared_ptr< BackendInterface > const &backend, std::shared_ptr< LoadBalancerType > const &balancer, web::dosguard::DOSGuardInterface const &dosGuard, WorkQueue &workQueue, CountersType &counters, std::shared_ptr< HandlerProvider const > const &handlerProvider) |
| Construct a new RPCEngine object.
|
|
Result | buildResponse (web::Context const &ctx) |
| Main request processor routine.
|
|
template<typename FnType > |
bool | post (FnType &&func, std::string const &ip) |
| Used to schedule request processing onto the work queue.
|
|
void | notifyComplete (std::string const &method, std::chrono::microseconds const &duration) |
| Notify the system that specified method was executed.
|
|
void | notifyFailed (std::string const &method) |
| Notify the system that specified method failed to execute due to a recoverable user error.
|
|
void | notifyErrored (std::string const &method) |
| Notify the system that specified method failed due to some unrecoverable error.
|
|
void | notifyTooBusy () |
| Notify the system that the RPC system is too busy to handle an incoming request.
|
|
void | notifyNotReady () |
| Notify the system that the RPC system was not ready to handle an incoming request.
|
|
void | notifyBadSyntax () |
| Notify the system that the incoming request did not specify the RPC method/command.
|
|
void | notifyUnknownCommand () |
| Notify the system that the incoming request specified an unknown/unsupported method/command.
|
|
void | notifyInternalError () |
| Notify the system that the incoming request lead to an internal error (unrecoverable).
|
|
template<typename LoadBalancerType, typename CountersType>
class rpc::RPCEngine< LoadBalancerType, CountersType >
The RPC engine that ties all RPC-related functionality together.
template<typename LoadBalancerType , typename CountersType >
void rpc::RPCEngine< LoadBalancerType, CountersType >::notifyErrored |
( |
std::string const & | method | ) |
|
|
inline |
Notify the system that specified method failed due to some unrecoverable error.
Used for erors such as database timeout, internal errors, etc.
- Parameters
-