Golang Gin框架

news/2024/4/29 14:13:27

1、这篇文章我们简要讨论一些Gin框架

主要是给大家一个基本概念

1、Gin主要是分为路由中间件部分。

Gin底层使用的是net/http的逻辑,net/http主要是说,当来一个网络请求时,go func开启另一个协程去处理后续(类似epoll)。

然后主协程持续accept连接。然后对于net/http他的路由处理通过切片绑定了所有的请求路径对应的handler方法

Gin修改了其中的路由方法,采用了前缀树的实现方案,不同请求方法对应一颗压缩前缀树,比如Get、Post等请求方式都对应不同的一颗压缩前缀树,相同请求方式的都在同一棵压缩前缀树

什么是前缀树,如图

在这里插入图片描述

2、Gin中间件

如果你学过Java的话,其实就是AOP,在函数程序前后,加入一些公共函数处理,他的处理逻辑就像一个环,对于函数程序处理前,是先入先处理,函数程序处理结束后,是先处理后面的。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.cpky.cn/p/11709.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈,一经查实,立即删除!

相关文章

大数据学习十三天(hadhoop基础2)

一: MapReduce概述(了解) MapReduce是hadoop三大组件之一,是分布式计算组件 Map阶段 : 将数据拆分到不同的服务器后执行Maptask任务,得到一个中间结果 Reduce阶段 : 将Maptask执行的结果进行汇总,按照Reducetask的计算 规则获得一个唯一的结果 我们在MapReduce计算框架的使用过…

微信小程序实现左滑删除

效果 实现思路 使用的是官方提供的movable-area 嵌套movable-view 1、movable-area:注意点,需要设置其高度,否则会出现列表内容重叠的现象。 2、由于movable-view需要向右移动,左滑的时候给删除控件展示的空间,故 mov…

2024免费Mac苹果解压压缩包软件BetterZip5

在2024年,对于Mac电脑用户来说,如果你想要无需解压就能快速查看压缩文档的内容,BetterZip是一个极佳的选择。这款软件不仅支持多种格式的压缩和解压,如zip、rar、7z、tar等,还具备丰富的功能和设置,包括预览…

备战蓝桥杯Day37 - 真题 - 特殊日期

一、题目描述 思路: 1、统计2000年到2000000年的日期,肯定是需要遍历 2、闰年的2月是29天,非闰年的2月是28天。我们需要判断这一年是否是闰年。 1、3、5、7、8、10、12月是31天,4、6、9、11月是30天。 3、年份yy是月份mm的倍数…

论文阅读AI工具链

文献检索 可以利用智谱清言来生成合适的文献检索式,并根据需要不断调整。 谷歌学术 在Google Scholar中进行检索时,您可以使用类似的逻辑来构建您的搜索式,但是语法会有所不同。Google Scholar的搜索框接受普通的文本搜索,但是…

理解 Golang 变量在内存分配中的规则

为什么有些变量在堆中分配、有些却在栈中分配? 我们先看来栈和堆的特点: 简单总结就是: 栈:函数局部变量,小数据 堆:大的局部变量,函数内部产生逃逸的变量,动态分配的数据&#x…