【Nginx源码剖析-数据结构】数据结构梳理

说明:

这里先抛出一些问题,后续在学习的过程中会尝试回答这些问题

  1. 为什么Nginx要自己实现这些数据结构?
    回答:
    主要是由于Nginx具有跨平台和使用C语言实现这两个特点,导致其需要自己实现数据结构。具体原因如下:
    1、跨平台的特性要求Nginx的所有代码都可以跨平台编译和运行,这导致Nginx不能依赖于某个第三方库的实现
    2、C语言的实现是与每个操作系统强相关的。由于Nginx是C语言实现的,其底层没有虚拟机或其他机制去做兼容,所以只能根据操作系统的不同做一些特殊的实现
  2. Nginx都有哪些数据结构?
    回答:
    Nginx提供了6种常用的数据结构
    1. 双向链表(queue)
    2. 动态数组(array)
    3. 单向链表(list)
    4. 红黑树(rbtree)
    5. 基数树(radix)
    6. 散列表(hash)
  3. 这些数据结构的优缺点是什么?
    后续补充
  4. 这些数据结构适用于什么样的场景?
    后续补充
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值