1 В избранное 0 Ответвления 0

OSCHINA-MIRROR/kokjuis-getty

Присоединиться к Gitlife
Откройте для себя и примите участие в публичных проектах с открытым исходным кодом с участием более 10 миллионов разработчиков. Приватные репозитории также полностью бесплатны :)
Присоединиться бесплатно
Клонировать/Скачать
Внести вклад в разработку кода
Синхронизировать код
Отмена
Подсказка: Поскольку Git не поддерживает пустые директории, создание директории приведёт к созданию пустого файла .keep.
Loading...
README.md

Getty

Высокопроизводительный сетевой фреймворк, полностью основанный на Java NIO.

Краткое введение

  1. Getty — это высокопроизводительный сетевой фреймворк, основанный исключительно на инкапсуляции Java NIO.

  2. Getty можно использовать в проекте или для того, чтобы лучше изучить Java NIO.

  3. Getty полностью открыт и основан на лицензии Apache License 2.0 с открытым исходным кодом.

  4. Цель Getty — снизить затраты на изучение Java Socket NIO и повысить производительность.

Происхождение названия Getty

Автор назвал проект Getty, потому что раньше он часто использовал Netty и уважает его, а также потому, что Getty заимствует идеи дизайна Netty. Кроме того, фамилия автора начинается с буквы «G», поэтому он выбрал название Getty.

Причины создания этого фреймворка

  1. Автор — программист, который любит писать код, особенно сетевой.

  2. JDK предоставляет мощную библиотеку классов NIO и AIO, которая соответствует событийно-ориентированному вводу-выводу сетевого программирования UNIX. Это упрощает реализацию сетевого коммуникационного фреймворка.

  3. Автору нравится Netty из-за его производительности и идей программирования (JBOSS предоставляет открытый исходный код Java Network Framework, обеспечивающий стабильную и мощную производительность).

  4. У автора есть две причины создать свой собственный фреймворк вместо использования Netty: во-первых, автору нравится создавать свои собственные решения, во-вторых, Netty развивался много лет, его экосистема стала довольно большой, его код стал раздутым, и его глубокая философия дизайна сложна для понимания обычными людьми. Поэтому автор решил создать свой фреймворк.

Особенности Getty

  1. Полностью основан на Java NIO, включая NIO1 и NIO2 (AIO), имеет чёткую структуру кода и очень прост в использовании.

  2. Заимствует некоторые отличные дизайнерские идеи из Netty и других фреймворков, такие как цепочка ответственности, пул памяти, нулевое копирование и другие отличные шаблоны проектирования.

  3. Для большинства сценариев разработки Getty предоставляет плагины (декодер/кодер строк, декодер/кодер Protobuf, декодер/кодер WebSocket, декодер/кодер MQTT, обработчик тайм-аута сердцебиения, IP-фильтр и т. д.).

  4. Getty может использоваться непосредственно в среде Android (совместимой с Android 4.4 или более поздней версией).

  5. Getty поддерживает TCP и UDP и использует их почти одинаково, что значительно повышает удобство использования.

  6. Встроенный процессор Getty поддерживает дизайн горячей замены во время использования, и каждый процессор можно гибко комбинировать.

  7. Фреймворк обладает отличной масштабируемостью, масштабируемость процессора очень проста, что значительно снижает стоимость разработки расширения.

  8. Высокая эффективность и стабильная производительность, отправка миллионов сообщений одновременно занимает меньше времени, чем Netty при тех же условиях.

  9. Использование аналогично Netty, и если у вас есть опыт работы с Netty, использование Getty практически не требует дополнительного обучения.

Простое использование

Maven

Добавьте зависимость в раздел dependencies файла pom.xml проекта:

        <dependency>
            <groupId>com.gettyio</groupId>

Комментарии ( 0 )

Вы можете оставить комментарий после Вход в систему

Введение

Полностью основанный на Java, высокопроизводительный сетевой фреймворк, похожий на Netty. Развернуть Свернуть
Apache-2.0
Отмена

Обновления

Пока нет обновлений

Участники

все

Недавние действия

Загрузить больше
Больше нет результатов для загрузки
1
https://api.gitlife.ru/oschina-mirror/kokjuis-getty.git
git@api.gitlife.ru:oschina-mirror/kokjuis-getty.git
oschina-mirror
kokjuis-getty
kokjuis-getty
master