Я написал собственный гем ruby, который делает простые HTTP-запросы, используя следующий код:
request = Net::HTTP::Post.new(path, initheader = {'Content-Type' =>'application/json'})
request.body = body
response = Net::HTTP.new(myhost, myport)
response.ssl_version = :TLSv1
response.use_ssl = true
response.verify_mode = ::OpenSSL::SSL::VERIFY_NONE
response.start {|http| @res = http.request(request) }
Когда я пытаюсь вызвать его из моего приложения Rails, оно загружается / ничего не делает в течение примерно 10 секунд, прежде чем сделать фактический запрос POST. Повторный вызов после этого - почти мгновенная мысль, поэтому я предположил, что зависимости загружены в это время.
Драгоценный камень требует:
require 'net/http'
require 'json'
require 'openssl'
поэтому я просто объявил 'json' и 'openssl' как требования времени выполнения в gemspec. После запуска
комплектация
они установлены, но 10-секундное время загрузки все еще там.
Я вызываю другой метод перед тем, что описан выше, и он прекрасно работает, поэтому драгоценный камень загружен правильно.
Кто-нибудь знает, что может вызвать это?