mirror of
				https://github.com/iv-org/invidious.git
				synced 2025-11-03 22:21:55 +00:00 
			
		
		
		
	Update pubsub to use client pool
This commit is contained in:
		@@ -127,6 +127,8 @@ def subscribe_to_feeds(db, logger, key, config)
 | 
			
		||||
    end
 | 
			
		||||
    max_channel = Channel(Int32).new
 | 
			
		||||
 | 
			
		||||
    client_pool = HTTPPool.new(PUBSUB_URL, capacity: max_threads, timeout: 0.05)
 | 
			
		||||
 | 
			
		||||
    spawn do
 | 
			
		||||
      max_threads = max_channel.receive
 | 
			
		||||
      active_threads = 0
 | 
			
		||||
@@ -147,12 +149,13 @@ def subscribe_to_feeds(db, logger, key, config)
 | 
			
		||||
 | 
			
		||||
            spawn do
 | 
			
		||||
              begin
 | 
			
		||||
                response = subscribe_pubsub(ucid, key, config)
 | 
			
		||||
                response = subscribe_pubsub(ucid, key, config, client_pool)
 | 
			
		||||
 | 
			
		||||
                if response.status_code >= 400
 | 
			
		||||
                  logger.puts("#{ucid} : #{response.body}")
 | 
			
		||||
                end
 | 
			
		||||
              rescue ex
 | 
			
		||||
                logger.puts("#{ucid} : #{ex.message}")
 | 
			
		||||
              end
 | 
			
		||||
 | 
			
		||||
              active_channel.send(true)
 | 
			
		||||
 
 | 
			
		||||
@@ -1949,7 +1949,7 @@ def sha256(text)
 | 
			
		||||
  return digest.hexdigest
 | 
			
		||||
end
 | 
			
		||||
 | 
			
		||||
def subscribe_pubsub(topic, key, config)
 | 
			
		||||
def subscribe_pubsub(topic, key, config, client_pool)
 | 
			
		||||
  case topic
 | 
			
		||||
  when .match(/^UC[A-Za-z0-9_-]{22}$/)
 | 
			
		||||
    topic = "channel_id=#{topic}"
 | 
			
		||||
@@ -1961,7 +1961,6 @@ def subscribe_pubsub(topic, key, config)
 | 
			
		||||
    # TODO
 | 
			
		||||
  end
 | 
			
		||||
 | 
			
		||||
  client = make_client(PUBSUB_URL)
 | 
			
		||||
  time = Time.utc.to_unix.to_s
 | 
			
		||||
  nonce = Random::Secure.hex(4)
 | 
			
		||||
  signature = "#{time}:#{nonce}"
 | 
			
		||||
@@ -1977,7 +1976,7 @@ def subscribe_pubsub(topic, key, config)
 | 
			
		||||
    "hub.secret"        => key.to_s,
 | 
			
		||||
  }
 | 
			
		||||
 | 
			
		||||
  return client.post("/subscribe", form: body)
 | 
			
		||||
  return client_pool.client &.post("/subscribe", form: body)
 | 
			
		||||
end
 | 
			
		||||
 | 
			
		||||
def parse_range(range)
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user