2017-08-28 9 views
0

私は自分のアプリのredis-serverに行っていたいくつかの呼び出しを最適化し、expire呼び出しの数を大幅に減らしました。スループットがダウンした方法を参照してください:redis-serverのスループットを最適化した後のクエリ時間のスパイクの説明

enter image description here

をしかし、また、クエリ時間が急に上がった(とスパイクは、背が高くなった)どのように注意してください!なぜそれが起こったでしょうか?

私は基本的にsetexpireのペアをsetexでコードに置き換えました。私は午前2時15分ごろに1つの最適化を行い、午前2時45分ごろに別の最適化を行いました。後者の場合にのみクエリ時間がどのように上昇するかに注目してください。

これは単純にNew Relicの奇抜なものか、ここではRedis中心の説明ですか?私の全体的な目的は、クエリ時間をできる限り短くして維持することでした。より多くの情報が必要な場合はお知らせください。

答えて

0

1分間に500コール、400ファスト、100スロータイプと仮定します。速いものは100ms、遅いものは500msかかる。 だからnewrelicsとして平均時間が表示されます:

(400*100 + 100*500)/(400+100) = 180ms. 

今、あなたは、いくつかのコールを結合し、主に安価な通話が以前の設定から排除取得、新しい分布は0速い通話、および100本の遅く電話を言っています。

(0*100 + 100*500)/(0+100) = 500ms. 

これは、正確にNewRelicが表示しているものです。期限切れコールは高速コールで平均を減らしています。 あなたが興味を持っているのは全体的な時間です。すなわち、確かに恩恵を受けたcalls per minute*average time per callです。