![](https://img-blog.csdnimg.cn/20201014180756913.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
服务器开发
RaKiRaKiRa
Shoot low, Aim high!
展开
-
十七道海量数据处理面试题与Bit-map详解
十七道海量数据处理面试题与Bit-map详解 第一部分、十五道海量数据处理面试题1. 给定a、b两个文件,各存放50亿个url,每个url各占64字节,内存限制是4G,让你找出a、b文件共同的url?  ...转载 2019-07-09 21:12:22 · 160 阅读 · 0 评论 -
Reactor --《面向模式的软件架构》
作用Reactor是一种事件处理模式,事件驱动应用程序使用Reactor架构来同步地等待一个或多个指示事件的发生,然后分离并分派一个或多个服务请求给事件处理程序中合适的钩子(回调)方法。通过这种方式将事件分离分派机制与服务程序中与指示相关的具体处理机制分开。结构Reactor由5个部分组成。句柄:指用于识别网络连接或文件打开的事件源,由操作系统提供,在linux中一般指文件描述符。同...原创 2019-09-17 19:10:10 · 408 阅读 · 0 评论 -
阻塞connect与accept返回时机与syn攻击
![在这里插入图片描述](https://img-blog.csdnimg.cn/20190722132458582.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L1JhS2lSYUtpUmE=,size_16,color_FFFFFF,t...原创 2019-07-22 13:25:10 · 311 阅读 · 0 评论 -
服务器开发学习 -- 异步双缓冲日志系统
源码链接:https://github.com/RaKiRaKiRa/Cyclone通过 git clone https://github.com/RaKiRaKiRa/Cyclone.git可直接下载,有详细的注释异步双缓冲日志系统 ,由AppendFile( base/FileUtil.h, base/FileUtil.cc ), LogFile ( base/LogFile.h, b...原创 2019-07-05 20:46:28 · 941 阅读 · 0 评论 -
Linux errno详解
1. 错误码 / errnoLinux中系统调用的错误都存储于 errno中,errno由操作系统维护,存储就近发生的错误,即下一次的错误码会覆盖掉上一次的错误。PS: 只有当系统调用或者调用lib函数时出错,才会置位errno!查看系统中所有的errno所代表的含义,可以采用如下的代码:/* Function: obtain the errno string* char *stre...转载 2019-07-14 21:49:20 · 459 阅读 · 0 评论 -
C++ 简易线程池实现
//threadpool.h#ifndef THREADPOOL_H#define THREADPOOL_H#include <pthread.h>#include <deque>#include <vector>class ThreadPool{ typedef void (*Task)();public: ThreadPool(int...原创 2019-07-10 14:17:40 · 166 阅读 · 0 评论 -
malloc的底层实现(ptmalloc)
前言本文主要介绍了ptmalloc对于内存分配的管理。结合网上的一些文章和个人的理解,对ptmalloc的实现原理做一些总结。内存布局介绍ptmalloc之前,我们先了解一下内存布局,以x86的32位系统为例:从上图可以看到,栈至顶向下扩展,堆至底向上扩展, mmap 映射区域至顶向下扩展。 mmap 映射区域和堆相对扩展,直至耗尽虚拟地址空间中的剩余区域,这种结构便于 C 运行时库使用...原创 2019-09-26 23:11:11 · 765 阅读 · 1 评论