Пользовательский рубиновый драгоценный камень загружается навсегда при отправке первого запроса POST - PullRequest
0 голосов
/ 30 августа 2018

Я написал собственный гем 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-секундное время загрузки все еще там.

Я вызываю другой метод перед тем, что описан выше, и он прекрасно работает, поэтому драгоценный камень загружен правильно.

Кто-нибудь знает, что может вызвать это?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...