解析gin框架部分收获

说明:

看qimi-gin框架源码解析部分收获

一、 Gin框架路由详解

1.2 Redix树介绍

基数树,trie树

使用的是定制版本的httprouter,其路由的原理是大量使用公共前缀的树结构

基数树(Radix Tree)又称为PAT位树(Patricia Trie or crit bit tree),是一种更节省空间的前缀树(Trie Tree)

前缀树-Trie Tree——Redix Tree(基数树)
解析gin框架部分收获_第1张图片

路由器为每种请求方法管理一棵单独的树,get,post等各有一个树

为了获得更好的可伸缩性,每个树级别上的子节点都按Priority(优先级)排序,其中优先级(最左列)就是在子节点(子节点、子子节点等等)中注册的句柄的数量。这样做有两个好处:

  1. 首先优先匹配被大多数路由路径包含的节点。这样可以让尽可能多的路由快速被定位
  2. 类似于成本补偿。最长的路径可以被优先匹配,补偿体现在最长的路径需要花费更长的时间来定位,如果最长路径的节点能被优先匹配(即每次拿子节点都命中),那么路由匹配所花的时间不一定比短路径的路由长。下面展示了节点(每个-可以看做一个节点)匹配的路径:从左到右,从上到下。
1.3 请求处理

通过小绿标,学会下边,顺藤摸瓜

结构体——接口——方法

1.4 路由方法树
1.5路由注册与路由匹配

二 、Gin框架中间件详解

1.6中间件

解析gin框架部分收获_第2张图片

你可能感兴趣的:(go,gin)