

題名の通りrubyでプログラムを実行すると普段は問題なく動作するのですが、たまに以下のようなエラーが出力して動作が止まってしまいます。

[code]

    C:/Ruby26-x64/lib/ruby/2.6.0/net/protocol.rb:44:in `connect_nonblock': An existing connection was forcibly closed by the remote host. - SSL_connect(Errno::ECONNRESET)
    
    C:/Ruby26-x64/lib/ruby/2.6.0/net/protocol.rb:44:in `connect_nonblock': An existing connection was forcibly closed by the remote host. - SSL_connect (Faraday::ConnectionFailed)
    
[/code]

自分でも調べてみたのですが答えを見つけれず…  
普段は正常に動作しているので何が原因なのか初心者の私ではよく分かりません。  
おそらく私の知識不足でしょうが、解決方法を教えて頂きたいです。

必要ないかもしれませんが以下の`case s.connect_nonblock(exception:
false)`がprotocol.rbの44の部分です。

[code]

        def ssl_socket_connect(s, timeout)
          if timeout
            while true
              raise Net::OpenTimeout if timeout <= 0
              start = Process.clock_gettime Process::CLOCK_MONOTONIC
              # to_io is required because SSLSocket doesn't have wait_readable yet
              case s.connect_nonblock(exception: false)
              when :wait_readable; s.to_io.wait_readable(timeout)
              when :wait_writable; s.to_io.wait_writable(timeout)
              else; break
              end
              timeout -= Process.clock_gettime(Process::CLOCK_MONOTONIC) - start
            end
          else
            s.connect
          end
        end
      end
    
[/code]

OSはwindows10です。


CC BY-SA 4.0
2019-07-10T03:08:48.837
56538
2019-07-11T22:29:15.497
2019-07-10T08:20:03.307
-1
35044
question
ruby
たまにSSL_connectエラー？が出現する


SSLのバージョンは適切でしょうか？

例えばサーバー側はTLS v1.2しか受け付けないのに、クライアント側がSSL V3.0〜TLS
v1.0で接続した場合など、本来、エラーが返されるべきですが、サーバーに依ってはいきなり切断するものもあります。


CC BY-SA 4.0
2019-07-11T22:29:15.497
56573
2019-07-11T22:29:15.497
4236
56538
answer