From 87eef66181c9defc2d44ddd536e23b691f754b91 Mon Sep 17 00:00:00 2001 From: Kazuki Yamaguchi Date: Thu, 14 Jan 2016 13:57:16 +0900 Subject: rack: remove threaded option. use threadpool_size=1 instead --- examples/rack-example-config.rb | 2 +- lib/plum/rack/cli.rb | 7 +------ lib/plum/rack/config.rb | 3 +-- lib/plum/rack/dsl.rb | 4 ---- lib/plum/rack/server.rb | 2 +- lib/plum/rack/thread_pool.rb | 2 +- 6 files changed, 5 insertions(+), 15 deletions(-) diff --git a/examples/rack-example-config.rb b/examples/rack-example-config.rb index 8f5e1f1..083efa5 100644 --- a/examples/rack-example-config.rb +++ b/examples/rack-example-config.rb @@ -1,7 +1,7 @@ log "logs/plum.log" debug false server_push true -threaded false # create a new thread per request +threadpool_size 20 # use 20 threads to process requests (default: 1( = disable)) fallback_legacy "127.0.0.1:8080" # forward if client doesn't support HTTP/2 user "nobody" diff --git a/lib/plum/rack/cli.rb b/lib/plum/rack/cli.rb index 9d8a03d..31e8b3f 100644 --- a/lib/plum/rack/cli.rb +++ b/lib/plum/rack/cli.rb @@ -44,7 +44,6 @@ module Plum ENV["RACK_ENV"] = @options[:env] if @options[:env] config[:debug] = @options[:debug] unless @options[:debug].nil? config[:server_push] = @options[:server_push] unless @options[:server_push].nil? - config[:threaded] = @options[:threaded] unless @options[:threaded].nil? config[:threadpool_size] = @options[:threadpool_size] unless @options[:threadpool_size].nil? if @options[:fallback_legacy] @@ -121,11 +120,7 @@ module Plum @options[:key] = arg end - o.on "--threaded", "Call the Rack application in threads (experimental)" do - @options[:threaded] = true - end - - o.on "--threadpool-size SIZE", "Set the size of thread pool" do |arg| + o.on "--threadpool-size SIZE", "Set the size of thread pool. Set 1 to disable" do |arg| @options[:threadpool_size] = arg.to_i end diff --git a/lib/plum/rack/config.rb b/lib/plum/rack/config.rb index a5a651f..f7284dc 100644 --- a/lib/plum/rack/config.rb +++ b/lib/plum/rack/config.rb @@ -7,8 +7,7 @@ module Plum debug: false, log: nil, # $stdout server_push: true, - threaded: false, - threadpool_size: 20, + threadpool_size: 1, }.freeze def initialize(config = {}) diff --git a/lib/plum/rack/dsl.rb b/lib/plum/rack/dsl.rb index 1b46360..eb70965 100644 --- a/lib/plum/rack/dsl.rb +++ b/lib/plum/rack/dsl.rb @@ -40,10 +40,6 @@ module Plum @config[:server_push] = !!bool end - def threaded(bool) - @config[:threaded] = !!bool - end - def threadpool_size(int) @config[:threadpool_size] = int.to_i end diff --git a/lib/plum/rack/server.rb b/lib/plum/rack/server.rb index 9aedc20..f01f0ac 100644 --- a/lib/plum/rack/server.rb +++ b/lib/plum/rack/server.rb @@ -10,7 +10,7 @@ module Plum @app = config[:debug] ? ::Rack::CommonLogger.new(app) : app @logger = Logger.new(config[:log] || $stdout).tap { |l| l.level = config[:debug] ? Logger::DEBUG : Logger::INFO } @listeners = config[:listeners].map { |lc| lc[:listener].new(lc) } - @threadpool = ThreadPool.new(@config[:threadpool_size]) if @config[:threaded] + @threadpool = ThreadPool.new(@config[:threadpool_size]) if @config[:threadpool_size] > 1 @logger.info("Plum #{::Plum::VERSION}") @logger.info("Config: #{config}") diff --git a/lib/plum/rack/thread_pool.rb b/lib/plum/rack/thread_pool.rb index 9e07943..43738f9 100644 --- a/lib/plum/rack/thread_pool.rb +++ b/lib/plum/rack/thread_pool.rb @@ -2,7 +2,7 @@ module Plum module Rack class ThreadPool - def initialize(size = 20) + def initialize(size) @workers = Set.new @jobs = Queue.new -- cgit v1.2.3