C++实现RPC分布式网络通信框架(一)-------项目阐述

RPC(remote procedure call)远程过程调用,在实际的大型项目开发中,尤其是现在越来越多的软件访问量会越来越大,最初的单机模式已经不足以支撑软件运行所需,于是应运而生了集群和分布式的设计理念,而在集群和分布式实现之后,有时我们需要用到根据其他主机上的程序运行的结果,那么如何来实现这种远程的调用呢,这就是RPC远程过程调用需要实现的功能。

一、技术栈

1.集群和分布式概念以及原理
2.RPC远程过程调用原理以及实现
3.Protobuf数据序列化和反序列化协议
4.Zookeeper分布式一致性协调服务应用以及编程
5.muduo网络库编程
6.conf配置文件读取
7.Cmake构建集成编译环境
8.github管理项目

二、项目环境

1.主环境:ubuntu18.04虚拟机

ubuntu是linux的一个发行版本,界面友好,配置文件简单易懂,个人也用了较多的linux系统,例如RedHat,CentOS,用起来都不像ubuntu这样顺手,个人原因,所以在项目主环境选择了ubuntu18.04。

2.windows下使用VSCode远程开发

VSCode是一个远程开发的利器,例如Leetcode刷题等等,只需要安装插件即可,界面也是很友好的,只要在ubuntu虚拟机上开启ssh服务,就可以使用VSCode连接该虚拟机,再进行我们的项目开发了。

3.项目开发环境配置

在该项目中使用muduo高性能网络库来做网络部分的业务,使用google的protobuf作为项目的序列化和反序列化工具,最后使用zookeeper作为配置中心来进行节点的管理。

4.项目托管:Github

三、环境配置

1.ubuntu18.04虚拟机安装

虚拟机安装网上有大量的教程,可以按照其步骤安装镜像,注意选择虚拟机软件,在刚开始的时候我的虚拟机软件总是提示ubuntu的软件依赖关系,在网上搜了好多的方法,试过最简单的sudo apt-get update命令,没解决掉,又下载了比较坑的一个apt软件,软件是可以正常下载了,但关机后虚拟机无法重新开机,百思不得其解之后换了虚拟机软件,于是一路畅通,开始愉快的Coding。

2.VSCode配置ssh服务连接虚拟机

这个也是有教程的,需要在ubuntu下开启ssh服务然后连接虚拟机,VSCode的使用稍微和经常使用的Visual Studio不太一样,不过很快就可以适应,反正都是敲代码,用啥都是一样的,VSCode上全部是插件,百度一下就可以查到如何配置远程链接的东西了。另外还需要安装Cmake的插件,因为需要用到Cmake来进行项目的自动编译。

3.需要的三方库的配置

muduo库,protobuf,zookeeper都可以下载到,按照教程直接在ubuntu下编译即可,注意编译完成后他们的输出路径,后面是需要用到的,zookeeper需要JAVA的运行环境,所以需要先配置JDK,在做下载文件的动作之前,先改一下源,源就是下载文件的路径,如果使用默认源的话慢的要死,这里推荐一篇博客大家可以去看下,按照这个博客的步骤去配置下载源:https://blog.csdn.net/weixin_43604792/article/details/103879709

4.Git客户端安装

windows上配置git客户端,可以参照这个博客:https://blog.csdn.net/weixin_43604792/article/details/104029367,linux上的配置可以参照网上教程,基本一样的。

环境配置好之后就可以开始Coding了!

©️2020 CSDN 皮肤主题: 1024 设计师:上身试试 返回首页