这个项目能做什么
Ktor 是一个完全用 Kotlin 编写的异步框架,用于创建微服务、Web 应用等。它强调极简与灵活,允许开发者构建互联应用,而不强制技术选型。
**主要特性:**
- **非固执己见:** Ktor 不规定日志、模板、消息、持久化、序列化或依赖注入的选择。功能通过统一的拦截机制安装,支持任意管道。
- **异步:** 基于 Kotlin 协程,提供易用的异步编程模型。所有宿主实现均使用异步 I/O,避免线程阻塞。
- **可测试:** 应用可在特殊测试环境中运行,模拟 Web 服务器而无需网络,简化测试。也支持真实嵌入式服务器的集成测试。
- **托管灵活性:** 支持 Netty 或 Jetty 的独立托管,以及 Servlet 3.0+ API(如 Tomcat)的 Servlet 容器。可通过统一托管 API 添加更多宿主。
- **Kotlin DSL:** API 主要是带 lambda 的函数调用,使代码声明式且可组合。
**快速开始:**
在 Gradle 或 Maven 项目中添加依赖 `io.ktor:ktor-server-netty`,然后创建带路由和功能的 `Application`。Ktor Gradle 插件简化配置、运行和部署。基本示例在 8080 端口启动嵌入式服务器,响应“Hello, world!”。
**文档与支持:**
访问 [ktor.io](https://ktor.io) 获取快速入门和详细指南。问题和功能请求在 JetBrains YouTrack 上跟踪,社区支持在 StackOverflow 和 Kotlin Slack 的 Ktor 频道。安全漏洞应通过 JetBrains 的负责任披露流程报告。
**项目状态:**
Ktor 是 JetBrains 的官方产品,主要由 JetBrains 开发,并有社区贡献。它受已弃用的 Kotlin 框架 Wasabi 和 Kara 启发。项目采用 Apache License 2.0 许可。
评论
0 评分人数达到10人后显示
登录后参与讨论。