Немного почитал про асинхронные сокеты и про фреймворк Netty, но у меня возник вопрос о том как устроен механизм обработки многочисленных запросов к Netty. Изучив немного код Netty, я что-то понял, но боюсь что о многих аспектах работы Netty у меня может возникнуть неправильное представление. Я сейчас попытаюсь описать механизм обработки запросов и если в чем-то буду неправ, прошу поправить, так как хочу окончательно разобраться в его работе.
1) В Netty есть селекторы, которые путем итерации по пулу запросов(без какой-либо стратегии выбора) выбирают очередной запрос для обработки, запросы как я понял обрабатываются строго в том порядке в котором они были получены сервером
2)Если Потоков обработки больше одного и каждый задействует селектор, то может быть так что на один запрос будут претендовать несколько потоков обработки, в таком случае как они синхронизированы между собой?
3) Одно соединение обрабатывается только одним конкретным потоком обработки или это соединение может обрабатываться несколькими потоками, допустим клиент подключился к Netty серверу и посылает запросы и все эти запросы обрабатываются только одним потоком по очереди или же разные запросы от одного клиента могут обрабатываться разными потоками обработки?
Плюс дополнительные потоки могут использоваться для блокирующихся хэндлеров, которым назначается отдельная EventExecutorGroup при подключении к конвейеру.
Сборка персонального компьютера от Artline: умный выбор для современных пользователей