RubyのFaraday gem使ってるときにタイムアウト値を明示的に指定しなかった場合にどうなるかというお話。 これ、すごい頻繁にハマってる気がするのでメモする。なぜハマるかというと「タイムアウト値を指定した場合にどういう挙動になるのか?」という考えになかなか辿り着かないからですね。発想力が貧困である。 さっそく該当部分を見てみましょう。 github.com なるほどAdapterに渡してるだけ。じゃあデフォルトのAdapterであるところのNet::HTTPのデフォルト値はどうなのか(AdapterがNet::HTTPでない場合は各自で調べてください)。 docs.ruby-lang.org docs.ruby-lang.org open_timeout、read_timeoutともに(Ruby2.5の時点では)デフォルト60秒とのこと。ということは極端な話、接続が確立するまでに59