Он не говорит браузеру, чтобы он не кэшировался - браузер кэширует каждую строку запроса по отдельности, поэтому, если следующий запрос к rails.js? 9283482934, то это новый URL, который необходимо запросить у сервер.
Это позволяет вам указать браузеру кэшировать файл, но, обновив html-файл новым номером, вы можете заставить все клиентские браузеры загружать новую версию, фактически не изменяя новый файл js.
Причина использования этого числа состоит в том, чтобы разрешить клиентам кэшировать его, а также разрешить принудительное обновление, поэтому оно не должно отрицательно влиять на производительность. Однако, если вы программно генерируете случайное число для каждого запроса, вы будете вынуждать всех клиентов всегда запрашивать файл, эффективно отключая кэширование для этого файла.