polipo代理服务器采用的是事件循环机制。
提供缓存功能,不支持透明代理。
最近的一个产品需要缓存用以减少流量的作用,于是我们就采用了此款缓存服务器,实现了其透明代理的功能。
polipo, 主题架构采用poll监控fd, 针对超时,客户端连接,服务器端的idle,以及缓存的数据分成不同模块,注册了几个回调函数。
印象比较深的是polipo中的内存管理,CHUNK_SIZE根据系统不同,分配不同大小也就罢了。如果分配一个不是一样大小的还会导致double free的错误。够坑人的。
比较难理解的是注册的回调函数,太多的子函数不好跟踪。得对程序的架构有个整体的了解,不然,你会陷进去的。
版权声明:本文为博主原创文章,未经博主允许不得转载。
时间: 2024-12-12 16:15:45