C++服务器开发之echo服务器---记录学习过程(1)

C++服务器开发之echo服务器—记录学习过程(1)

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档


前言

  1. 小白一名,每天的乐趣是希望自己比昨天的自己更努力一些,学习到的更多一些。在这样一个那么卷那么卷的年代,和别人比较往往是折磨了自己。

  2. 我们一路前进,不是为了改变世界,改变别人,而是改变自己。

  3. 本次的学习特别鸣谢Linux高性能服务器开发机构,详细的讲解过程向下兼容了我这么一个小白,让我有坚持学习C++服务器开发的决心,尽管现在是Java开发服务器的年代(go die)。

  4. 这是一个名为echo的项目,实现的功能是客户端发送字符串给服务器,服务器回复给客户端大写的字符串。


一、为什么要用C++开发,不是用Java

  1. Java开发服务器的大势是不可逆的,但是身为小白的我已经学习了C++这一编程语言,更何况急于安排人生路的打算。所以想学习几个开源项目,丰富自己。
  2. 有幸,在B站中找到了小白入手C++服务器教学视频,源码+资料都是开源的、共享的,也很感谢有这些,让自己不会有劝退的心思。
  3. 再者呢,有两个电脑的我(哈哈哈哈,厉害吧,两个电脑噢!哦,算了,有台电脑以已经是用了6年了,安装上双系统给自己做工程用)。

二、说干就干—按照视频复现项目

什么是puTTy呢?
puTTy是一个Telnet、SSH、rlogin、纯TCP以及串行接口连接软件。
在ubuntu中打开终端输入以下命令安装puTTy:

sudo apt-get install putty
  • 接下来,在终端中输入putty(不用区分大小写输入):

在这里插入图片描述

  • 此时进入如下界面:(由于本主是双系统,因此在改变putty界面上有些束手无策)

在这里插入图片描述

  • 在上图中输入红框框内什么呢?由于这次的项目是在本机上建立客户端、服务器,因此在这次也包括下次另外打开putty,也都需要输入本机的IP地址。查询本机地址可在终端中写入如下命令:(图片中上边篮框是命令符,下边蓝框是IP地址)

在这里插入图片描述

  • 将IP地址输入进puTTy中进入了如下界面(好了,我是个小白嘛,老师没有讲puTTy怎么操作,于是我就发挥主观能动性安装了puTTy,进入了和老师编写项目一样的界面。接下来,就可以按照老师的教学视频一步一步操作了):

在这里插入图片描述

  • 按照视频的教学,一步一步的在vim中敲入C代码:(tip:在命令模式下,:wq是可以保存并推出编辑界面的哟,如本土中最下框所示)(下面有这一段的彩蛋噢~)
:wq

在这里插入图片描述
在编写完write与read的代码之后,就可以尝试着进行通讯了:(命令行中先后键入绿框框中的两条命令)

在这里插入图片描述

  • **但是这个时候,可能会有连接不通的情况,小主在这里卡壳了得有半个小时。**最终解决方案是我们自己使用的电脑端口问题!!!老师讲的666端口是他的电脑可以开放的的端口,但是我们自己电脑可能不适用这样的端口:因此你可以更换端口来解决问题:
    键入以下命令:
netstat -tnl


解释:第二个绿色框框内是可以使用的端口,这里的5939与之前搭建项目时的端口不一样(上上图),不过,端口的使用时依据自己的电脑来设定的,不必拘泥于视频。

  • **找端口,这可能是在自学这个项目时,遇到第二个较为苦恼的麻烦了。**之后便可以一马平川了—Ubuntu本机之间的测试;Ubuntu与windows之间的测试;客户端的编码。噢,对了,编写完服务器代码后,要重新开辟一个终端进入puTTy进行客户端代码的编写噢~

在这里插入图片描述

  • 最后,跟着视频教程一步一步的来,就会很顺利的实现项目要求:(左图为客户端,右图为服务器端。在可客户端中输入./echo_client
    “Hello Linux”,服务器端就会返回给客户端:HELLO LINUX)
./echo_client "Hello Linux"

在这里插入图片描述

  • 至此,在这个项目的实现上,已经完成了一小步。接下来就是继续跟着视频学习,听老师来讲解代码问题,通讯问题。

总结

声明哈,我只是小白一个,也并不是给我课程打广告。不过在看了教学视频并自己搭建项目之后,顿时感觉有了成就感,也许在很多人看来,这个项目不算什么,但是对我来说,这已经是很大的快乐。**每个人的快乐源泉不一样,有的是高屋建瓴,有的是遮雨草屋。**这也是我第一次在CSDN上发帖子,记录自己的学习经历,见证自己的成长。


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