diff options
| author | root <[email protected]> | 2023-09-26 07:11:05 +0000 |
|---|---|---|
| committer | root <[email protected]> | 2023-09-26 07:11:05 +0000 |
| commit | e510917ce787526063bd72dee7ffe661db914142 (patch) | |
| tree | bcf65586d0dd00818d5b9c2941d1469d47f4680a /shaping/src/shaper_stat.cpp | |
| parent | a3c6b5c1fd32c869cb2152e4274fd87929e4d59c (diff) | |
optimize performance for swarmkv
1.request 10 times token for current packet
2.request swarmkv at least 1ms later after failed for one profile
Diffstat (limited to 'shaping/src/shaper_stat.cpp')
| -rw-r--r-- | shaping/src/shaper_stat.cpp | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/shaping/src/shaper_stat.cpp b/shaping/src/shaper_stat.cpp index cb5ccc4..6ede233 100644 --- a/shaping/src/shaper_stat.cpp +++ b/shaping/src/shaper_stat.cpp @@ -174,6 +174,8 @@ static void shaper_stat_profile_metirc_refresh(struct shaping_thread_ctx *ctx, i if (need_update_guage) { fieldstat_dynamic_table_metric_value_incrby(stat->instance, stat->table_id, stat->column_ids[IN_QUEUE_LEN_IDX], SHAPER_STAT_ROW_NAME, profile_stat->in.queue_len, tags, TAG_IDX_MAX, thread_id); fieldstat_dynamic_table_metric_value_incrby(stat->instance, stat->table_id, stat->column_ids[OUT_QUEUE_LEN_IDX], SHAPER_STAT_ROW_NAME, profile_stat->out.queue_len, tags, TAG_IDX_MAX, thread_id); + + shaper_global_stat_async_invoke_inc(ctx->global_stat); swarmkv_async_command(ctx->swarmkv_db, shaper_stat_swarmkv_hincrby_cb, ctx->global_stat, "HINCRBY tsg-shaping-%d priority-%d %lld", profile->id, profile->priority, profile_stat->in.queue_len + profile_stat->out.queue_len); memset(profile_stat, 0, sizeof(struct shaping_stat_for_profile)); } else { |
