История изменений
Исправление eao197, (текущая версия) :
Если очевидно, что на каждый запрос нужна память, почему не иметь её зарание?
Хотя бы потому, что вы обрабатываете разные запросы и не можете знать заранее сколько памяти под конкретный запрос потребуется.
Например, к вам приходит REST-запрос и вы даже сразу не знаете (в момент начала чтения данных из сокета) сколько именно заголовков в этом запросе будет.
Можно использовать политику «под каждый запрос свой аллокатор» на базе арены или чего-то подобного. Но это вообще другая история и тут есть нюансы с тем, меняется ли что-то в состоянии сервера после выполнения запроса (т.е. могут ли объекты, созданные в процессе выполнения запроса, пережить сам запрос).
Исходная версия eao197, :
Если очевидно, что на каждый запрос нужна память, почему не иметь её зарание?
Хотя бы потому, что вы обрабатываете разные запросы и не можете знать заранее сколько памяти под конкретный запрос потребуется.
Например, к вам приходит REST-запрос и вы даже сразу не знаете (в момент начала чтения данных из сокета) сколько именно заголовков в этом запросе будет.
Можно использовать политику «под каждый запрос» свой аллокатор на базе арены или чего-то подобного. Но это вообще другая история и тут есть нюансы с тем, меняется ли что-то в состоянии сервера после выполнения запроса (т.е. могут ли объекты, созданные в процессе выполнения запроса, пережить сам запрос).