Тепер доступна Ktor 3.0 — остання версія фреймворку на основі Kotlin для створення асинхронних клієнтських і серверних програм. Ktor 3.0 перемикається на бібліотеку kotlinx.io для обробки джерел даних. У випуску також підкреслено підтримку подій, надісланих сервером (SSE).
Технологія JetBrains Ktor 3.0, анонсована 10 жовтня, доступна на start.ktor.io. Найбільшою зміною у версії 3.0 є перехід на мультиплатформенну бібліотеку kotlinx.io. Ця бібліотека пропонує багатоплатформний API, який може обробляти джерела даних і надає можливості, включно з роботою із файлами, використанням стиснення тощо.
Бібліотека kotlinx.io також скорочує непотрібне копіювання байтів між ByteReadChannel, ByteWriteChannel і мережевими інтерфейсами. Це забезпечує ефективніші перетворення байтів і синтаксичний аналіз, таким чином звільняючи місце для майбутніх покращень продуктивності.
Крім того, SSE тепер підтримується як для сервера, так і для клієнта. За допомогою SSE сервери надсилають клієнтам через з’єднання HTTP, а SSE забезпечує односторонній канал зв’язку. Цей підхід корисний для сценаріїв, коли серверу потрібно надсилати оновлення на основі подій без необхідності повторного опитування клієнтом нової інформації.
Також у Ktor 3.0:
- WebAssembly тепер підтримується як ціль збірки клієнтом Ktor.
- З новим плагіном додано підтримку захисту від підробки міжсайтових запитів (CSRF).
- Нова функція staticZip дає змогу користувачам обслуговувати вміст ZIP-архіву як статичний вміст.
- Критичні зміни впливають на низькорівневі API вводу-виводу, включно з такими класами, як Input, Output і ByteReadChannel. Розробники, які безпосередньо використовують ці класи, бачитимуть попередження про застаріле.
Читайте також на ProIT: JavaScript, Python і Java залишаються лідерами в рейтингах мов програмування.
Підписуйтеся на ProIT у Telegram, щоб не пропустити жодної публікації!