所在位置:首页编程开发源码相关 → fasthttp(快速HTTP包) v1.28.0官方版

fasthttp(快速HTTP包)

 v1.28.0官方版
  • 软件大小:262KB
  • 更新日期:2021/7/12
  • 软件语言:英文
  • 软件类别:源码相关
  • 软件授权:免费软件
  • 软件官网:
  • 适用平台:WinAll

软件评分

PC6本地下载文件大小:262KB 高速下载需下载高速下载器,提速50%

    软件介绍精品推荐相关视频人气软件相关文章评论0下载地址

    为您推荐:源码相关

    fasthttp是一个用于Go的快速HTTP包,针对高性能进行了调整,在热路径中实现零内存分配,比net/http快10倍以上,目前,fasthttp被VertaMedia成功地用于生产中,为每台物理服务器上超过150万个并发的保持连接提供200Krps的服务。

    相关软件软件大小版本说明下载地址

    fasthttp是一个用于Go的快速HTTP包,针对高性能进行了调整,在热路径中实现零内存分配,比net/http快10倍以上,目前,fasthttp被VertaMedia成功地用于生产中,为每台物理服务器上超过150万个并发的保持连接提供200K rps的服务。

    fasthttp(快速HTTP包)

    常见问题

      为什么要创建另一个http包而不是优化net/http?

      因为 net/http API 限制了许多优化机会。比如说。

      net/http 请求对象的寿命不受请求处理器执行时间的限制。所以服务器必须为每个请求创建一个新的请求对象,而不是像 fasthttp 那样重复使用现有的对象。

      net/http 头信息被存储在 map[string][]string 中。所以服务器必须解析所有的头信息,将它们从[]字节转换成字符串,并在调用用户提供的请求处理程序之前将它们放入map中。这一切都需要不必要的内存分配,而fasthttp则可以避免。

      net/http客户端API需要为每个请求创建一个新的响应对象。

      为什么fasthttp API与net/http不兼容?

      因为net/http API限制了许多优化机会。更多细节见上面的答案。同时,某些net/http API的部分也是次优的使用方式。

      比较net/http的连接劫持和fasthttp的连接劫持。

      比较net/http的Request.Body读取和fasthttp的请求体读取。

      为什么fasthttp不支持HTTP/2.0和WebSockets?

      HTTP/2.0的支持正在进行中。WebSockets已经完成了。第三方也可以使用RequestCtx.Hijack来实现这些好东西。

      与fasthttp相比,net/http是否有已知的优势?

      是的。

      net/http 从 go1.6 开始支持 HTTP/2.0。

      net/http的API是稳定的,而fasthttp的API是不断发展的。

      net/http 可以处理更多的 HTTP 角落情况。

      net/http 应该包含更少的 bug,因为它被更多的人使用和测试。

      net/http可以在1.5以上的Go上工作。

      为什么 fasthttp API 倾向于返回 []byte 而不是字符串?

      因为[]字节到字符串的转换不是免费的 - 它需要内存分配和复制。如果你喜欢用字符串而不是字节片来工作,可以随意将返回的[]byte结果包装成string()。但请注意,这有非零的开销。

      fasthttp支持哪些GO版本?

      Go1.5以上。旧的版本将不被支持,因为它们的标准包缺少有用的功能。

      注意:Go 1.9.7是最老的测试版本。我们建议你尽快更新。从1.11.3开始,我们将放弃对1.9.x的支持。

      请提供真实的基准数据和服务器信息

      请看这个问题。

      是否有计划向fasthttp添加请求路由?

      没有计划将请求路由添加到fasthttp中。使用第三方路由器和支持fasthttp的web框架。

      fasthttp-routing

      路由器

      框架

      lu

      阿特雷戈

      光纤

      齿轮箱

      更多信息请参见此问题。

      我在fasthttp中检测到了数据竞赛!

      酷! 归档一个错误。但是在这样做之前,请在你的代码中检查以下内容。

      确保从RequestHandler返回后没有对RequestCtx或其成员的引用。

      确保在从RequestHandler返回之前调用TimeoutError,如果有对RequestCtx或其成员的引用,这可能会被其他goroutine访问。

      我在这里没有找到我的问题的答案

      试着探索一下这些问题。

    更新日志

      v1.28.0

      620f0c8 增加中间件设置自定义远程地址的选项(#1009)(Lauris BH)。

      894272e 修复golangci-lint动作(#1010)(Lauris BH)。

    精品推荐

    下载地址

    • fasthttp(快速HTTP包) v1.28.0官方版

      本地高速下载

    • PC版

      fasthttp(快速HTTP包)查看详情

      fasthttp(快速HTTP包) v1.28.0官方版

    其他版本下载

    相关视频

      没有数据

    厂商其他下载

    电脑版安卓版IOS版Mac版

    查看所有评论>>网友评论0

    发表评论

    您的评论需要经过审核才能显示

    精彩评论

    最新评论

    热门关键词