Linux C/C++ reactor模式下实现简易的web服务器

Linux C/C++ reactor模式下实现简易的web服务器

一、HTTP协议1.客户端请求消息2.服务器响应消息HTTP 响应也由四个部分组成,分别是:状态行、消息报头、空行和响应正文。3.http请求与响应实例4.实现内容比如在服务器目录下存在一个文件,index.html(例子)需要在浏览器输入 192.168.192.128:8888/index.ht...

Linux C/C++ reactor原理与实现

Linux C/C++ reactor原理与实现

一、reactor原理Reactor 释义“反应堆”,是一种事件驱动机制。和普通函数调用的不同之处在于:应用程序不是主动的调用某个 API 完成处理,而是恰恰相反,Reactor 逆置了事件处理流程,应用程序需要提供相应的接口并注册到 Reactor 上,如果相应的时间发生,Reactor 将主动调...

C++ 入门教程开发文档

42 课时 |
17490 人已学 |
免费
开发者课程背景图
Linux C/C++ 开发(学习笔记十三):百万并发的服务器实现

Linux C/C++ 开发(学习笔记十三):百万并发的服务器实现

准备内容一、connection_refuesed ---->文件系统最大的进程fd个数在那个文件下添加两行reboot后即可可以通过ulimit -a指令来查看文件系统最大的进程fd个数确实由1024变为了百万级别二、Cannot assign requested address-----&...

Linux C/C++ 开发(学习笔记十二 ):TCP服务器(并发网络编程io多路复用epoll)

Linux C/C++ 开发(学习笔记十二 ):TCP服务器(并发网络编程io多路复用epoll)

一、了解epoll可以通过epoll实现io多路复用深入了解epollepoll使用详解二、完整代码epoll水平触发(LT)和边沿触发(ET)概念较为重要开发过程中,一定要注意sockfd要在epoll这个集合里面使用epoll肯定会有一个 事件的主循环。#include<sys/socke...

Linux C/C++ 开发(学习笔记十一 ):TCP服务器(并发网络网络编程 一请求一线程)

Linux C/C++ 开发(学习笔记十一 ):TCP服务器(并发网络网络编程 一请求一线程)

一、TCP服务器(一请求一线程) 的原理通过sockfd绑定(bind)和监听(listen),每过来一个客户端就接受(accept),并创建一个clientfd,每个clientfd,占据一个线程。每个线程执行 接受(recv)并printf的任务。具体的监听过程二、完整代码#include<...

Linux C/C++ 开发(学习笔记十 ):实现http请求器(TCP客户端)

Linux C/C++ 开发(学习笔记十 ):实现http请求器(TCP客户端)

一、需要实现的内容和方式比如进入百度,可以看见右侧web界面的必要信息,这就需要通过http客户端去请求获取。在网页上打开,比如在chrome浏览器中,按F12即可进入开发者模式,可以看见发送的请求实现方式二、完整代码#include<stdio.h> #include<strin...

Linux C/C++ 开发(学习笔记九 ):DNS协议与请求的实现

Linux C/C++ 开发(学习笔记九 ):DNS协议与请求的实现

一、windows中通过uslookup根据域名查看ip在windows中 通过域名查询 ip地址在cmd中输入nslookup www.baidu.com就可以查询到百度的ip地址这也是后续要实现的效果,通过dns请求来获取指定域名的ip地址二、使用wireshark查看dns报文从官方下载wir...

Linux C/C++ 开发(学习笔记八):Mysql数据库图片存储

Linux C/C++ 开发(学习笔记八):Mysql数据库图片存储

1.准备好一张图片文件,将图片read,存放到buffer2.将图片数据(buffer)写入mysql3.从mysql中读取图片数据(buffer)4.将图片数据(buffer)写入磁盘一、读入图片//读取图片 //filename:path+file name //buffer:store ima...

Linux C/C++ 开发(学习笔记七):Mysql数据库C/C++编程实现 插入/读取/删除

Linux C/C++ 开发(学习笔记七):Mysql数据库C/C++编程实现 插入/读取/删除

一、数据库建模与建库建表用户admin登入mysql创建一个数据库create database KING_DB;#创建数据库 show databases; use KING_DB;#使用数据库在KING_DB数据库中创建一张表create table TBL_USER( U_ID int pri...

Linux C/C++ 开发(学习笔记六):MySQL安装与远程连接

Linux C/C++ 开发(学习笔记六):MySQL安装与远程连接

一、MySql安装sudo apt-get install mysql-server-5.7然后输入两次密码后,安装成功以root身份登入mysqlmysql -u root -p输入密码即可二、Windows安装MysqL workbenchMySQL8.0安装(win10)三、使用Mysql w...

本页面内关键词为智能算法引擎基于机器学习所生成,如有任何问题,可在页面下方点击"联系我们"与我们沟通。

社区圈子

开发与运维
开发与运维
集结各类场景实战经验,助你开发运维畅行无忧
6404+人已加入
加入
相关电子书
更多
继承与功能组合
对象的生命期管理
移动与复制
立即下载 立即下载 立即下载