240 发简信
IP属地:广东
  • mysql Innodb引擎中缓存池 Buffer Pool原理总结

    缓存 mysql Innodb引擎在处理客户端请求时,当访问某个页的数据的时候,即使我们请求的是某个页中的一条数据记录,也会把整个页从磁盘加载到内存中, 然后在内存中就可以对...

  • 120
    STL中sort实现原理

    函数声明: template< classRandomIt> voidsort(RandomItfirst,RandomItlast); template< class...

  • 120
    redis 中sort实现原理

    redis客户端发送sort 操作时调用函数为sortCommand,sortCommand函数对参数进行解析,之后调用pqsort函数,pqsort函数在pqsort.c文...

  • 120
    Mysql 索引 & 锁

    Mysql索引在开发工作中经常用到,在此总结一些关于mysql索引的一些学习笔记 1mysql索引的本质是什么? mysql索引的本质是分散存储的数据结构。索引达到的目的...

  • C++内存管理方式

    C++中内存主要分为5个存储区: 1.栈: 局部变量,函数参数等存储在该区,由编译器自动分配和释放;栈属于计算机系统的数据结构,进栈出栈有相应的计算机指令支持,而且分配专门的...

  • 对IO多路复用三种机制(select,poll,epoll)的理解

    1.select 1.1函数原型: int select(int maxfdp1, fd_set *readset,fd_set *writeset,fd_set *ex...

  • 120
    STL内存分配方式解析&二级配置器源码

    内存块: 每个内存块的大小均是8的倍数,二级配置器默认相同大小的块用了20个,以链表的形式存放。 空闲数组: 二级配置器维护了一个全局数组 _S_free_list,长度为1...

  • C++智能指针

    RAII:C++中一个对象出了其作用域就会被自动析构,只要在构造函数时候申请空间,析构函数时候释放空间,围绕着构造和析构进行操作。 深拷贝:每一个对象的指针都有指向的内存空间...

  • 布隆过滤器

    布隆过滤器是一种数据结构,比较巧妙的概率型一个数据结构 ,其特点是高效地插入和查询;用于查询某个东西是否存在,可以允许存在误差的场景上。 业务场景: 使用word时,检测...

  • 120
    一次MMO游戏服务器性能压测记录

    曾参加过一块MMO手游的开发,开发后期需要对服务器承载进行测试,采用模拟客户端编程,采用多个进程+线程的模式,按照cs端定义的协议对服务器进行测试。 机器人向服务器按照协议格...

  • 120
    Mysql事务&隔离级别

    数据库事务:ACID特性 原子性: 事务中所有操作要么全部提交成功,要么全部失败回滚。 undo实现原子性:开启一个事务修改一个字段时候,undo存放...

  • 120
    libevent & bufferevent

    对于一个网络模块来说,一个缓冲模块是必不可少的,缓冲模块主要用于缓冲网络接收的模块,和用户发送的模块。 libevent在常规事件回调的基础上提供了一个缓冲的IO抽象概念,这...

  • 120
    libevent & Reactor模式

    整个libevent本身就是一个Reactor模式;Reactor是一种事件驱动机制,应用程序提供相应的接口并且注册到Reactor中,如果相应的事件发生,Reactor将主...

  • mysql & 分库分表

    分库分表 单表中出现了百万甚至千万级别的数据,增删改查的开销也会越来越大,加上物理服务器资源有限,最终数据库承载的数据量和数据处理能力都将遇到瓶颈。 分库分表的设计,目的为了...

  • 120
    TCP协议学习笔记

    TCP是面向连接的,可靠的,基于字节流的传输层通信协议。 面向连接:一对一的连接,不像UDP协议可以一个主机同时向多个主机发送消息,也就是一对多是无法实现的 可靠的:无论网络...

  • 120
    二叉树与红黑树

    红黑树工程中使用: 1.利用红黑树顺序功能(最小节点,最大节点);2.利用红黑树快速查找的功能,key-value。 红黑树的应用场景: nginx中用来管理timer,ep...

  • 120
    epoll知识点总结

    epoll是linux IO多路复用的管理机制,现在是linux平台高性能网络io必要的组件。 理解内核epoll的运行原理,需要从四方面来理解: 1.epoll的数据结构。...

  • 120
    定时器实现 & 红黑树,跳表

    跳表:是为一个有序的链表建立多级索引的数据结构叫做跳表。redis中zset数据量大时底层数据结构使用跳表。 redis中定时器使用的是无序的双向链表。时间复杂度为O(N),...

  • 120
    nginx之handler模块笔记

    nginx模块 handler模块,filter过滤器模块,upstream模块; handler模块是客户端访问nginx,nginx接收到请求时就开始处理,接着返回 fi...

  • Redis的存储结构笔记

    hash:给定一个字符串或者其他任意的值X,通过hash函数得到一个散列值;hash表的意思就是建立一个数组, 问题:通过索引(hash值)去读取hash表,hash表会非常...