后台开发应该知道的知识点

张锋 6年前 访问:711 评论:0 关注:0

1.计算机网络:

  1. OSI七层协议、TCP/IP四层协议

  2. 各层对应的网络设备(路由器、交换机、网关、网桥、集线器等等),各层对应的协议

  3. 数据链路层的CSMA/CD协议,笔试可能会用到

  4. IP地址分类,子网划分(笔试常用)

  5. TCP和UDP的区别

  6. TCP三次握手和四次挥手,为什么三次握手,为什么四次挥手

  7. TCP精髓问题:停止等待协议、连续ARQ协议、滑动窗口、流量控制、拥塞控制(慢开始、拥塞避免、快重传、快恢复)

  8. GET和POST区别

  9. HTTP状态码,HTTP1.0和HTTP1.1区别

  10. HTTP缓存机制(cache-control、Expires之类的一系列请求与相应报头字段)

  11. session和cookie的区别,禁用cookie后怎么办

  12. DNS解析的过程

  13. 常用协议的端口

2.关系型数据库:Mysql

  1. 数据库三范式及判断、E-R图

  2. innodb和myisam存储引擎的区别

  3. 索引分类(主键、唯一索引、全文索引、覆盖索引等等),最左前缀原则,哪些条件无法使用索引

  4. B树、B+树区别,索引为何使用B+树

  5. 聚集索引与非聚集索引(使用非聚集索引的查询过程)

  6. 事务的ACID(原子性、一致性、隔离性、持久性)

  7. 事务隔离级别和各自存在的问题(脏读、不可重复读、幻读)和解决方式(间隙锁及MVCC)

  8. 乐观锁和悲观锁、行锁与表锁、共享锁与排他锁(inndob如何手动加共享锁与排他锁)

  9. MVCC(增加两个版本号)及delete、update、select时的具体控制

  10. 死锁判定原理和具体场景

  11. 查询缓慢和解决方式(explain、慢查询日志、show profile等)

  12. drop、truncate、delete区别

13.查询语句不同元素(where、jion、limit、group by、having等等)执行先后顺序

  1. mysql优化,读写分离、主从复制

  2. 数据库崩溃时事务的恢复机制(REDO日志和UNDO日志)

3.非关系型数据库:Redis

  1. Redis如何做高可用、集群

2.Redis和Memcached的优劣势比较

3.Redis的数据存储类型有哪些

4.Redis的应用场景有哪些

  1. Redis的持久化方式,以及项目中用的哪种

4.非关系型数据库:数据结构与算法:

  1. 数组、链表(单向、双向、双端)、栈和队列、二叉树、红黑树、哈希表、堆(最大和最小)

  2. 个人经验:栈和队列、哈希表、链表、二叉树的题较多,图的较少

  3. 查找:二分查找及其变形

  4. 二叉树:前序、中序、后序遍历,按规定方式打印,两个节点之间操作(最近公共祖先、距离)等问题。

  5. 最大堆和最小堆:大数量级数据找最大几个等问题、堆如何调整等问题。

  6. 栈和队列:经常作为算法题要用到的数据结构

  7. 八大排序:3个简单的:冒泡、选择、插入及其优化,5个高级的:快速排序、归并排序、堆排序、希尔排序、桶排序(快排、归并、堆很重要)

8 时间复杂度及空间复杂度分析

推荐:数据结构C语言版、java数据结构和算法(Robert Lafore)、剑指offer及leetcode刷题、大神可以看一下算法导论

5.Linux:

  1. 常用命令:用户控制、权限控制、进程控制、系统状态查询之类的

  2. /etc/hosts文件什么做用?

3 Linux目录结构(尤其是/proc非常重要)

  1. linux文件系统结构和启动流程)

  2. PHP服务端问题排查(OOM,CPU高,Load高,类冲突)

  3. 如何查看Java应用的线程信息

7.Thread dump文件如何分析(Runnable,锁,代码栈,操作系统线程ID关联)

6.操作系统:

  1. 一个二进制文件运行出结果,操作系统做了什么(这是一个很全面的题)

  2. 死锁的条件及银行家算法、资源分配图之类的

  3. 进程间通信方式

  4. linux的五种IO方式(阻塞与非阻塞、同步与异步的理解)

  5. linux的select、poll、epoll的区别

  6. 进程与线程区别、内核级线程与用户级线程

  7. 页面置换算法,尤其是lru

  8. 进程调度算法

  9. linux中断响应机制

  10. 虚拟内存机制

7.基本语言( PHP):

  1. PHP面向对象的特点和java的不同

  2. PHP类内的三个指针的不同(this、类名、self)

  3. PHP的自动加载机制

  4. PHP的魔术方法

  5. PHP的命名空间

  6. PHP的垃圾回收机制和存在的问题(环形引用,内存泄漏)

  7. PHP如何防止SQL注入(Mysqli预编译等)

  8. PHP和apache服务器结合的方式

  9. fastcgi和php-fpm的端口及工作方式

10 . nginx服务器相比apache服务器的优点和原理(内存映射mmap、event-driven和aio等)

评论

还没有人评论 ~

❤❤❤❤❤❤
心情
此图名叫《暗淡蓝点》
1990年2月14日,由旅行者1号拍摄,
蓝色的点就是地球
或许你看不清,因为地球在宇宙中太小了。