深入理解gin framework(一)

栏目: Go · 发布时间: 6年前

gin框架

  • 众多的golang web框架中,gin是一个比较轻量级的框架,不像beego那样,还有orm模块。接口设计,运行速度方面,gin都算是比较让人满意的。

web框架的顶层设计

  • 每个语言都有自己框架的特点,golang的话,因为有官方的标准库,标准库的质量是比较可靠的,所以绝大多数框架都是基于标准库,面向实际应用场景,将底层的细节进一步地抽象,达到减少开发时间,提升代码质量的目的。
  • 所以,在顶层分析框架设计的时候,需要明确现在web框架主要的功能,以及golang标准包提供了什么工具。
  • 需求:RESTful接口。目前主流的后端设计都是围绕接口展开的,而目前主流的接口设计范式就是RESTful。也就是说,框架的设计目标应该满足以下几点:

    1. 便捷的路由分组
    2. 快速调用http方法 get,post,delete,put,patch,head,options等进行资源管理
    3. 良好的并发性能
    4. 解析URL参数或request body便捷
    5. 需要对JSON有良好的支持
  • golang的http标准包有哪些组件,组件之间的关联又是如何?http标准包是开发web框架必不可少的原材料:

    1. 在http包的源码中,有几个重要的部件:其中struct 有 Server,Conn。interface有Handler。分别对应服务器对象,connection对象,以及路由器。
    2. http标准包的编程逻辑:需要实现Handler接口的ServeHTTP方法,相当于新建一个路由规则,当server启动,建立http连接之后,就可以按照定义的路由规则进行处理了。

gin是如何整合http包的

  1. 定义一个engine,实现ServeHTTP方法,这时,就可以将engine 作为Handler传给http包的ListenAndServe函数。从http标准包的角度来看,gin就是实现了一个功能强大的Handler。
  2. (未完待续)

以上所述就是小编给大家介绍的《深入理解gin framework(一)》,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对 码农网 的支持!

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

疯狂的独角兽

疯狂的独角兽

丹·莱昂斯 / 王天任 / 海南出版社 / 2017-10 / 42

★商业与文学的有机结合,真实与虚幻间嬉笑怒骂,幽默风趣、引人入胜、发人深省的商业小说。 ★《纽约时报》《华尔街日报》《旧金山纪事报》Amazon畅销书,《财富》《纽约邮报》《新闻周刊》《华盛顿邮报》、畅销书《硅谷钢铁侠》作者阿什利·万斯、畅销书《一网打尽》作者布拉德·斯通联袂推荐。 ★作者丹·莱昂斯集小说家、记者、编剧为一身——HBO经典热门剧、豆瓣高分美剧《硅谷》作者;畅销书《乔布斯......一起来看看 《疯狂的独角兽》 这本书的介绍吧!

JSON 在线解析
JSON 在线解析

在线 JSON 格式化工具

XML、JSON 在线转换
XML、JSON 在线转换

在线XML、JSON转换工具

正则表达式在线测试
正则表达式在线测试

正则表达式在线测试