nodejs лучше Java?” Я привёл следующий аргумент:
                  
                  
                  «Java - много запросов = много потоков
                  
                  
                       Nodejs - много запросов = один поток»
                  
                  
                  
                  
                  
                  На что получил возражение:
                  
                  
                  «— кто же мешает делать пулинг ._.»
                  
                  
                  
                  
                  
                  После чего возник ряд вопросов:
                  
                  
                  1) Пулинг всмысле пулинг потоков ? Для чего ? Каждый поток ведь - дополнительная оперативная память (ну и плюс переключение контекстов)
                  
                  
                  2) А разве не смысл node.js в том что асинхронное программирование на нём проще ? Чем делать пулы, заниматься thread менеджментом и т.д. ?
                  
                  
                  
                  
                  
                  Помогите пожалуйста разобраться с этими вопросами?
                  
                  
                
поток на каждое подключение - это бездействие процессора при каждой операции ввода/вывода. Нода же использует один поток и загружает процессор максимально. Но и асинхронное программирование нельзя назвать простым, наверное)
Если очень много запросов, то им придётся ждать освобождения потока из пулла и они просто могут начать отваливаться по таймауту.
это разные инструменты просто с различными подходами и экосистемами. Где-то их задачи пересекаются где-то нет. сравнивать без контекста конкретной задачи смысла нет. Экосистема JVM просто гигантская, есть решения даже вдохновленные нодой, где все через эвент луп и просто писать асинхронщину - vertx, например.
Обсуждают сегодня