如下是C++后台研发技术路线以及知识点,这里有很多细节,还需要不断完善。
欢迎大家提交PR来一起完善这个知识库,成为contributor!
👉 如果你是编程零基础,或者想入门C++,推荐 卡码网C++基础课
(玩命更新ing...)
-
常用库函数实现
-
指针
- linux的内存管理机制,内存寻址方式,什么叫虚拟内存,内存调页算法,任务调度算法
- 锁:互斥锁,乐观锁,悲观锁
- 动态链接和静态链接的区别
- 常见的信号、系统如何将一个信号通知到进程
- linux系统的各类同步机制、linux系统的各类异步机制
- 如何实现守护进程
- 标准库函数和系统调用的区别
- 协程是什么,为什么需要协程
- 进程的状态转换有那些?
- 什么是进程?什么是线程?他们的区别是什么?
- 32位系统一个进程最多有多少堆内存
- 五种I/O 模式:阻塞I/O,非阻塞 I/O,I/O 多路复用,信号驱动 I/O,异步 I/O
- 用户态和内核态的区别
- linux文件系统:inode,inode存储了哪些东西,目录名,文件名存在哪里
- 分段和分页的区别有那些?
- 进程终止的方式有那些?
- 软中断和硬中断分别指的是什么
- 同步,异步,阻塞和非阻塞的概念
- 如果发现自己的Linux服务器负载过高,应该怎么排查原因呢?
- NGINX在Linux上是如何工作的?简单描述一下
- Linux上有个二进制程序一直在运行,我修改代码置换重新编译把原来的二进制程序覆盖了,会怎么样?
- 谈谈数据库中索引的理解,索引和主键区别
- 现在普通关系数据库用得数据结构是什么类型的数据结构
- 索引的优点和缺点
- 关系型数据库和非关系数据库的特点
- 乐观锁与悲观锁的区别
- 数据库范式:第一第二第三范式
- 数据库日志类型作用
- B TREE 和B+TREE的区别
- union和join
- Innodb和Myisam的区别
- mysql架构是什么样的?
- 一条SQL语句在数据库框架中的执行过程
- 数据库中常见的锁都有哪些?
- 优化索引的办法有那些
- mysql为啥会产生死锁呢?如何避免他?
- 在Mysql中,数据要写入磁盘,redolog也要写入磁盘,为什么要多此一举?
- MySQL的行级锁有那些种类?
- mysql索引失效有哪几种情况?
- 数据库事务隔离级别有那些?
- mysql数据库中,产生的redolog都会直接写入磁盘吗?
- 数据库的ACID特性
- MySQL的主从复制是如何实现的?
- mysql的索引都有那些?
- bitmap
- Map-Reduce原理
- BloomFilter原理
- Trie树原理
- LSM树原理
- 工作中常用的linux 命令
- 编译工具GCC
- 调试工具GDB
- 性能优化工具Perf
- 内存泄露检查工具Valgrind
- makefile编写
工欲善其事必先利其器
- 联机五子棋(c实现)
- fileHttpServer(go语言实现)
- Sqlgen(shell脚本实现的批量操作mysql)
- 单机存储引擎(C++实现的跳表)
- NosqlAttack (python实现)
大家好,我是程序员Carl,《代码随想录》作者,哈工大师兄,先后在腾讯和百度从事分布式技术研发。