[Groonga-commit] groonga/groonga-query-log at 1603311 [master] replayer: use sized queue

Back to archive index

Kouhei Sutou null+****@clear*****
Tue Sep 17 18:56:53 JST 2013


Kouhei Sutou	2013-09-17 18:56:53 +0900 (Tue, 17 Sep 2013)

  New Revision: 1603311047cb0f6f23d1024f7e70da28cbf6a714
  https://github.com/groonga/groonga-query-log/commit/1603311047cb0f6f23d1024f7e70da28cbf6a714

  Message:
    replayer: use sized queue
    
    Because too large request queue is meaningless. It increases memory
    usage.

  Modified files:
    lib/groonga/query-log/command/replay.rb
    lib/groonga/query-log/replayer.rb

  Modified: lib/groonga/query-log/command/replay.rb (+6 -0)
===================================================================
--- lib/groonga/query-log/command/replay.rb    2013-07-05 18:50:10 +0900 (03d2390)
+++ lib/groonga/query-log/command/replay.rb    2013-09-17 18:56:53 +0900 (919da86)
@@ -71,6 +71,12 @@ module Groonga
             @options.n_cilents = n_clients
           end
 
+          parser.on("--request-queue-size=SIZE", Integer,
+                    "The size of request queue",
+                    "[#{@options.request_queue_size}]") do |size|
+            @options.request_queue_size = size
+          end
+
           parser.on("--disable-cache",
                     "Add 'cache=no' parameter to request",
                     "[#{@options.disable_cache?}]") do

  Modified: lib/groonga/query-log/replayer.rb (+4 -2)
===================================================================
--- lib/groonga/query-log/replayer.rb    2013-07-05 18:50:10 +0900 (187acff)
+++ lib/groonga/query-log/replayer.rb    2013-09-17 18:56:53 +0900 (4b6d82c)
@@ -26,9 +26,9 @@ module Groonga
   module QueryLog
     class Replayer
       def initialize(options)
-        @queue = Queue.new
-        @responses = Queue.new
         @options = options
+        @queue = SizedQueue.new(@options.request_queue_size)
+        @responses = Queue.new
       end
 
       def replay(input)
@@ -117,11 +117,13 @@ module Groonga
         attr_accessor :port
         attr_accessor :protocol
         attr_accessor :n_clients
+        attr_accessor :request_queue_size
         def initialize
           @host = "127.0.0.1"
           @port = 10041
           @protocol = :gqtp
           @n_clients = 8
+          @request_queue_size = 1000
           @disable_cache = false
           @requests_path = nil
           @responses_path = nil
-------------- next part --------------
HTML����������������������������...
Download 



More information about the Groonga-commit mailing list
Back to archive index