摘要: 我们继续我们的HTTP服务器的实现(使用别的代码来实现), 这个HTTP服务器的实现,我们主要就是关注TCP服务器中的recv还有send的处理。 首先,看一下HTTP,我们在用浏览器访问我们的TCPserver的时候,会收到什么样的请求。 这是直接访问端口的时候,返回的数据,我们在随便输入一个地址 阅读全文
posted @ 2022-10-24 00:00 飘雨的河 阅读(264) 评论(1) 推荐(0) 编辑
摘要: 我们紧接着上篇文章,看看我们上节课的代码有什么问题? 可以明显的看出来上节课的代码公用了一个同样的缓冲区进行读写,正常的情况下我们需要封装一个结构体,让每个对应的客户端的FD都有独立的结构进行读写还有接收连接。 具体的结构如下: struct sock_item { //客户端的fd int fd; 阅读全文
posted @ 2022-10-20 12:51 飘雨的河 阅读(251) 评论(0) 推荐(0) 编辑
摘要: 我们继续上篇的文章继续更新我们的代码。 首先就是介绍一下epoll的三个函数。 epoll_create epoll_ctl epoll_wait 如何去理解这3个函数,我是这样去理解这个函数, 就像我们去取快递一样,之前的Select模型,是通过轮询的方式一直去循环遍历客户端FD的列表,而EPOL 阅读全文
posted @ 2022-10-10 11:15 飘雨的河 阅读(81) 评论(0) 推荐(0) 编辑
摘要: 我们知道网络IO模型一共有5种,这里我们主要讨论同步IO和select多路复用的情况。 我们先从一个简单的TCP服务器的代码出发,来讨论一下这个是怎么实现的。 一个十分简单的TCP服务器 一个简单的TCP的服务器的建立流程是这样 建立SOCKET 绑定端口 监听 接受连接 接受消息 发送消息 关闭连 阅读全文
posted @ 2022-10-08 21:04 飘雨的河 阅读(34) 评论(0) 推荐(0) 编辑
摘要: 重点内容 linux基础命令和工具 CPU性能监控 内存性能监控 文件IO性能监控 网络IO监控 1 linux基础命令和工具 1.1 Grep搜索字符 grep命令用于在文件中执行关键字搜索,并显示匹配效果。 一些常见的选项 | 参数 | 作用 | | | | | -c | 仅显示找到的行数 | 阅读全文
posted @ 2022-10-04 17:35 飘雨的河 阅读(664) 评论(0) 推荐(0) 编辑
摘要: git是什么 git是一个分布式版本控制工具,github是代码托管平台。 git有什么用 保存文件的所有修改记录 使用版本号进行区分 随时可浏览历史版本记录 可还原到历史指定版本 对比不同版本的文件差异 为什么要用git? 多人协作开发一个大型项目 每个人都在代码库下载代码,然后进行修改,把大家不 阅读全文
posted @ 2022-09-25 23:22 飘雨的河 阅读(21) 评论(0) 推荐(0) 编辑
摘要: 下面我们来介绍Cmake Cmake 我们着重介绍一下CMAKE,是因为CMAKE现在用的人比MAKEFILE多一些,也更好理解,编写一些。 1 安装 cmake 1.1 卸载已经安装的旧版的CMAKE【非必需】 apt-get autoremove cmake 1.2 文件下载解压: wget h 阅读全文
posted @ 2022-09-25 23:22 飘雨的河 阅读(350) 评论(0) 推荐(0) 编辑
摘要: Makefile/cmake/configure 重点学习Cmake 首先是简单的MakeFile入门 1.1 简单Makefile 范例1.1 all: @echo "Hello all" test: @echo "Hello test" 运行结果如下 范例1.2 test: @echo "hel 阅读全文
posted @ 2022-09-16 20:15 飘雨的河 阅读(53) 评论(0) 推荐(0) 编辑
摘要: 1 C++11多线程thread 重点: join和detach的使用场景 thread构造函数参数 绑定c函数 绑定类函数 线程封装基础类 互斥锁mutex condition notify、wait lock_guard/unique_lock function和bind 异步future/pa 阅读全文
posted @ 2022-08-28 18:59 飘雨的河 阅读(221) 评论(0) 推荐(1) 编辑
摘要: 一、智能指针 为什么需要智能指针? 智能指针主要解决一下问题: 内存泄漏:内存手动释放,使用智能指针可以自动释放 共享所有权的指针的传播和释放,比如多线程使用同一个对象时析构的问题。 C++里面的四个智能指针,auto_ptr,shared_ptr,unique_ptr,weak_ptr其中后3个是 阅读全文
posted @ 2022-08-23 20:21 飘雨的河 阅读(176) 评论(0) 推荐(0) 编辑