diff --git a/src/cert_session.c b/src/cert_session.c index e7d7a65..65db23c 100644 --- a/src/cert_session.c +++ b/src/cert_session.c @@ -61,9 +61,6 @@ static struct fs_stats_t SGstats = { rt_mutex entries_mtx = PTHREAD_MUTEX_INITIALIZER; -uint64_t startTime = 0; -uint64_t endTime = 0; - void connectCallback(const struct redisAsyncContext *c, int status) { if (status != REDIS_OK) { mesa_runtime_log(RLOG_LV_FATAL, MODULE_NAME, "Redis connect error : %s\n", c->errstr); @@ -685,7 +682,7 @@ finish: static int fs_internal_operate(int id, int id2, int column_id, int column_id2, long long diffTime) { - int ret = -1, value = -1; + int ret = -1; screen_stat_handle_t handle = SGstats.handle; FS_internal_operate(handle, id, column_id, FS_OP_ADD, 1); @@ -698,11 +695,7 @@ static int fs_internal_operate(int id, int id2, int column_id, int column_id2, l if (column_id2 < 0) goto finish; - value = FS_internal_operate(handle, id, column_id, FS_OP_GET, 0); - if (value < 0) - goto finish; - - ret = FS_internal_operate(handle, id, column_id2, FS_OP_SET, diffTime/value); + ret = FS_internal_operate(handle, id, column_id2, FS_OP_SET, diffTime); finish: return ret; } @@ -784,7 +777,6 @@ void rd_get_callback(redisAsyncContext *c, void *r, void *privdata) break; case REDIS_REPLY_NIL: - /* Certificate information modification and Strategy to judge**/ mesa_runtime_log(RLOG_LV_INFO, MODULE_NAME, "Generating certificate information"); xret = rd_encode_sendbuf(request, c, sendbuf); @@ -797,7 +789,6 @@ void rd_get_callback(redisAsyncContext *c, void *r, void *privdata) evhttp_socket_send(request->evh_req, sendbuf); finish: - //kfree(request); return; } @@ -943,14 +934,6 @@ pthread_work_proc(struct evhttp_request *evh_req, void *arg) switch (evhttp_request_get_command(evh_req)) { case EVHTTP_REQ_GET: cmdtype = "GET"; break; - case EVHTTP_REQ_POST: cmdtype = "POST"; break; - case EVHTTP_REQ_HEAD: cmdtype = "HEAD"; break; - case EVHTTP_REQ_PUT: cmdtype = "PUT"; break; - case EVHTTP_REQ_DELETE: cmdtype = "DELETE"; break; - case EVHTTP_REQ_OPTIONS: cmdtype = "OPTIONS"; break; - case EVHTTP_REQ_TRACE: cmdtype = "TRACE"; break; - case EVHTTP_REQ_CONNECT: cmdtype = "CONNECT"; break; - case EVHTTP_REQ_PATCH: cmdtype = "PATCH"; break; default: cmdtype = "unknown"; break; } fs_internal_operate(thread_info->column_ids, -1, SGstats.line_ids[0], -1, 0); @@ -962,7 +945,7 @@ pthread_work_proc(struct evhttp_request *evh_req, void *arg) if (request->host[0] != '\0' && request->evh_req != NULL){ #ifdef RD_MUTEX_LOCK - rd_mutex_lock("key", 30, &request->mtx, thread_info->sync); + rd_mutex_lock(request->host, 30, &request->mtx, thread_info->sync); #endif xret = redisAsyncCommand(thread_info->cl_ctx, rd_get_callback, request, "GET %s", request->host); if (xret < 0) @@ -973,7 +956,6 @@ pthread_work_proc(struct evhttp_request *evh_req, void *arg) evhttp_uri_free(decoded); goto error; } - evhttp_uri_free(decoded); goto finish; @@ -994,7 +976,6 @@ cert_trapper_task_int(struct event_base *base, libevent_thread *me) mesa_runtime_log(RLOG_LV_FATAL, MODULE_NAME, "Initialize the redis connection is failure\n"); goto finish; } - xret = redis_sync_int(&me->sync); /* Initialize the X509 CA*/ @@ -1207,18 +1188,23 @@ fs_screen_init() value=3; FS_internal_set_para(SGstats.handle, STAT_CYCLE, &value, sizeof(value)); - snprintf(buff,sizeof(buff),"%s", "req"); + snprintf(buff,sizeof(buff),"%s", "http-get"); SGstats.line_ids[0] = FS_internal_register(SGstats.handle, FS_STYLE_COLUMN, FS_CALC_CURRENT, buff); - snprintf(buff,sizeof(buff),"%s", "store"); + snprintf(buff,sizeof(buff),"%s", "local-storage"); SGstats.line_ids[1] = FS_internal_register(SGstats.handle, FS_STYLE_COLUMN, FS_CALC_CURRENT, buff); - snprintf(buff,sizeof(buff),"%s", "sign"); + snprintf(buff,sizeof(buff),"%s", "generate-cert"); SGstats.line_ids[2] = FS_internal_register(SGstats.handle, FS_STYLE_COLUMN, FS_CALC_CURRENT, buff); - snprintf(buff,sizeof(buff),"%s", "ssl(ms)"); + snprintf(buff,sizeof(buff),"%s", "take-time"); SGstats.line_ids[3] = FS_internal_register(SGstats.handle, FS_STYLE_COLUMN, FS_CALC_CURRENT, buff); + snprintf(buff,sizeof(buff),"average-time"); + FS_internal_register_ratio(SGstats.handle, SGstats.line_ids[3], + SGstats.line_ids[2], 1, + FS_STYLE_COLUMN, FS_CALC_CURRENT, + buff); FS_internal_start(SGstats.handle); return 0; diff --git a/src/components/redis/rd_lock.c b/src/components/redis/rd_lock.c index 68587b2..f58e05e 100644 --- a/src/components/redis/rd_lock.c +++ b/src/components/redis/rd_lock.c @@ -22,7 +22,6 @@ struct rd_RedLock{ sds m_unlockScript; int m_retryCount; int m_retryDelay; - char *m_continueLockScript; }; static struct rd_RedLock redlock = { @@ -30,7 +29,6 @@ static struct rd_RedLock redlock = { .m_unlockScript = NULL, .m_retryCount = 0, .m_retryDelay = 0, - .m_continueLockScript = NULL, }; struct rd_RedLock *mutx_redlock() @@ -195,9 +193,8 @@ void rd_lock_init() { struct rd_RedLock *rdlock = mutx_redlock(); - rdlock->m_continueLockScript = sdsnew("if redis.call('get', KEYS[1]) == ARGV[1] then redis.call('del', KEYS[1]) end return redis.call('set', KEYS[1], ARGV[2], 'px', ARGV[3], 'nx')"); rdlock->m_unlockScript = sdsnew("if redis.call('get', KEYS[1]) == ARGV[1] then return redis.call('del', KEYS[1]) else return 0 end"); - rdlock->m_retryCount = 8; + rdlock->m_retryCount = 3; rdlock->m_retryDelay = 10; rdlock->m_clockDriftFactor = 0.01; diff --git a/src/inc/field_stat2.h b/src/inc/field_stat2.h index d27c309..6ed212c 100644 --- a/src/inc/field_stat2.h +++ b/src/inc/field_stat2.h @@ -22,7 +22,6 @@ enum field_op { FS_OP_ADD=1, FS_OP_SET, - FS_OP_GET, }; diff --git a/src/inc/moodycamel_field_stat2.cpp b/src/inc/moodycamel_field_stat2.cpp index a618b26..f09bcfc 100644 --- a/src/inc/moodycamel_field_stat2.cpp +++ b/src/inc/moodycamel_field_stat2.cpp @@ -17,6 +17,9 @@ extern "C" int FS_internal_register(screen_stat_handle_t handle,enum field_dsp_s enum field_calc_algo calc_type,const char* name); extern "C" int FS_internal_operate(screen_stat_handle_t handle,int id,int column_id,enum field_op op,long long value); +extern "C" int FS_internal_register_ratio(screen_stat_handle_t handle,int numerator_id,int denominator_id,int scaling, + enum field_dsp_style_t style,enum field_calc_algo calc_type,const char* name); + screen_stat_handle_t FS_internal_create_handle(void) { return FS_create_handle(); @@ -43,3 +46,9 @@ int FS_internal_operate(screen_stat_handle_t handle,int id,int column_id,enum fi return FS_operate(handle, id, column_id, op, value); } +int FS_internal_register_ratio(screen_stat_handle_t handle,int numerator_id,int denominator_id,int scaling, + enum field_dsp_style_t style,enum field_calc_algo calc_type,const char* name) +{ + return FS_register_ratio(handle, numerator_id, denominator_id, scaling, style, calc_type, name); +} + diff --git a/src/inc/moodycamel_field_stat2.h b/src/inc/moodycamel_field_stat2.h index 64d8a52..84bb7c7 100644 --- a/src/inc/moodycamel_field_stat2.h +++ b/src/inc/moodycamel_field_stat2.h @@ -24,7 +24,6 @@ enum field_op { FS_OP_ADD=1, FS_OP_SET, - FS_OP_GET, }; typedef void* screen_stat_handle_t; @@ -56,4 +55,7 @@ int FS_internal_register(screen_stat_handle_t handle,enum field_dsp_style_t styl int FS_internal_operate(screen_stat_handle_t handle,int id,int column_id,enum field_op op,long long value); +int FS_internal_register_ratio(screen_stat_handle_t handle,int numerator_id,int denominator_id,int scaling, + enum field_dsp_style_t style,enum field_calc_algo calc_type,const char* name); + #endif diff --git a/src/lib/libMESA_field_stat2.a b/src/lib/libMESA_field_stat2.a index 7ba8281..a6aa4b0 100644 Binary files a/src/lib/libMESA_field_stat2.a and b/src/lib/libMESA_field_stat2.a differ