chi

轻量级可组合的 router
授权协议 MIT
开发语言 Google Go
所属分类 Web应用开发、 REST/RESTful项目
软件类型 开源软件
地区 不详
投 递 者 茹照
操作系统 跨平台
开源组织
适用人群 未知
 软件概览

chi 是一个轻量级可组合的 router,用于构建 Go HTTP 服务,支持 Go 1.7+。它特别擅长帮助编写大型 REST API 服务,这些服务随着项目的增长和变化而保持可维护性。chi 基于 Go 1.7 中引入的新 context 包,用于处理 handler 链中的信令、取消和请求范围值。

chi 的设计的关键考虑因素是:项目结构、可维护性、标准 http 处理程序(仅限 stdlib)、开发人员生产力以及将大型系统解构为许多小部件。

特性:

  • 轻量 - 核心代码小于 1000 行

  • - benchmarks

  • 完全兼容 net/http

  • 模块化/可组合 API 设计

  • Context 控制 - 基于 Go 1.7 中引入的新 context 包,用于处理 handler 链中的信令、取消和请求范围值

  • 健壮性 - 生产应用于 Pressly、CloudFlare、Heroku、99Designs 等公司(see discussion)

  • 文档生成 - docgen 自动生成从源到 JSON 或 Markdown 的路由文档

  • 无外部依赖

 相关资料
  • 问题内容: JPanel和JFrame有什么区别,以及与轻量级,重量级的关系? 问题答案: JPanel是允许将多个UI组件放在一起的容器。JFrame是使用Swing编写的窗口。 所有的Swing组件都是所谓的“轻型”组件,因为它们是用Java编写的。例如,如果您运行Swing应用程序并尝试使用UI分析工具(例如Windows中的WinSpy)对其进行分析,则只会看到一个元素:窗口(JFrame

  • 本文向大家介绍SpringBoot2 整合Ehcache组件,轻量级缓存管理的原理解析,包括了SpringBoot2 整合Ehcache组件,轻量级缓存管理的原理解析的使用技巧和注意事项,需要的朋友参考一下 本文源码:GitHub·点这里 || GitEE·点这里 一、Ehcache缓存简介 1、基础简介 EhCache是一个纯Java的进程内缓存框架,具有快速、上手简单等特点,是Hibernat

  • 主要内容:使用普通函数创建 goroutine,使用匿名函数创建goroutine在编写 Socket 网络程序时,需要提前准备一个线程池为每一个 Socket 的收发包分配一个线程。开发人员需要在线程数量和 CPU 数量间建立一个对应关系,以保证每个任务能及时地被分配到 CPU 上进行处理,同时避免多个任务频繁地在线程间切换执行而损失效率。 虽然,线程池为逻辑编写者提供了线程分配的抽象机制。但是,如果面对随时随地可能发生的并发和线程处理需求,线程池就不是非常直观和方便了。能否

  • Jenkins Pipeline插件有一个称为“轻量级签出”的功能,其中主服务器仅从repo中提取Jenkinsfile,而不是整个repo。配置屏幕中有一个相应的复选框。我想在多分支管道中进行轻量级签出,但我在多分支配置屏幕中没有看到复选框。有什么想法如何实现这一点吗?我注意到一些关闭的问题表明此功能可用,但我无法找到任何有关如何实现它的细节。 相关资料: https://issues.jenk

  • 问题内容: 在解决了另一个愚蠢的日食问题之后,我想尝试获得尽可能轻巧,最小的Eclipse安装。 为了清楚起见,我使用eclipse做两件事: 编辑Java 调试Java 我通过Emacs / Zsh完成的所有其他工作(编辑JSP / XML / JS,文件管理,SVN签入等)。我还没有发现在Eclipse中进行工作以使这些任务高效甚至可靠的任何方面,因此我不希望与之相关的插件。 在eclipse

  • 问题内容: 我有一个将要推送的特定格式的XML文档。该文档将始终是同一类型,因此非常严格。 我需要对此进行解析,以便将其转换为JSON(嗯,这是一个混蛋版本,以便其他人可以将其与DOJO一起使用)。 我的问题是,我应该使用非常快速的轻量级(不需要SAX等)XML解析器(有什么想法吗?)还是编写我自己的,基本上可以转换为StringBuffer并在数组中旋转?基本上,我假设所有HTML解析器都将旋转