Если «одновременно» вы подразумеваете из нескольких потоков, то да, вам нужно заблокировать доступ к нему (или использовать ConcurrentHashMap или аналогичный, который делает блокировку за вас).
В WEBrick (часть stdlib Ruby) есть HTTP-прокси, и вот пример реализации.
Если вам нравится жить на грани, есть также em -proxy Ильи Григорика.
Это сообщение Ильи подразумевает, что, похоже, для решения вашей проблемы требуется дополнительная настройка.
Важен ли здесь прокси, встроенный в Ruby? Или просто «получить доступ ко всему HTTP-трафику на вашей машине»? В последнем случае есть бесплатная программа под названием HTTP Sniffer and Analyzer , которая предположительно может это сделать. Я не использовал его, но видел, что он получил несколько положительных отзывов. Есть еще несколько таких программ, но большинство из них платные. В OS X, Linux и т. Д. Вы можете использовать встроенный tcpdump умными способами для получения аналогичного эффекта.