【项目学习】C++实现高并发服务器——环境搭建

  • Post author:
  • Post category:其他

项目来源:WebServer

用C++实现的高性能WEB服务器,经过webbenchh压力测试可以实现上万的QPS

功能

  • 利用IO复用技术Epoll与线程池实现多线程的Reactor高并发模型;
  • 利用正则与状态机解析HTTP请求报文,实现处理静态资源的请求;
  • 利用标准库容器封装char,实现自动增长的缓冲区;
  • 基于小根堆实现的定时器,关闭超时的非活动连接;
  • 利用单例模式与阻塞队列实现异步的日志系统,记录服务器运行状态;
  • 利用RAII机制实现了数据库连接池,减少数据库连接建立与关闭的开销,同时实现了用户注册登录功能。
  • 增加logsys,threadpool测试单元(todo: timer, sqlconnpool, httprequest,
    httpresponse)

环境要求

  • Linux
  • C++14
  • MySql

一、软件安装

1、安装Linux系统

【Linux】安装VMware创建虚拟机
【Linux】安装VMware Tools
【Linux】换源
安装成功之后
连接服务器,安装软件

sudo apt install net-tools

查看ip信息

ifconfig

在这里插入图片描述

2、安装Xshell

下载XShell
下载完成之后打开,新建会话

在这里插入图片描述
在这里插入图片描述
虚拟机中安装ssh服务

apt install openssh-server
ps -ef | grep ssh

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
完成之后可以用Xshell实现远程登陆到主机

3、安装VS code

windows 下安装VS code 远程连接主机实现代码编辑
在这里插入图片描述
在这里插入图片描述
输入IP,远程主机的用户名
在这里插入图片描述
完成远程连接主机
在这里插入图片描述
安装插件
在这里插入图片描述
在这里插入图片描述

二、安装MySQL

Ubuntu18.04安装MySQL

:按照上面帖子安装时,设置root账户密码时可能提示以下错误

ERROR 1064 (42000): You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ‘(“root”) where user=“root”’ at line 1

解决办法参考

mysql> use mysql;
mysql>flush privileges;
mysql>UPDATE user SET authentication_string="" WHERE user="root";//先把root密码置为空
mysql>flush privileges;
mysql>ALTER user 'root'@'localhost' IDENTIFIED BY 'root';//再重置密码

至此,项目需要的环境搭建完成。

课程学习链接:https://www.nowcoder.com/study/live/690/


版权声明:本文为vhcjgc原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。