水文---服务端学习路线(听别人说的,记录以激励自己)
一次学习时,视频的最后讲课老师分享了他的学习路线。觉得很有参考意义,特此记录下来,以激励自己。
工作五年以下,分以下几个水平,其实我觉得可能划分并不明显。
1. 数据结构和算法、设计模式
- 最小堆、红黑树、时间轮、b/b+树, 布隆过滤器(redis击穿)
- 排序(快排、希尔、归并,堆排序)及时间复杂度和是否稳定
- 跳表 redis 中zset的实现手法,通过生成多级的有序列表,达到接近二分查找的速度。空间换时间。
- 责任链、过滤器、观察者、代理、单例,工厂等设计模式
2. 中间组件编程
- 数据库 redis(请求回应模式,hirides - c driver) mysql(mysqlclient) nginx zeromq(bind, connect, send, recv).
- nginx 配置
- zeromq
- zk (zoomkeeper) (c driver)
3. 网络IO
- select poll epoll (边缘触发,水平触发)
- 同步,异步
- 阻塞, 非阻塞
- libevent, libuv
- reactor(epoll_wait) proactor(信号 + 回调)
4. linux 系统
- iostat uptime
- 网络 netstat tcpdump iperf
- dd umount
- tail mutitail
- htop top
- vi sed grep awk
- shell 脚本
5. 开源框架
- 配置 xml json
- 脚本 lua
- 协议 protobuffer, thrift, messagepack, flatbuffer
- 数据压缩 zlib snappy
- xxtea, openssl , tls
- log4 cpp
- nginx, lighttpd
- 协程 —> libco --> hock mysqlclient 同步阻塞操作改成同步非阻塞操作
6. 代码工程化
- makefile, cmake, autoconf
- git, svn
7. 性能测试
- gtest, luatest, boost.test
- wrk , webbench
对于上述这些,会用这些应用的话,老师说这是初级的水平(啊这,学废了)。下面记一下五年以上的(也不知道自己能不能干到那个时候)
0
- 明确方向
- 自律
- 2-3技术基友
1. 从源码学习
- nginx
- redis hash 时间轮 string hash
- zeromq
- skynet
2. 造轮子能力
- 中间件,内存池,线程池等
- 高并发io的实现 epoll reactor 这些
- 网络协议栈的实现
- nginx模块
- 高并发锁
3. 集群能力
- 数据库
- nginx
- zk
4. linux内核
5. 性能优化
- mysql
- linux
6. 运维部署 docker
7. 一线架构分析 (同样的功能, 一线大厂怎么实现的)
水文---服务端学习路线(听别人说的,记录以激励自己)相关推荐
- linux epoll机制对TCP 客户端和服务端的监听C代码通用框架实现
1 TCP简介 tcp是一种基于流的应用层协议,其"可靠的数据传输"实现的原理就是,"拥塞控制"的滑动窗口机制,该机制包含的算法主要有"慢启动&quo ...
- 基于Redisson实现的延时队列RedissonDelayedQueue实现websocket服务端心跳监听
简介 基于Redis的Redisson分布式延迟队列(Delayed Queue)结构的 RDelayedQueue. Java对象在实现了RQueue接口的基础上提供了向队列按要求延迟添加项目的功能 ...
- socket服务端同时监听多个端口号
package test0531;import java.io.InputStream; import java.net.ServerSocket; import java.net.Socket; i ...
- 服务端学习笔记(1)
服务端问题集合 文章目录 服务端问题集合 @[toc] fallback 泛域名 面向对象 面向对象与面向过程的区别 封装 继承 多态 重写 重载 OAuth, OpenID, JWT, Sessio ...
- C#GRPC 服务端与客户端通信,故障排除记录
文章目录 前言 一.问题一解决方法 二.问题二解决方法 前言 第一次建立GRPC服务端,客服端一直通不到服务端: 问题1: One or more errors occurred. (Status(S ...
- 服务端和客户端测试连通ip设置记录
若服务器和客户端在同一台电脑,即为本机测试,则测试都用127.0.0.1 若是服务器和客户端在两台电脑,则需要在同一局域网内,并且ip地址填写本机ip. 若是发布在云端测试,则服务端地址为0.0.0. ...
- DSAPI多功能组件编程应用-HTTP监听服务端与客户端
本文中,演示了使用DSAPI.网络相关.HTTP监听,快速建立服务端和客户端. HTTP监听服务端的作用,是监听指定计算机端口,以实现与IIS相同的解析服务,提供客户端的网页请求,当然,这不仅仅是应用 ...
- QT 之 TCP 服务端 连接 多客户端 处理学习
自学QT中, 在此记录一下TCP多链接的方法. 跟着 "Qt Creator快速入门" 学了一段时间了,刚接触网络编程, 例子中仅仅简单的 用 客户端 连接了一下 服务端, 然后 ...
- androidpn的学习研究(一)androidpn-server服务端相关配置的常识
androidpn的一些基本常识: ANDROIDPN_HOME=C:\android-push\androidpn-server-0.5.0 启动androidpn服务端: %ANDROID_HOM ...
最新文章
- 文本框可编辑查看页面
- vSphere 6.5 新功能 (1) - 全功能 vCenter S
- python pil_使用Python的PIL模块来进行图片对比
- php mysql什么意思_php MySQLi是什么意思?
- OpenCV使用人脸界标检测进行人脸交换
- 装饰器中的@functools.wraps的作用
- [剑指offer][JAVA][第62题][约瑟夫环][LinkedList vs ArrayList]
- TCP/IP校验和(浅析+实例)
- java类里的包路径报错_[ERROR] 致命错误: 在类路径或引导类路径中找不到程序包 java.lang...
- 如何在windows下把硬盘格式化成EXT3格式?
- Android 屏幕万能自适应(自定义适配)
- 【面试】AI算法工程师---面试题!(第二部分:AI部分)
- ⑪(面试篇 3/3)、《史上最全iOS八股文面试题》2022年,金三银四我为你准备了,iOS《1000条》笔试题以及面试题(包含答案)。带面试你过关斩将,(赶紧过来背iOS八股文)
- STM32 解析 JSON 之 cJSON
- 复制链接到剪切板php,剪切复制粘贴
- 趣头条爬虫(以财经频道为例)
- 软件附带有广告如何消除
- 在Proteus 中51单片机常用器件名称和图片
- Win7笔记本电脑启用虚拟WIFI共享上网
- 【python】百度地图测距