开发一个服务器
文章平均质量分 59
实战开发一个服务器
窑下村吴彦祖
是个猛人
展开
-
Linux下的socket应用——socket函数
从零开始写一个高性能服务器原创 2022-04-28 16:15:10 · 3006 阅读 · 2 评论 -
Linux下的socket应用——TCP和UDP
1.前言TCP和UDP是两种最重要的传输协议,也是应用最广泛的传输协议,想要做服务器,就必须要学习和了解这两种传输协议,这里厚着脸皮从别人博主这里扒下来的知识点,先感谢一下这两个博主的分享。其实TCP和UDP拿出任何一个协议来讲都是需要长篇大论的,因为我们是由浅入深的学习,等碰到问题再去针对性的学习,所以这里只讲一下基本的概念,只要知道个大概就足够了。本文引用了下面链接中的内容。 TCP和UDP的区别TCP的三次握手和四次挥手(图片案例超详解)2....原创 2022-04-27 11:04:23 · 562 阅读 · 0 评论 -
Linux下的socket应用——基本概念
1.前言既然想写一个网络服务器,就必须要实现网络通信。网络通信的所有工作内容就是两台机器通过网络交换数据。两台机器相互之间通信需要用约定的方式,约定的流程,约定的协议进行通信,这个时候就不得不用到网络通信的工具——socket。2.什么是socketsocket就是对网络中不同主机上的应用进程之间进行双向通信的端点的抽象。一个套接字就是网络上进程通信的一端,提供了应用层进程利用网络协议交换数据的机制。从所处的地位来讲,套接字上联应用进程,下联网络协议栈,是应用程序通过网络协议进行...原创 2022-04-27 09:27:15 · 494 阅读 · 0 评论 -
Linux上安装Redis
Linux上安装Redis教程原创 2022-04-26 17:01:26 · 467 阅读 · 0 评论 -
用std::function和std::bind实现回调函数
1.参考资料std::function - C++中文 - API参考文档 (apiref.com)std::bind - C++中文 - API参考文档 (apiref.com)这两个类用到的头文件都是#include <functional>2.理解①std::function 可以用多种形式存储函数,包括直接保存,lambda表达式,bind表达式。②std::bind一个可以打包函数的工具,不同的c++标准用法不一样,我们这里用的是c++11所以,...转载 2022-04-22 10:33:06 · 1724 阅读 · 0 评论 -
修改一些发现的问题
1.发现问题项目写了半个月了,一直没怎么自己去看。自己也清楚有非常多需要优化的问题,为了更快的发现问题,找了几个好朋友帮我找找,自己也再看了一下,确实是有不少问题,所以做了一部分的优化。2.修改问题①单例模式的错误 写这个代码的时候,有一些想当然了,好朋友指出了单例模式的构造函数没有设为私有的问题,这里在XInclude/common/def.h定义了一个宏,把所有的单例模式的应用都做了修改。/**************************************...原创 2022-04-24 16:47:19 · 642 阅读 · 0 评论 -
linux下使用c++写一个日志类
从零开始写一个高性能服务器原创 2022-04-24 13:03:29 · 2082 阅读 · 2 评论 -
对c++11模板函数的理解——神奇的template
c++11模板的应用原创 2022-04-23 08:58:11 · 1221 阅读 · 0 评论 -
mysql异步调用的实现
1.实现原理现在我们的项目已经实现了异步类XProcess,数据库类XMylsq,开验证了std::function和std::bind实现回调的功能,现在我们只需要把他们组在一起就行。2.代码实现①这里先把我的代码分享一下c++服务器的异步数据库操作e②再次封装XMysql新增异步回调结果XMysqlAsynRes,新增回调操作信息XMysqlAsynData,实现异步操作虚函数virtual bool exec(),新增异步操作函数 bool exeAsynSql...原创 2022-04-22 11:45:29 · 1620 阅读 · 0 评论 -
整理服务器结构
从零开始写一个高性能服务器原创 2022-04-21 14:20:08 · 1083 阅读 · 0 评论 -
分享我的vim配置文件
配置vim原创 2022-04-21 11:54:20 · 4346 阅读 · 2 评论 -
简单的配置类
1.类的作用项目中,可能会需要用到各种各样的配置,比如数据库的host,root,pwd等配置。这些配置的值与代码本身没有关系,为了项目的灵活性和可移植性,可以在项目中写一个配置类2.配置文件config.ini的格式##代表注释后面的内容原创 2022-04-19 14:18:27 · 856 阅读 · 0 评论 -
封装一个自己的mysql类
1.精简mysql流程。2.mysql和protobuf的映射。3.mysql和protobuf的api的使用。原创 2022-04-20 10:23:26 · 723 阅读 · 0 评论 -
linux下c++使用mysql的简单流程
1.linux下部署mysql这里引用一个老哥的博客,亲自试过,流程清晰,我就不做过多赘述了。https://www.cnblogs.com/jj123/p/15740668.html2.使用外网连接mysql这里奉献一下我的navicat安装包,大家可以去下载一下链接:https://pan.baidu.com/s/1G8x4pwgzGf1zI2xorRR9Rw提取码:s5pj3.测试是否可以连接到数据库如果无法连接,可以打开3306端口//打开防火墙system..原创 2022-04-17 03:47:31 · 1979 阅读 · 0 评论 -
linux环境下c++实现简单的protobuf调用
一.安装protobuf1.安装必要的工具yum install -y autoconfyum install -yautomakeyum install -ylibtoolyum install -ycurlyum install -ymakeyum install -yg++yum install -yunzip2.将protobuf压缩包下载...原创 2022-04-14 22:20:53 · 2168 阅读 · 2 评论