RPC-FromScratch 项目教程

RPC-FromScratch 项目教程

RPC-FromScratch🌈 从零开始设计一个轻量级分布式 RPC 框架,基于 Spring + Netty + Protostuff + Zookeeper项目地址:https://gitcode.com/gh_mirrors/rp/RPC-FromScratch

1. 项目目录结构及介绍

RPC-FromScratch/
├── client/
│   ├── client.c
│   └── is_prime_rpc_client.h
├── server/
│   ├── server.c
│   └── is_prime_rpc_server.h
├── common/
│   ├── pack.h
│   └── unpack.h
├── config/
│   └── config.ini
├── README.md
└── Makefile

目录结构介绍

  • client/: 包含客户端的源代码文件和RPC客户端的头文件。

    • client.c: 客户端主程序,负责与服务器进行通信并调用远程RPC函数。
    • is_prime_rpc_client.h: 客户端RPC函数的头文件。
  • server/: 包含服务端的源代码文件和RPC服务端的头文件。

    • server.c: 服务端主程序,负责处理客户端的RPC请求并返回结果。
    • is_prime_rpc_server.h: 服务端RPC函数的头文件。
  • common/: 包含项目中通用的打包和解包函数的头文件。

    • pack.h: 打包函数的头文件。
    • unpack.h: 解包函数的头文件。
  • config/: 包含项目的配置文件。

    • config.ini: 配置文件,用于存储服务器的地址、端口等信息。
  • README.md: 项目的说明文档。

  • Makefile: 用于编译和构建项目的Makefile文件。

2. 项目启动文件介绍

客户端启动文件 (client/client.c)

#include <stdio.h>
#include <stdbool.h>
#include "is_prime_rpc_client.h"

int main(void) {
    // 提示用户输入一个数字
    printf("Please enter a number: ");
    // 读取用户输入的数字(假设输入有效)
    int input_number;
    scanf("%d", &input_number);
    // 通过RPC库检查该数字是否为素数
    if (is_prime_rpc(input_number)) {
        printf("%d is prime\n", input_number);
    } else {
        printf("%d is not prime\n", input_number);
    }
    return 0;
}

服务端启动文件 (server/server.c)

#include <stdio.h>
#include <stdbool.h>
#include "is_prime_rpc_server.h"

int main(void) {
    // 启动服务器并监听客户端请求
    start_server();
    return 0;
}

3. 项目配置文件介绍

配置文件 (config/config.ini)

[Server]
address = 127.0.0.1
port = 8080

配置文件介绍

  • [Server]: 服务器配置部分。
    • address: 服务器的IP地址,默认为127.0.0.1(本地地址)。
    • port: 服务器监听的端口号,默认为8080

通过修改config.ini文件中的配置,可以更改服务器的地址和端口,以适应不同的部署环境。

RPC-FromScratch🌈 从零开始设计一个轻量级分布式 RPC 框架,基于 Spring + Netty + Protostuff + Zookeeper项目地址:https://gitcode.com/gh_mirrors/rp/RPC-FromScratch

创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

宫文琼Perfect

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值