diff --git a/LICENSE b/LICENSE index 358e868..cfc8f83 100644 --- a/LICENSE +++ b/LICENSE @@ -18,6 +18,13 @@ licenses applicable to the third-party components included within PhxRPC. A copy of the BSD 3-Clause License is included in this file. +Other dependencies and licenses: + +Open Source Software Licensed under the BSD 3-Clause License: +-------------------------------------------------------------------- +1. protobuf 3.0.0-beta-1 +Copyright 2014, Google Inc. +All rights reserved. Terms of the BSD 3-Clause License: -------------------------------------------------------------------- diff --git a/codegen/client_code_render.cpp b/codegen/client_code_render.cpp index c17ee4d..921784c 100644 --- a/codegen/client_code_render.cpp +++ b/codegen/client_code_render.cpp @@ -152,7 +152,7 @@ void ClientCodeRender::GenerateStubCpp(SyntaxTree * stree, FILE * write) { { fprintf(write, "%s :: %s( phxrpc::BaseTcpStream & socket, phxrpc::ClientMonitor & client_monitor )\n", - clasname, clasname); + clasname, clasname); fprintf(write, " : socket_( socket ), client_monitor_(client_monitor), keep_alive_(false)\n"); fprintf(write, "{\n"); @@ -188,7 +188,7 @@ void ClientCodeRender::GenerateStubFunc(SyntaxTree * stree, SyntaxFunc * func, F fprintf(write, "{\n"); fprintf(write, " phxrpc::HttpCaller caller( socket_, client_monitor_ );\n"); fprintf(write, " caller.SetURI( \"/%s/%s\", %d );\n", stree->GetPackageName(), func->GetName(), - func->GetCmdID()); + func->GetCmdID()); fprintf(write, " caller.SetKeepAlive( keep_alive_ );\n"); fprintf(write, " return caller.Call( req, resp );\n"); diff --git a/codegen/client_template.cpp b/codegen/client_template.cpp index 2d5e1ab..c7f575a 100644 --- a/codegen/client_template.cpp +++ b/codegen/client_template.cpp @@ -30,7 +30,7 @@ class $ClientClass$ public: static bool Init( const char * config_file ); - static const char * GetPackageName(); + static const char * GetPackageName(); public: $ClientClass$(); @@ -65,25 +65,25 @@ bool $ClientClass$ :: Init( const char * config_file ) } const char * $ClientClass$ :: GetPackageName() { - const char * ret = global_$ClientClassLower$_config_.GetPackageName(); - if (strlen(ret) == 0) { - ret = "$PackageName$"; - } - return ret; + const char * ret = global_$ClientClassLower$_config_.GetPackageName(); + if (strlen(ret) == 0) { + ret = "$PackageName$"; + } + return ret; } $ClientClass$ :: $ClientClass$() { - static std::mutex monitor_mutex; - if ( !global_$ClientClassLower$_monitor_.get() ) { - monitor_mutex.lock(); - if ( !global_$ClientClassLower$_monitor_.get() ) { - global_$ClientClassLower$_monitor_ = phxrpc::MonitorFactory::GetFactory() - ->CreateClientMonitor( GetPackageName() ); - } - global_$ClientClassLower$_config_.SetClientMonitor( global_$ClientClassLower$_monitor_ ); - monitor_mutex.unlock(); - } + static std::mutex monitor_mutex; + if ( !global_$ClientClassLower$_monitor_.get() ) { + monitor_mutex.lock(); + if ( !global_$ClientClassLower$_monitor_.get() ) { + global_$ClientClassLower$_monitor_ = phxrpc::MonitorFactory::GetFactory() + ->CreateClientMonitor( GetPackageName() ); + } + global_$ClientClassLower$_config_.SetClientMonitor( global_$ClientClassLower$_monitor_ ); + monitor_mutex.unlock(); + } } $ClientClass$ :: ~$ClientClass$() @@ -102,16 +102,16 @@ const char * PHXRPC_CLIENT_FUNC_TEMPLATE = if(ep != nullptr) { phxrpc::BlockTcpStream socket; - bool open_ret = phxrpc::PhxrpcTcpUtils::Open(&socket, ep->ip, ep->port, + bool open_ret = phxrpc::PhxrpcTcpUtils::Open(&socket, ep->ip, ep->port, global_$ClientClassLower$_config_.GetConnectTimeoutMS(), NULL, 0, - *(global_$ClientClassLower$_monitor_.get())); - if ( open_ret ) { + *(global_$ClientClassLower$_monitor_.get())); + if ( open_ret ) { socket.SetTimeout(global_$ClientClassLower$_config_.GetSocketTimeoutMS()); $StubClass$ stub(socket, *(global_$ClientClassLower$_monitor_.get())); return stub.$Func$(req, resp); } - } + } return -1; } diff --git a/codegen/server_code_render.cpp b/codegen/server_code_render.cpp index 7dcced0..af8523d 100644 --- a/codegen/server_code_render.cpp +++ b/codegen/server_code_render.cpp @@ -78,32 +78,32 @@ void ServerCodeRender::GenerateServerConfigCpp(SyntaxTree * stree, FILE * write) fprintf(write, "\n"); char classname[128] = { 0 }; - char message_file[128] = {0}; + char message_file[128] = {0}; name_render_.GetServerConfigClasname(stree->GetName(), classname, sizeof(classname)); name_render_.GetMessageFileName(stree->GetProtoFile(), message_file, sizeof(message_file)); std::string content = PHXRPC_EPOLL_SERVER_CONFIG_CPP_TEMPLATE; - std::string package_name = "\"" + std::string(stree->GetPackageName()) + "\""; - - { - std::string message_name = ""; - for( auto itr : *(stree->GetFuncList()) ) { - if ( std::string(itr.GetReq()->GetType()).find( stree->GetPackageName() ) != std::string::npos ) { - message_name = itr.GetReq()->GetType(); - break; - } else if ( std::string(itr.GetResp()->GetType()).find( stree->GetPackageName() ) != std::string::npos ) { - message_name = itr.GetResp()->GetType(); - break; - } - } - if( message_name != "" ) { - int package_name_len = strlen(stree->GetPackageName()); - message_name = message_name.substr( package_name_len + 1, message_name.size() - package_name_len - 1 ); - package_name = "\n" + std::string(stree->GetPackageName()) + "::" + message_name - + "::default_instance().GetDescriptor()->file()->package().c_str()"; - } - } + std::string package_name = "\"" + std::string(stree->GetPackageName()) + "\""; + + { + std::string message_name = ""; + for( auto itr : *(stree->GetFuncList()) ) { + if ( std::string(itr.GetReq()->GetType()).find( stree->GetPackageName() ) != std::string::npos ) { + message_name = itr.GetReq()->GetType(); + break; + } else if ( std::string(itr.GetResp()->GetType()).find( stree->GetPackageName() ) != std::string::npos ) { + message_name = itr.GetResp()->GetType(); + break; + } + } + if( message_name != "" ) { + int package_name_len = strlen(stree->GetPackageName()); + message_name = message_name.substr( package_name_len + 1, message_name.size() - package_name_len - 1 ); + package_name = "\n" + std::string(stree->GetPackageName()) + "::" + message_name + + "::default_instance().GetDescriptor()->file()->package().c_str()"; + } + } StrTrim(&content); StrReplaceAll(&content, "$MessageFile$", message_file); diff --git a/codegen/server_template.cpp b/codegen/server_template.cpp index d12efe5..0f694d1 100644 --- a/codegen/server_template.cpp +++ b/codegen/server_template.cpp @@ -38,10 +38,10 @@ using namespace std; void HttpDispatch( const phxrpc::HttpRequest & request, phxrpc::HttpResponse * response, phxrpc::DispatcherArgs_t * args ) { - ServiceArgs_t * service_args = (ServiceArgs_t *)(args->service_args); + ServiceArgs_t * service_args = (ServiceArgs_t *)(args->service_args); - $ServiceImplClass$ service( service_args ); - $DispatcherClass$ dispatcher( service, args ); + $ServiceImplClass$ service( service_args ); + $DispatcherClass$ dispatcher( service, args ); phxrpc::HttpDispatcher<$DispatcherClass$> http_dispatcher( dispatcher, $DispatcherClass$::GetURIFuncMap() ); @@ -52,11 +52,11 @@ void HttpDispatch( const phxrpc::HttpRequest & request, phxrpc::HttpResponse * r } void showUsage( const char * program ) { - printf( "\n" ); - printf( "Usage: %s [-c ] [-v]\n", program ); - printf( "\n" ); + printf( "\n" ); + printf( "Usage: %s [-c ] [-v]\n", program ); + printf( "\n" ); - exit( 0 ); + exit( 0 ); } void LogImpl(int priority, const char * format, va_list args) { @@ -64,34 +64,34 @@ void LogImpl(int priority, const char * format, va_list args) { } int main( int argc, char * argv[] ) { - const char * config_file = NULL; - extern char *optarg ; - int c ; - while( ( c = getopt( argc, argv, "c:v" ) ) != EOF ) { - switch ( c ) { - case 'c' : config_file = optarg; break; - - case 'v' : - default: showUsage( argv[ 0 ] ); break; - } - } + const char * config_file = NULL; + extern char *optarg ; + int c ; + while( ( c = getopt( argc, argv, "c:v" ) ) != EOF ) { + switch ( c ) { + case 'c' : config_file = optarg; break; + + case 'v' : + default: showUsage( argv[ 0 ] ); break; + } + } assert(signal(SIGPIPE, SIG_IGN) != SIG_ERR); //set your logfunc //phxrpc::setvlog(LogImpl); - //phxrpc::MonitorFactory::SetFactory( new YourSelfsMonitorFactory() ); + //phxrpc::MonitorFactory::SetFactory( new YourSelfsMonitorFactory() ); - if( NULL == config_file ) showUsage( argv[0] ); - $ServerConfigClass$ config; - if( ! config.Read( config_file ) ) showUsage( argv[0] ); + if( NULL == config_file ) showUsage( argv[0] ); + $ServerConfigClass$ config; + if( ! config.Read( config_file ) ) showUsage( argv[0] ); - ServiceArgs_t service_args; - service_args.config = &config; + ServiceArgs_t service_args; + service_args.config = &config; - phxrpc::HshaServer server( config.GetHshaServerConfig(), HttpDispatch, &service_args ); - server.RunForever(); - return 0; + phxrpc::HshaServer server( config.GetHshaServerConfig(), HttpDispatch, &service_args ); + server.RunForever(); + return 0; } )"; @@ -106,16 +106,16 @@ const char * PHXRPC_EPOLL_SERVER_CONFIG_HPP_TEMPLATE = class $ServerConfigClass$ { public: - $ServerConfigClass$(); + $ServerConfigClass$(); - ~$ServerConfigClass$(); + ~$ServerConfigClass$(); - bool Read( const char * config_file ); + bool Read( const char * config_file ); - const phxrpc::HshaServerConfig & GetHshaServerConfig(); + const phxrpc::HshaServerConfig & GetHshaServerConfig(); private: - phxrpc::HshaServerConfig ep_server_config_; + phxrpc::HshaServerConfig ep_server_config_; }; )"; @@ -138,18 +138,18 @@ const char * PHXRPC_EPOLL_SERVER_CONFIG_CPP_TEMPLATE = bool $ServerConfigClass$ :: Read( const char * config_file ) { - bool ret = ep_server_config_.Read( config_file ); + bool ret = ep_server_config_.Read( config_file ); - if ( strlen( ep_server_config_.GetPackageName() ) == 0 ) { - ep_server_config_.SetPackageName( $PackageName$ ); - } + if ( strlen( ep_server_config_.GetPackageName() ) == 0 ) { + ep_server_config_.SetPackageName( $PackageName$ ); + } - return ret; + return ret; } const phxrpc::HshaServerConfig & $ServerConfigClass$ :: GetHshaServerConfig() { - return ep_server_config_; + return ep_server_config_; } )"; diff --git a/codegen/service_code_render.cpp b/codegen/service_code_render.cpp index 2e35162..6af64c2 100644 --- a/codegen/service_code_render.cpp +++ b/codegen/service_code_render.cpp @@ -163,10 +163,10 @@ void ServiceCodeRender::GenerateServiceImplHpp(SyntaxTree * stree, FILE * write) fprintf(write, "class %s;\n", config_name); fprintf(write, "\n"); - fprintf(write, "typedef struct tagServiceArgs {\n"); - fprintf(write, " %s * config;\n", config_name); - fprintf(write, " //You can add other arguments here and initiate in main().\n"); - fprintf(write, "}ServiceArgs_t;\n"); + fprintf(write, "typedef struct tagServiceArgs {\n"); + fprintf(write, " %s * config;\n", config_name); + fprintf(write, " //You can add other arguments here and initiate in main().\n"); + fprintf(write, "}ServiceArgs_t;\n"); fprintf(write, "\n"); fprintf(write, "class %s : public %s\n", clasname, base_name); @@ -428,7 +428,7 @@ void ServiceCodeRender::GenerateDispatcherFunc(SyntaxTree * stree, SyntaxFunc * clasname, func->GetName()); fprintf(write, "{\n"); - fprintf(write, " dispatcher_args_->server_monitor->SvrCall(%d, \"%s\", 1);\n", func->GetCmdID(), func->GetName() ); + fprintf(write, " dispatcher_args_->server_monitor->SvrCall(%d, \"%s\", 1);\n", func->GetCmdID(), func->GetName() ); fprintf(write, "\n"); fprintf(write, " int ret = 0;\n"); diff --git a/codegen/syntax_tree.cpp b/codegen/syntax_tree.cpp index fb3da13..1f7fa0e 100644 --- a/codegen/syntax_tree.cpp +++ b/codegen/syntax_tree.cpp @@ -65,7 +65,7 @@ const char * SyntaxParam::GetType() const { SyntaxFunc::SyntaxFunc() { memset(opt_string_, 0, sizeof(opt_string_)); memset(usage_, 0, sizeof(usage_)); - cmdid_ = -1; + cmdid_ = -1; } SyntaxFunc::~SyntaxFunc() { @@ -104,11 +104,11 @@ const char * SyntaxFunc::GetUsage() const { } void SyntaxFunc::SetCmdID(int32_t cmdid) { - cmdid_ = cmdid; + cmdid_ = cmdid; } int32_t SyntaxFunc::GetCmdID() { - return cmdid_; + return cmdid_; } //==================================================================== diff --git a/codegen/syntax_tree.h b/codegen/syntax_tree.h index bf1049f..0d2edbe 100644 --- a/codegen/syntax_tree.h +++ b/codegen/syntax_tree.h @@ -75,15 +75,15 @@ class SyntaxFunc : public SyntaxNode { void SetUsage(const char * usage); const char * GetUsage() const; - void SetCmdID(int32_t cmdid ); - int32_t GetCmdID(); + void SetCmdID(int32_t cmdid ); + int32_t GetCmdID(); private: SyntaxParam req_; SyntaxParam resp_; char opt_string_[_SYNTAX_DESC_LEN]; char usage_[_SYNTAX_DESC_LEN]; - int32_t cmdid_; + int32_t cmdid_; }; //------------------------------------------------------------ diff --git a/codegen/tool_template.cpp b/codegen/tool_template.cpp index 3aa9310..28320d9 100644 --- a/codegen/tool_template.cpp +++ b/codegen/tool_template.cpp @@ -38,70 +38,70 @@ using namespace phxrpc; void showUsage( const char * program ) { - printf( "\nUsage: %s [-c ] [-f ] [-v]\n", program ); + printf( "\nUsage: %s [-c ] [-f ] [-v]\n", program ); - $ToolClass$::Name2Func_t * name2func = $ToolClass$::GetName2Func(); + $ToolClass$::Name2Func_t * name2func = $ToolClass$::GetName2Func(); - for( int i = 0; ; i++ ) { - $ToolClass$::Name2Func_t * iter = &( name2func[i] ); + for( int i = 0; ; i++ ) { + $ToolClass$::Name2Func_t * iter = &( name2func[i] ); - if( NULL == iter->name ) break; + if( NULL == iter->name ) break; - printf( " -f %s %s\n", iter->name, iter->usage ); - } - printf( "\n" ); - exit( 0 ); + printf( " -f %s %s\n", iter->name, iter->usage ); + } + printf( "\n" ); + exit( 0 ); } int main( int argc, char * argv[] ) { - const char * func = NULL; - const char * config = NULL; + const char * func = NULL; + const char * config = NULL; - for( int i = 1; i < argc - 1; i++ ) { - if( 0 == strcmp( argv[i], "-c" ) ) { - config = argv[ ++i ]; - } - if( 0 == strcmp( argv[i], "-f" ) ) { - func = argv[ ++i ]; - } - if( 0 == strcmp( argv[i], "-v" ) ) { - showUsage( argv[0] ); - } - } + for( int i = 1; i < argc - 1; i++ ) { + if( 0 == strcmp( argv[i], "-c" ) ) { + config = argv[ ++i ]; + } + if( 0 == strcmp( argv[i], "-f" ) ) { + func = argv[ ++i ]; + } + if( 0 == strcmp( argv[i], "-v" ) ) { + showUsage( argv[0] ); + } + } - if( NULL == func ) showUsage( argv[0] ); + if( NULL == func ) showUsage( argv[0] ); - if( NULL != config ) $ClientClass$::Init( config ); + if( NULL != config ) $ClientClass$::Init( config ); - $ToolClass$::Name2Func_t * target = NULL; + $ToolClass$::Name2Func_t * target = NULL; - $ToolClass$::Name2Func_t * name2func = $ToolClass$::GetName2Func(); + $ToolClass$::Name2Func_t * name2func = $ToolClass$::GetName2Func(); - for( int i = 0; i < 100; i++ ) { - $ToolClass$::Name2Func_t * iter = &( name2func[i] ); + for( int i = 0; i < 100; i++ ) { + $ToolClass$::Name2Func_t * iter = &( name2func[i] ); - if( NULL == iter->name ) break; + if( NULL == iter->name ) break; - if( 0 == strcasecmp( func, iter->name ) ) { - target = iter; - break; - } - } + if( 0 == strcasecmp( func, iter->name ) ) { + target = iter; + break; + } + } - if( NULL == target ) showUsage( argv[0] ); + if( NULL == target ) showUsage( argv[0] ); - OptMap opt_map( target->opt_string ); + OptMap opt_map( target->opt_string ); - if( ! opt_map.Parse( argc, argv ) ) showUsage( argv[0] ); + if( ! opt_map.Parse( argc, argv ) ) showUsage( argv[0] ); - $ToolClass$::ToolFunc_t targefunc = target->func; + $ToolClass$::ToolFunc_t targefunc = target->func; - $ToolImplClass$ tool; + $ToolImplClass$ tool; - if( 0 != ( tool.*targefunc ) ( opt_map ) ) showUsage( argv[0] ); + if( 0 != ( tool.*targefunc ) ( opt_map ) ) showUsage( argv[0] ); - return 0; + return 0; } )"; diff --git a/phxrpc/http/http_client.cpp b/phxrpc/http/http_client.cpp index 7829978..7cc3ae8 100644 --- a/phxrpc/http/http_client.cpp +++ b/phxrpc/http/http_client.cpp @@ -49,13 +49,13 @@ int HttpClient::Get(BaseTcpStream & socket, const HttpRequest & req, HttpRespons } int HttpClient::Post(BaseTcpStream & socket, const HttpRequest & req, HttpResponse * resp) { - PostStat stat; - int ret = Post( socket, req, resp, &stat ); - return ret; + PostStat stat; + int ret = Post( socket, req, resp, &stat ); + return ret; } int HttpClient::Post(BaseTcpStream & socket, const HttpRequest & req, HttpResponse * resp, - PostStat * post_stat ) { + PostStat * post_stat ) { int socket_ret = HttpProto::SendReqHeader(socket, "POST", req); if (socket_ret == 0) { @@ -78,12 +78,12 @@ int HttpClient::Post(BaseTcpStream & socket, const HttpRequest & req, HttpRespon socket_ret = HttpProto::RecvBody(socket, resp); } - if (socket_ret != 0 && socket_ret != SocketStreamError_Normal_Closed) { - post_stat->recv_error_ = true; - } + if (socket_ret != 0 && socket_ret != SocketStreamError_Normal_Closed) { + post_stat->recv_error_ = true; + } } else { if (socket_ret != SocketStreamError_Normal_Closed) { - post_stat->send_error_ = true; + post_stat->send_error_ = true; phxrpc::log(LOG_ERR, "ERR: sendReqBody fail"); } } diff --git a/phxrpc/http/http_client.h b/phxrpc/http/http_client.h index 21d8ff5..26339db 100644 --- a/phxrpc/http/http_client.h +++ b/phxrpc/http/http_client.h @@ -30,17 +30,17 @@ class ClientMonitor; class HttpClient { public: - struct PostStat { - bool send_error_; - bool recv_error_; + struct PostStat { + bool send_error_; + bool recv_error_; - PostStat(): send_error_(false), recv_error_(false) { - } + PostStat(): send_error_(false), recv_error_(false) { + } - PostStat( bool send_error, bool recv_error ) : - send_error_(send_error), recv_error_(recv_error) { - } - }; + PostStat( bool send_error, bool recv_error ) : + send_error_(send_error), recv_error_(recv_error) { + } + }; public: enum { @@ -52,7 +52,7 @@ class HttpClient { // @return true : socket ok, false : socket error static int Post(BaseTcpStream & socket, const HttpRequest & req, HttpResponse * resp, - PostStat * post_stat ); + PostStat * post_stat ); static int Post(BaseTcpStream & socket, const HttpRequest & req, HttpResponse * resp); // @return true : socket ok, false : socket error diff --git a/phxrpc/network/test_timer.cpp b/phxrpc/network/test_timer.cpp index 1df7ef0..444a76d 100644 --- a/phxrpc/network/test_timer.cpp +++ b/phxrpc/network/test_timer.cpp @@ -32,14 +32,14 @@ bool pass = true; int PopTimeout(Timer & timer, std::map & exist_timer, std::map & removed_timer) { - int next_timeout = 0; - while(true) { + int next_timeout = 0; + while(true) { next_timeout = timer.GetNextTimeout(); if (next_timeout != 0) { return next_timeout; } - UThreadSocket_t * socket = timer.PopTimeout(); + UThreadSocket_t * socket = timer.PopTimeout(); uint64_t now_time = Timer::GetSteadyClockMS(); if (removed_timer.find(socket) != end(removed_timer)) { pass = false; @@ -57,34 +57,34 @@ int PopTimeout(Timer & timer, std::map & exist_time } free(socket); - } - return next_timeout; + } + return next_timeout; } int main(int argc, char ** argv) { - Timer timer; + Timer timer; - std::map exist_timer; - std::map removed_timer; + std::map exist_timer; + std::map removed_timer; std::vector > need_remove; - int timer_obj_count = 100; - for (int i = 0; i < timer_obj_count; i++) { - uint64_t abs_time = Timer::GetSteadyClockMS() + (rand() % 500); + int timer_obj_count = 100; + for (int i = 0; i < timer_obj_count; i++) { + uint64_t abs_time = Timer::GetSteadyClockMS() + (rand() % 500); UThreadSocket_t * socket = NewUThreadSocket(); - timer.AddTimer(abs_time, socket); - printf("add abstime %lu\n", abs_time); + timer.AddTimer(abs_time, socket); + printf("add abstime %lu\n", abs_time); - exist_timer[socket] = abs_time; + exist_timer[socket] = abs_time; if (need_remove.size() < (size_t)timer_obj_count / 2) { need_remove.push_back(make_pair(socket, abs_time)); } - } + } - int next_timeout = 0; - while(next_timeout != -1) { + int next_timeout = 0; + while(next_timeout != -1) { if (!need_remove.empty()) { pair & p = need_remove[need_remove.size() - 1]; timer.RemoveTimer(UThreadSocketTimerID(*p.first)); @@ -92,11 +92,11 @@ int main(int argc, char ** argv) need_remove.pop_back(); } - next_timeout = PopTimeout(timer, exist_timer, removed_timer); - Timer::MsSleep(next_timeout); - } + next_timeout = PopTimeout(timer, exist_timer, removed_timer); + Timer::MsSleep(next_timeout); + } - printf("%s\n", pass ? "Pass..." : "NotPass..."); - return 0; + printf("%s\n", pass ? "Pass..." : "NotPass..."); + return 0; } diff --git a/phxrpc/network/uthread_epoll.h b/phxrpc/network/uthread_epoll.h index eaeaa0b..dcc6ec0 100644 --- a/phxrpc/network/uthread_epoll.h +++ b/phxrpc/network/uthread_epoll.h @@ -58,7 +58,7 @@ class EpollNotifier { class UThreadEpollScheduler { public: - UThreadEpollScheduler(size_t stack_size, int maxTask); + UThreadEpollScheduler(size_t stack_size, int max_task); ~UThreadEpollScheduler(); static UThreadEpollScheduler * Instance(); diff --git a/phxrpc/rpc/client_config.cpp b/phxrpc/rpc/client_config.cpp index 88fcc26..a6ae018 100644 --- a/phxrpc/rpc/client_config.cpp +++ b/phxrpc/rpc/client_config.cpp @@ -34,18 +34,18 @@ namespace phxrpc { ClientConfig::ClientConfig() { connect_timeout_ms_ = 200; socket_timeout_ms_ = 5000; - memset(package_name_, 0, sizeof(package_name_)); + memset(package_name_, 0, sizeof(package_name_)); } ClientConfig::~ClientConfig() { } void ClientConfig :: SetClientMonitor( ClientMonitorPtr client_monitor ) { - client_monitor_ = client_monitor; + client_monitor_ = client_monitor; } ClientMonitorPtr ClientConfig :: GetClientMonitor() { - return client_monitor_; + return client_monitor_; } bool ClientConfig::Read(const char * config_file) { @@ -57,7 +57,7 @@ bool ClientConfig::Read(const char * config_file) { int count = 0; bool succ = true; succ &= config.ReadItem("Server", "ServerCount", &count); - succ &= config.ReadItem("Server", "PackageName", package_name_, sizeof(package_name_)); + succ &= config.ReadItem("Server", "PackageName", package_name_, sizeof(package_name_)); if (!succ) { log(LOG_ERR, "Config::%s key ServerCount | PackageName not found", __func__); return false; @@ -93,12 +93,12 @@ const Endpoint_t * ClientConfig::GetRandom() const { if (endpoints_.size() > 0) { ret = &(endpoints_[random() % endpoints_.size()]); } - - if ( !ret ) { - if ( client_monitor_.get() ) { - client_monitor_->GetEndpointFail(); - } - } + + if ( !ret ) { + if ( client_monitor_.get() ) { + client_monitor_->GetEndpointFail(); + } + } return ret; } @@ -106,14 +106,14 @@ const Endpoint_t * ClientConfig::GetByIndex(const size_t index) const { const Endpoint_t * ret = NULL; if (index < endpoints_.size()) { - ret = &(endpoints_[index]); + ret = &(endpoints_[index]); } - if ( !ret ) { - if ( client_monitor_.get() ) { - client_monitor_->GetEndpointFail(); - } - } + if ( !ret ) { + if ( client_monitor_.get() ) { + client_monitor_->GetEndpointFail(); + } + } return ret; } @@ -126,7 +126,7 @@ int ClientConfig::GetSocketTimeoutMS() { } const char * ClientConfig :: GetPackageName() const { - return package_name_; + return package_name_; } } diff --git a/phxrpc/rpc/client_config.h b/phxrpc/rpc/client_config.h index d31ef5d..96e26ad 100644 --- a/phxrpc/rpc/client_config.h +++ b/phxrpc/rpc/client_config.h @@ -50,11 +50,11 @@ class ClientConfig { int GetSocketTimeoutMS(); - const char * GetPackageName() const; + const char * GetPackageName() const; - void SetClientMonitor( ClientMonitorPtr client_monitor ); + void SetClientMonitor( ClientMonitorPtr client_monitor ); - ClientMonitorPtr GetClientMonitor(); + ClientMonitorPtr GetClientMonitor(); private: std::vector endpoints_; @@ -62,9 +62,9 @@ class ClientConfig { int connect_timeout_ms_; int socket_timeout_ms_; - char package_name_[64]; + char package_name_[64]; - ClientMonitorPtr client_monitor_; + ClientMonitorPtr client_monitor_; }; } diff --git a/phxrpc/rpc/client_monitor.h b/phxrpc/rpc/client_monitor.h index ef2f6d1..2514084 100644 --- a/phxrpc/rpc/client_monitor.h +++ b/phxrpc/rpc/client_monitor.h @@ -30,29 +30,29 @@ namespace phxrpc { class ClientMonitor { public: - ClientMonitor(); + ClientMonitor(); - virtual ~ClientMonitor(); + virtual ~ClientMonitor(); - virtual void ClientConnect( bool result ); + virtual void ClientConnect( bool result ); - virtual void SendBytes( size_t bytes ); + virtual void SendBytes( size_t bytes ); - virtual void SendError(); + virtual void SendError(); - virtual void SendCount(); + virtual void SendCount(); - virtual void RecvBytes( size_t bytes ); + virtual void RecvBytes( size_t bytes ); - virtual void RecvCount(); + virtual void RecvCount(); - virtual void RecvError(); + virtual void RecvError(); - virtual void RequestCost( uint64_t begin_time, uint64_t end_time ); + virtual void RequestCost( uint64_t begin_time, uint64_t end_time ); - virtual void GetEndpointFail(); + virtual void GetEndpointFail(); - virtual void ClientCall( int cmd, const char * method_name ); + virtual void ClientCall( int cmd, const char * method_name ); }; typedef std::shared_ptr ClientMonitorPtr; diff --git a/phxrpc/rpc/hsha_server.cpp b/phxrpc/rpc/hsha_server.cpp index 297db69..4ab4fdc 100644 --- a/phxrpc/rpc/hsha_server.cpp +++ b/phxrpc/rpc/hsha_server.cpp @@ -109,7 +109,7 @@ int HshaServerStat :: TimeCost :: Cost() { HshaServerStat :: HshaServerStat(const HshaServerConfig * config, ServerMonitorPtr hsha_server_monitor ) : config_(config), thread_(&HshaServerStat::CalFunc, this), break_out_(false), - hsha_server_monitor_(hsha_server_monitor) { + hsha_server_monitor_(hsha_server_monitor) { hold_fds_ = 0; accepted_fds_ = 0; accept_qps_ = 0; @@ -117,12 +117,12 @@ HshaServerStat :: HshaServerStat(const HshaServerConfig * config, ServerMonitorP reject_qps_ = 0; queue_full_rejected_after_accepted_fds_ = 0; queue_full_rejected_after_accepted_qps_ = 0; - accept_fail_ = 0; - accept_fail_qps_ = 0; + accept_fail_ = 0; + accept_fail_qps_ = 0; io_read_requests_ = 0; io_read_request_qps_ = 0; - io_read_bytes_ = 0; + io_read_bytes_ = 0; io_write_responses_ = 0; io_write_response_qps_ = 0; @@ -149,17 +149,17 @@ HshaServerStat :: HshaServerStat(const HshaServerConfig * config, ServerMonitorP rpc_time_costs_ = 0; rpc_time_costs_count_ = 0; rpc_avg_time_cost_per_second_ = 0; - rpc_time_cost_per_period_ = 0; + rpc_time_cost_per_period_ = 0; inqueue_wait_time_costs_ = 0; inqueue_wait_time_costs_count_ = 0; inqueue_avg_wait_time_costs_per_second_ = 0; inqueue_avg_wait_time_costs_per_second_cal_seq_ = 0; - inqueue_wait_time_costs_per_period_ = 0; + inqueue_wait_time_costs_per_period_ = 0; outqueue_wait_time_costs_ = 0; outqueue_wait_time_costs_count_ = 0; - outqueue_wait_time_costs_per_period_ = 0; + outqueue_wait_time_costs_per_period_ = 0; outqueue_avg_wait_time_costs_per_second_ = 0; enqueue_fast_rejects_ = 0; @@ -169,8 +169,8 @@ HshaServerStat :: HshaServerStat(const HshaServerConfig * config, ServerMonitorP worker_drop_requests_ = 0; worker_drop_reqeust_qps_ = 0; - worker_time_costs_ = 0; - worker_time_costs_per_second_ = 0; + worker_time_costs_ = 0; + worker_time_costs_per_second_ = 0; } HshaServerStat :: ~HshaServerStat() { @@ -180,33 +180,33 @@ HshaServerStat :: ~HshaServerStat() { } void HshaServerStat :: MonitorReport() { - //accept - hsha_server_monitor_->Accept( accept_qps_ ); - hsha_server_monitor_->AcceptFail( accept_fail_qps_ ); - hsha_server_monitor_->FastRejectAfterAccept( reject_qps_ ); - - //io - hsha_server_monitor_->ReadError( io_read_fail_qps_ ); - hsha_server_monitor_->SendError( io_write_fail_qps_ ); - hsha_server_monitor_->OutOfQueue( queue_full_rejected_after_accepted_qps_ ); - hsha_server_monitor_->QueueDelay( rpc_time_cost_per_period_ ); - hsha_server_monitor_->FastRejectAfterRead( enqueue_fast_reject_qps_ ); - hsha_server_monitor_->RecvBytes( io_read_bytes_qps_ ); - hsha_server_monitor_->SendBytes( io_write_bytes_qps_ ); - hsha_server_monitor_->WaitInInQueue( inqueue_wait_time_costs_per_period_ ); - hsha_server_monitor_->WaitInOutQueue( outqueue_wait_time_costs_per_period_ ); - - //worker - hsha_server_monitor_->RequestCount( accept_qps_ ); - hsha_server_monitor_->ResponseCount( io_write_response_qps_ ); - hsha_server_monitor_->RequestCost( worker_time_costs_per_second_ ); - hsha_server_monitor_->WrokerInQueueTimeout( worker_drop_reqeust_qps_ ); + //accept + hsha_server_monitor_->Accept( accept_qps_ ); + hsha_server_monitor_->AcceptFail( accept_fail_qps_ ); + hsha_server_monitor_->FastRejectAfterAccept( reject_qps_ ); + + //io + hsha_server_monitor_->ReadError( io_read_fail_qps_ ); + hsha_server_monitor_->SendError( io_write_fail_qps_ ); + hsha_server_monitor_->OutOfQueue( queue_full_rejected_after_accepted_qps_ ); + hsha_server_monitor_->QueueDelay( rpc_time_cost_per_period_ ); + hsha_server_monitor_->FastRejectAfterRead( enqueue_fast_reject_qps_ ); + hsha_server_monitor_->RecvBytes( io_read_bytes_qps_ ); + hsha_server_monitor_->SendBytes( io_write_bytes_qps_ ); + hsha_server_monitor_->WaitInInQueue( inqueue_wait_time_costs_per_period_ ); + hsha_server_monitor_->WaitInOutQueue( outqueue_wait_time_costs_per_period_ ); + + //worker + hsha_server_monitor_->RequestCount( accept_qps_ ); + hsha_server_monitor_->ResponseCount( io_write_response_qps_ ); + hsha_server_monitor_->RequestCost( worker_time_costs_per_second_ ); + hsha_server_monitor_->WrokerInQueueTimeout( worker_drop_reqeust_qps_ ); } void HshaServerStat :: CalFunc() { - while (!break_out_) { - std::unique_lock lock(mutex_); - cv_.wait_for(lock, std::chrono::seconds(1)); + while (!break_out_) { + std::unique_lock lock(mutex_); + cv_.wait_for(lock, std::chrono::seconds(1)); //acceptor accept_qps_ = static_cast(accepted_fds_); @@ -215,8 +215,8 @@ void HshaServerStat :: CalFunc() { rejected_fds_ = 0; queue_full_rejected_after_accepted_qps_ = static_cast(queue_full_rejected_after_accepted_fds_); queue_full_rejected_after_accepted_fds_ = 0; - accept_fail_qps_ = static_cast(accept_fail_); - accept_fail_ = 0; + accept_fail_qps_ = static_cast(accept_fail_); + accept_fail_ = 0; //io io_read_request_qps_ = static_cast(io_read_requests_); @@ -250,30 +250,30 @@ void HshaServerStat :: CalFunc() { worker_timeouts_ = 0; //time cost - rpc_time_cost_per_period_ = 0; + rpc_time_cost_per_period_ = 0; if (rpc_time_costs_count_ >= RPC_TIME_COST_CAL_RATE) { rpc_avg_time_cost_per_second_ = static_cast(rpc_time_costs_) / rpc_time_costs_count_; - rpc_time_cost_per_period_ = static_cast(rpc_time_costs_); + rpc_time_cost_per_period_ = static_cast(rpc_time_costs_); rpc_time_costs_ = 0; rpc_time_costs_count_ = 0; } - inqueue_wait_time_costs_per_period_ = 0; + inqueue_wait_time_costs_per_period_ = 0; if (inqueue_wait_time_costs_count_ >= QUEUE_WAIT_TIME_COST_CAL_RATE) { inqueue_avg_wait_time_costs_per_second_ = static_cast(inqueue_wait_time_costs_) / inqueue_wait_time_costs_count_; - inqueue_wait_time_costs_per_period_ = static_cast(inqueue_wait_time_costs_); + inqueue_wait_time_costs_per_period_ = static_cast(inqueue_wait_time_costs_); inqueue_wait_time_costs_ = 0; inqueue_wait_time_costs_count_ = 0; inqueue_avg_wait_time_costs_per_second_cal_seq_++; } - outqueue_wait_time_costs_per_period_ = 0; + outqueue_wait_time_costs_per_period_ = 0; if (outqueue_wait_time_costs_count_ >= QUEUE_WAIT_TIME_COST_CAL_RATE) { outqueue_avg_wait_time_costs_per_second_ = static_cast(outqueue_wait_time_costs_) / outqueue_wait_time_costs_count_; - outqueue_wait_time_costs_per_period_ = static_cast(outqueue_wait_time_costs_); + outqueue_wait_time_costs_per_period_ = static_cast(outqueue_wait_time_costs_); outqueue_wait_time_costs_ = 0; outqueue_wait_time_costs_count_ = 0; } @@ -284,10 +284,10 @@ void HshaServerStat :: CalFunc() { worker_drop_reqeust_qps_ = static_cast(worker_drop_requests_); worker_drop_requests_ = 0; - worker_time_costs_per_second_ = static_cast(worker_time_costs_); - worker_time_costs_ = 0; + worker_time_costs_per_second_ = static_cast(worker_time_costs_); + worker_time_costs_ = 0; - MonitorReport(); + MonitorReport(); phxrpc::log(LOG_NOTICE, "[SERVER_STAT] hold_fds %d accept_qps %d accept_reject_qps %d queue_full_reject_qps %d" " read_request_qps %d write_response_qps %d" @@ -330,9 +330,9 @@ bool HshaServerQos :: CanEnqueue() { } void HshaServerQos :: CalFunc() { - while (!break_out_) { - std::unique_lock lock(mutex_); - cv_.wait_for(lock, std::chrono::seconds(1)); + while (!break_out_) { + std::unique_lock lock(mutex_); + cv_.wait_for(lock, std::chrono::seconds(1)); //fast reject if (hsha_server_stat_->inqueue_avg_wait_time_costs_per_second_cal_seq_ @@ -390,9 +390,9 @@ void Worker :: Func() { HttpResponse * response = new HttpResponse; if (queue_wait_time_ms < MAX_QUEUE_WAIT_TIME_COST) { - HshaServerStat::TimeCost time_cost; + HshaServerStat::TimeCost time_cost; pool_->dispatch_(*request, response, &(pool_->dispatcher_args_)); - pool_->hsha_server_stat_->worker_time_costs_ += time_cost.Cost(); + pool_->hsha_server_stat_->worker_time_costs_ += time_cost.Cost(); } else { pool_->hsha_server_stat_->worker_drop_requests_++; } @@ -416,7 +416,7 @@ WorkerPool :: WorkerPool(UThreadEpollScheduler * scheduler, size_t thread_count, HshaServerStat * hsha_server_stat, Dispatch_t dispatch, void * args) : scheduler_(scheduler), data_flow_(data_flow), hsha_server_stat_(hsha_server_stat), dispatch_(dispatch), - dispatcher_args_(hsha_server_stat_->hsha_server_monitor_, args ) { + dispatcher_args_(hsha_server_stat_->hsha_server_monitor_, args ) { for (size_t i = 0; i < thread_count; i++) { auto worker = new Worker(this); assert(worker != nullptr); @@ -484,7 +484,7 @@ void HshaServerIO :: IOFunc(int accepted_fd) { break; } - hsha_server_stat_->io_read_bytes_ += request->GetContent().size(); + hsha_server_stat_->io_read_bytes_ += request->GetContent().size(); if (!data_flow_->CanPushRequest(config_->GetMaxQueueLength())) { delete request; @@ -527,7 +527,7 @@ void HshaServerIO :: IOFunc(int accepted_fd) { HttpResponse * response = (HttpResponse *)UthreadGetArgs(*socket); HttpProto::FixRespHeaders(is_keep_alive, version.c_str(), response); socket_ret = HttpProto::SendResp(stream, *response); - hsha_server_stat_->io_write_bytes_ += response->GetContent().size(); + hsha_server_stat_->io_write_bytes_ += response->GetContent().size(); delete response; hsha_server_stat_->rpc_time_costs_count_++; @@ -588,7 +588,7 @@ HshaServerUnit :: HshaServerUnit(HshaServer * hsha_server, int idx, int worker_t Dispatch_t dispatch, void * args) : hsha_server_(hsha_server), scheduler_(16 * 1024, 1000000), - hsha_server_io_(idx, &scheduler_, hsha_server_->config_, &data_flow_, + hsha_server_io_(idx, &scheduler_, hsha_server_->config_, &data_flow_, &hsha_server_->hsha_server_stat_, &hsha_server_->hsha_server_qos_), worker_pool_(&scheduler_, worker_thread_count, &data_flow_, &hsha_server_->hsha_server_stat_, dispatch, args), @@ -671,8 +671,8 @@ HshaServer :: HshaServer( Dispatch_t dispatch, void * args) : config_(&config), - hsha_server_monitor_(MonitorFactory::GetFactory()->CreateServerMonitor(config.GetPackageName())), - hsha_server_stat_(&config, hsha_server_monitor_), + hsha_server_monitor_(MonitorFactory::GetFactory()->CreateServerMonitor(config.GetPackageName())), + hsha_server_stat_(&config, hsha_server_monitor_), hsha_server_qos_(&config, &hsha_server_stat_), hsha_server_acceptor_(this) { size_t io_count = (size_t)config.GetIOThreadCount(); diff --git a/phxrpc/rpc/hsha_server.h b/phxrpc/rpc/hsha_server.h index 1587d2f..dfc683d 100644 --- a/phxrpc/rpc/hsha_server.h +++ b/phxrpc/rpc/hsha_server.h @@ -95,7 +95,7 @@ class HshaServerStat { }; private: - void MonitorReport(); + void MonitorReport(); friend class HshaServerIO; friend class WorkerPool; @@ -107,7 +107,7 @@ class HshaServerStat { std::condition_variable cv_; std::thread thread_; bool break_out_; - ServerMonitorPtr hsha_server_monitor_; + ServerMonitorPtr hsha_server_monitor_; std::atomic_int hold_fds_; std::atomic_int accepted_fds_; @@ -116,8 +116,8 @@ class HshaServerStat { int reject_qps_; std::atomic_int queue_full_rejected_after_accepted_fds_; int queue_full_rejected_after_accepted_qps_; - std::atomic_int accept_fail_; - int accept_fail_qps_; + std::atomic_int accept_fail_; + int accept_fail_qps_; std::atomic_int io_read_requests_; int io_read_request_qps_; @@ -150,18 +150,18 @@ class HshaServerStat { std::atomic_long rpc_time_costs_; std::atomic_int rpc_time_costs_count_; int rpc_avg_time_cost_per_second_; - int rpc_time_cost_per_period_; + int rpc_time_cost_per_period_; std::atomic_long inqueue_wait_time_costs_; std::atomic_int inqueue_wait_time_costs_count_; int inqueue_avg_wait_time_costs_per_second_; int inqueue_avg_wait_time_costs_per_second_cal_seq_; - long inqueue_wait_time_costs_per_period_; + long inqueue_wait_time_costs_per_period_; std::atomic_long outqueue_wait_time_costs_; std::atomic_int outqueue_wait_time_costs_count_; int outqueue_avg_wait_time_costs_per_second_; - long outqueue_wait_time_costs_per_period_; + long outqueue_wait_time_costs_per_period_; std::atomic_int enqueue_fast_rejects_; int enqueue_fast_reject_qps_; @@ -170,8 +170,8 @@ class HshaServerStat { std::atomic_int worker_drop_requests_; int worker_drop_reqeust_qps_; - std::atomic_long worker_time_costs_; - long worker_time_costs_per_second_; + std::atomic_long worker_time_costs_; + long worker_time_costs_per_second_; }; @@ -308,7 +308,7 @@ class HshaServer { void RunForever(); const HshaServerConfig * config_; - ServerMonitorPtr hsha_server_monitor_; + ServerMonitorPtr hsha_server_monitor_; HshaServerStat hsha_server_stat_; HshaServerQos hsha_server_qos_; HshaServerAcceptor hsha_server_acceptor_; diff --git a/phxrpc/rpc/http_caller.cpp b/phxrpc/rpc/http_caller.cpp index 4ee9c8c..c177ee8 100644 --- a/phxrpc/rpc/http_caller.cpp +++ b/phxrpc/rpc/http_caller.cpp @@ -46,22 +46,22 @@ HttpResponse & HttpCaller::GetResponse() { } void HttpCaller::MonitorReport( ClientMonitor & client_monitor, bool send_error, bool recv_error, size_t send_size, - size_t recv_size, uint64_t call_begin, uint64_t call_end ) { - - if ( send_error ) { - client_monitor.SendError(); - } - - if ( recv_error ) { - client_monitor.RecvError(); - } - - client_monitor.SendBytes( send_size ); - client_monitor.RecvBytes( recv_size ); - client_monitor.RequestCost( call_begin, call_end ); - if ( cmdid_ > 0 ) { - client_monitor.ClientCall( cmdid_, GetRequest().GetURI() ); - } + size_t recv_size, uint64_t call_begin, uint64_t call_end ) { + + if ( send_error ) { + client_monitor.SendError(); + } + + if ( recv_error ) { + client_monitor.RecvError(); + } + + client_monitor.SendBytes( send_size ); + client_monitor.RecvBytes( recv_size ); + client_monitor.RequestCost( call_begin, call_end ); + if ( cmdid_ > 0 ) { + client_monitor.ClientCall( cmdid_, GetRequest().GetURI() ); + } } int HttpCaller::Call(const google::protobuf::MessageLite & request, google::protobuf::MessageLite * response) { @@ -69,12 +69,12 @@ int HttpCaller::Call(const google::protobuf::MessageLite & request, google::prot return -1; } - uint64_t call_begin = Timer::GetSteadyClockMS(); + uint64_t call_begin = Timer::GetSteadyClockMS(); request_.AddHeader(HttpMessage::HEADER_CONTENT_LENGTH, request_.GetContent().size()); - HttpClient::PostStat post_stat; + HttpClient::PostStat post_stat; int ret = HttpClient::Post(socket_, request_, &response_, &post_stat); - MonitorReport( client_monitor_, post_stat.send_error_, post_stat.recv_error_, request_.GetContent().size(), - response_.GetContent().size(), call_begin, Timer::GetSteadyClockMS() ); + MonitorReport( client_monitor_, post_stat.send_error_, post_stat.recv_error_, request_.GetContent().size(), + response_.GetContent().size(), call_begin, Timer::GetSteadyClockMS() ); if (ret != 0) { return ret; @@ -86,12 +86,12 @@ int HttpCaller::Call(const google::protobuf::MessageLite & request, google::prot const char * result = response_.GetHeaderValue(HttpMessage::HEADER_X_PHXRPC_RESULT); ret = atoi(NULL == result ? "-1" : result); - return ret; + return ret; } void HttpCaller :: SetURI( const char * uri, int cmdid ) { - cmdid_ = cmdid; - GetRequest().SetURI( uri ); + cmdid_ = cmdid; + GetRequest().SetURI( uri ); } void HttpCaller :: SetKeepAlive( const bool keep_alive ) { diff --git a/phxrpc/rpc/http_caller.h b/phxrpc/rpc/http_caller.h index 86955a2..9818fa5 100644 --- a/phxrpc/rpc/http_caller.h +++ b/phxrpc/rpc/http_caller.h @@ -46,17 +46,17 @@ class HttpCaller { int Call(const google::protobuf::MessageLite & request, google::protobuf::MessageLite * response); - void SetURI( const char * uri, int cmdid ); + void SetURI( const char * uri, int cmdid ); void SetKeepAlive( const bool keep_alive ); private: - void MonitorReport( phxrpc::ClientMonitor & client_monitor, bool send_error, bool recv_error, - size_t send_size, size_t recv_size, uint64_t call_begin, uint64_t call_end ); + void MonitorReport( phxrpc::ClientMonitor & client_monitor, bool send_error, bool recv_error, + size_t send_size, size_t recv_size, uint64_t call_begin, uint64_t call_end ); private: BaseTcpStream & socket_; - ClientMonitor & client_monitor_; - int cmdid_; + ClientMonitor & client_monitor_; + int cmdid_; HttpRequest request_; HttpResponse response_; diff --git a/phxrpc/rpc/monitor_factory.cpp b/phxrpc/rpc/monitor_factory.cpp index e7a0fe0..e07483f 100644 --- a/phxrpc/rpc/monitor_factory.cpp +++ b/phxrpc/rpc/monitor_factory.cpp @@ -35,23 +35,23 @@ MonitorFactory :: ~MonitorFactory() { } void MonitorFactory :: SetFactory( MonitorFactory * factory ) { - g_monitor_factory_ = factory; + g_monitor_factory_ = factory; } MonitorFactory * MonitorFactory :: GetFactory() { - static MonitorFactory monitor_factory; - if ( !g_monitor_factory_ ) { - return &monitor_factory; - } - return g_monitor_factory_; + static MonitorFactory monitor_factory; + if ( !g_monitor_factory_ ) { + return &monitor_factory; + } + return g_monitor_factory_; } ClientMonitorPtr MonitorFactory :: CreateClientMonitor( const char * package_name ) { - return ClientMonitorPtr( new ClientMonitor() ); + return ClientMonitorPtr( new ClientMonitor() ); } ServerMonitorPtr MonitorFactory :: CreateServerMonitor( const char * package_name ) { - return ServerMonitorPtr( new ServerMonitor() ); + return ServerMonitorPtr( new ServerMonitor() ); } } diff --git a/phxrpc/rpc/monitor_factory.h b/phxrpc/rpc/monitor_factory.h index 097a446..c1c9428 100644 --- a/phxrpc/rpc/monitor_factory.h +++ b/phxrpc/rpc/monitor_factory.h @@ -34,17 +34,17 @@ typedef std::shared_ptr ServerMonitorPtr; class MonitorFactory { public: - MonitorFactory(); + MonitorFactory(); - virtual ~MonitorFactory(); + virtual ~MonitorFactory(); - virtual ClientMonitorPtr CreateClientMonitor( const char * package_name ); - virtual ServerMonitorPtr CreateServerMonitor( const char * package_name ); + virtual ClientMonitorPtr CreateClientMonitor( const char * package_name ); + virtual ServerMonitorPtr CreateServerMonitor( const char * package_name ); public: - static void SetFactory( MonitorFactory * factory ); + static void SetFactory( MonitorFactory * factory ); - static MonitorFactory * GetFactory(); + static MonitorFactory * GetFactory(); }; diff --git a/phxrpc/rpc/server_base.h b/phxrpc/rpc/server_base.h index 5726fb0..484d134 100644 --- a/phxrpc/rpc/server_base.h +++ b/phxrpc/rpc/server_base.h @@ -26,15 +26,15 @@ See the AUTHORS file for names of contributors. namespace phxrpc { typedef struct tagDispatcherArgs { - phxrpc::ServerMonitorPtr server_monitor; - void * service_args; + phxrpc::ServerMonitorPtr server_monitor; + void * service_args; - tagDispatcherArgs() : service_args(NULL) { - } + tagDispatcherArgs() : service_args(NULL) { + } - tagDispatcherArgs( phxrpc::ServerMonitorPtr monitor, void * args ) : - server_monitor(monitor), service_args(args) { - } + tagDispatcherArgs( phxrpc::ServerMonitorPtr monitor, void * args ) : + server_monitor(monitor), service_args(args) { + } }DispatcherArgs_t; } diff --git a/phxrpc/rpc/server_config.cpp b/phxrpc/rpc/server_config.cpp index c598d4c..9b27a37 100644 --- a/phxrpc/rpc/server_config.cpp +++ b/phxrpc/rpc/server_config.cpp @@ -31,7 +31,7 @@ ServerConfig::ServerConfig() { port_ = -1; max_threads_ = 120; socket_timeout_ms_ = 5000; - memset(package_name_, 0, sizeof(package_name_)) ; + memset(package_name_, 0, sizeof(package_name_)) ; } ServerConfig::~ServerConfig() { @@ -95,11 +95,11 @@ int ServerConfig::GetSocketTimeoutMS() const { } void ServerConfig::SetPackageName(const char * package_name) { - strncpy(package_name_,package_name, sizeof(package_name_) - 1); + strncpy(package_name_,package_name, sizeof(package_name_) - 1); } const char * ServerConfig :: GetPackageName() const { - return package_name_; + return package_name_; } ////////////////////////////////////////////////////// diff --git a/phxrpc/rpc/server_config.h b/phxrpc/rpc/server_config.h index 7aa1835..e98321e 100644 --- a/phxrpc/rpc/server_config.h +++ b/phxrpc/rpc/server_config.h @@ -48,8 +48,8 @@ class ServerConfig { void SetSocketTimeoutMS(int socket_timeout_ms); int GetSocketTimeoutMS() const; - void SetPackageName(const char * package_name); - const char * GetPackageName() const; + void SetPackageName(const char * package_name); + const char * GetPackageName() const; private: char bind_ip_[32]; diff --git a/phxrpc/rpc/server_monitor.cpp b/phxrpc/rpc/server_monitor.cpp index 4619565..383f1cc 100644 --- a/phxrpc/rpc/server_monitor.cpp +++ b/phxrpc/rpc/server_monitor.cpp @@ -68,7 +68,7 @@ void ServerMonitor :: QueueDelay( uint64_t cost_ms ) { void ServerMonitor :: FastRejectAfterAccept( int count ) { } - + void ServerMonitor :: FastRejectAfterRead( int count ) { } diff --git a/phxrpc/rpc/server_monitor.h b/phxrpc/rpc/server_monitor.h index 2d4cfe7..aea223b 100644 --- a/phxrpc/rpc/server_monitor.h +++ b/phxrpc/rpc/server_monitor.h @@ -29,43 +29,43 @@ namespace phxrpc { class ServerMonitor { public: - ServerMonitor(); + ServerMonitor(); - virtual ~ServerMonitor(); + virtual ~ServerMonitor(); - virtual void Accept( int count); + virtual void Accept( int count); - virtual void AcceptFail( int count ); + virtual void AcceptFail( int count ); - virtual void RequestCount( int count ); + virtual void RequestCount( int count ); - virtual void ResponseCount( int count ); + virtual void ResponseCount( int count ); - virtual void SendBytes( size_t bytes ); + virtual void SendBytes( size_t bytes ); - virtual void RecvBytes( size_t bytes ); + virtual void RecvBytes( size_t bytes ); - virtual void RequestCost( uint64_t cost_ms ); + virtual void RequestCost( uint64_t cost_ms ); - virtual void ReadError( int count ); + virtual void ReadError( int count ); - virtual void SendError( int count ); + virtual void SendError( int count ); - virtual void OutOfQueue( int count ); + virtual void OutOfQueue( int count ); - virtual void QueueDelay( uint64_t cost_ms ); + virtual void QueueDelay( uint64_t cost_ms ); - virtual void FastRejectAfterAccept( int count ); - - virtual void FastRejectAfterRead( int count ); + virtual void FastRejectAfterAccept( int count ); + + virtual void FastRejectAfterRead( int count ); - virtual void WrokerInQueueTimeout( int count ); + virtual void WrokerInQueueTimeout( int count ); - virtual void WaitInInQueue( uint64_t cost_ms ); + virtual void WaitInInQueue( uint64_t cost_ms ); - virtual void WaitInOutQueue( uint64_t cost_ms ); + virtual void WaitInOutQueue( uint64_t cost_ms ); - virtual void SvrCall( int cmdid, const char * method_name, int count ); + virtual void SvrCall( int cmdid, const char * method_name, int count ); }; typedef std::shared_ptr ServerMonitorPtr; diff --git a/phxrpc/rpc/socket_stream_phxrpc.cpp b/phxrpc/rpc/socket_stream_phxrpc.cpp index 9aa2f5f..5257bf3 100644 --- a/phxrpc/rpc/socket_stream_phxrpc.cpp +++ b/phxrpc/rpc/socket_stream_phxrpc.cpp @@ -25,23 +25,23 @@ namespace phxrpc { bool PhxrpcTcpUtils :: Open(BlockTcpStream * stream, const char * ip, unsigned short port, int connect_timeout_ms, const char * bind_addr, int bind_port, ClientMonitor & client_monitor ) { - bool ret = BlockTcpUtils::Open( stream, ip, port, connect_timeout_ms, - bind_addr, bind_port ); - client_monitor.ClientConnect( ret ); - return ret; + bool ret = BlockTcpUtils::Open( stream, ip, port, connect_timeout_ms, + bind_addr, bind_port ); + client_monitor.ClientConnect( ret ); + return ret; } bool PhxrpcTcpUtils :: Open(UThreadEpollScheduler * tt, UThreadTcpStream* stream, const char * ip, unsigned short port, int connect_timeout_ms, ClientMonitor & client_monitor ) { - bool ret = UThreadTcpUtils::Open( tt, stream, ip, port, connect_timeout_ms ); + bool ret = UThreadTcpUtils::Open( tt, stream, ip, port, connect_timeout_ms ); if (!ret && errno == 0) { //normal active close - client_monitor.ClientConnect(true); + client_monitor.ClientConnect(true); } else { - client_monitor.ClientConnect(ret); + client_monitor.ClientConnect(ret); } - return ret; + return ret; } diff --git a/phxrpc/rpc/uthread_caller.cpp b/phxrpc/rpc/uthread_caller.cpp index d6db6c9..01ce222 100644 --- a/phxrpc/rpc/uthread_caller.cpp +++ b/phxrpc/rpc/uthread_caller.cpp @@ -31,14 +31,14 @@ namespace phxrpc { UThreadCaller::UThreadCaller(UThreadEpollScheduler * uthread_scheduler, google::protobuf::MessageLite & request, google::protobuf::MessageLite * response, ClientMonitor & client_monitor, const std::string & uri, int cmdid, - const Endpoint_t & ep, const int connect_timeout_ms, const int socket_timeout_ms, UThreadCallback callback, + const Endpoint_t & ep, const int connect_timeout_ms, const int socket_timeout_ms, UThreadCallback callback, void * args) : uthread_scheduler_(uthread_scheduler), request_(&request), response_(response), - client_monitor_(client_monitor), + client_monitor_(client_monitor), uri_(uri), - cmdid_(cmdid), + cmdid_(cmdid), ep_(ep), mconnect_timeout_ms(connect_timeout_ms), msocket_timeout_ms(socket_timeout_ms), @@ -63,7 +63,7 @@ const std::string & UThreadCaller::GetURI() { } int UThreadCaller::GetCmdID() { - return cmdid_; + return cmdid_; } UThreadEpollScheduler * UThreadCaller::Getuthread_scheduler() { @@ -93,9 +93,9 @@ void UThreadCaller::Call(void * args) { UThreadTcpStream socket; Endpoint_t * ep = uthread_caller->GetEP(); - bool open_ret = phxrpc::UThreadTcpUtils::Open(uthread_caller->Getuthread_scheduler(), &socket, ep->ip, ep->port, + bool open_ret = phxrpc::UThreadTcpUtils::Open(uthread_caller->Getuthread_scheduler(), &socket, ep->ip, ep->port, uthread_caller->mconnect_timeout_ms ); - if ( open_ret ) { + if ( open_ret ) { socket.SetTimeout(uthread_caller->msocket_timeout_ms); phxrpc::HttpCaller caller(socket, uthread_caller->client_monitor_); caller.GetRequest().SetURI(uthread_caller->GetURI().c_str()); @@ -103,7 +103,7 @@ void UThreadCaller::Call(void * args) { } else { uthread_caller->SetRet(-1); } - uthread_caller->client_monitor_.ClientConnect( open_ret ); + uthread_caller->client_monitor_.ClientConnect( open_ret ); uthread_caller->Callback(); } @@ -139,7 +139,7 @@ void UThreadMultiCaller::AddCaller(google::protobuf::MessageLite & request, goog const std::string & uri, int cmdid, const Endpoint_t & ep, const int connect_timeout_ms, const int socket_timeout_ms, UThreadCallback callback, void * args) { UThreadCaller * caller = new UThreadCaller(&uthread_scheduler_, request, response, client_monitor_, uri, cmdid, - ep, connect_timeout_ms, socket_timeout_ms, callback, args); + ep, connect_timeout_ms, socket_timeout_ms, callback, args); assert(NULL != caller); uthread_caller_list_.push_back(caller); diff --git a/phxrpc/rpc/uthread_caller.h b/phxrpc/rpc/uthread_caller.h index 5f3dcce..579c288 100644 --- a/phxrpc/rpc/uthread_caller.h +++ b/phxrpc/rpc/uthread_caller.h @@ -46,7 +46,7 @@ class UThreadCaller { public: UThreadCaller(UThreadEpollScheduler * uthread_scheduler, google::protobuf::MessageLite & request, google::protobuf::MessageLite * response, ClientMonitor & client_monitor, const std::string & uri, int cmdid, - const Endpoint_t & ep, const int connect_timeout_ms, const int socket_timeout_ms, UThreadCallback callback, void * args); + const Endpoint_t & ep, const int connect_timeout_ms, const int socket_timeout_ms, UThreadCallback callback, void * args); virtual ~UThreadCaller(); void Close(); @@ -54,7 +54,7 @@ class UThreadCaller { virtual google::protobuf::MessageLite & GetRequest(); virtual google::protobuf::MessageLite * GetResponse(); const std::string & GetURI(); - int GetCmdID(); + int GetCmdID(); UThreadEpollScheduler * Getuthread_scheduler(); Endpoint_t * GetEP(); @@ -69,9 +69,9 @@ class UThreadCaller { UThreadEpollScheduler * uthread_scheduler_; google::protobuf::MessageLite * request_; google::protobuf::MessageLite * response_; - ClientMonitor & client_monitor_; + ClientMonitor & client_monitor_; std::string uri_; - int cmdid_; + int cmdid_; Endpoint_t ep_; public: @@ -102,7 +102,7 @@ class UThreadMultiCaller { private: UThreadEpollScheduler uthread_scheduler_; std::vector uthread_caller_list_; - ClientMonitor & client_monitor_; + ClientMonitor & client_monitor_; }; }