GG修改器破解版下载地址:https://ghb2023zs.bj.bcebos.com/gg/xgq/ggxgq?GGXGQ
大家好,今天小编为大家分享关于gg游戏修改器怎么启动_怎么启动GG修改器的内容,赶快来一起来看看吧。
让我们构建一个 Rust Todo 应用程序
在这个故事中,我们将使用使用 gRPC 的 Rust 创建一个基本的 Todo 应用程序。首先,我想简要介绍一下 gRPC 和 Protocol Buffers。
什么是 gRPC?
gRPC 是一个现代开源的高性能远程过程调用 (RPC) 框架,可以在任何环境中运行。
RPC 代表 Remote Procedure Call,开头的 g 代表 General Purpose,或者对于某些人来说它代表 Google。但实际上,您可以在这里看到:g_stands_for,gRPC 团队在每个版本中都会更改 g 的含义 🙂
我假设您熟悉常见的 REST API。它们通过 JSON 对象进行通信,在 gRPC 而不是 JSON 中,我们使用协议缓冲区来序列化数据。
Protocol Buffers
Protocol Buffers 是 Google 用于序列化结构化数据的语言中立、平台中立、可扩展机制。
在 gRPC 中,传输的数据(序列化)是二进制形式的。因此这意味着它比 JSON 或 XML 更快,因为它占用的空间更少,而且空间越小,带宽就越小。
将 gRPC 与 Rust 一起使用
首先,创建一个新的货物包。
cargo new rust-grpc
现在,在创建 cargo 包之后,我们必须为 gRPC 添加一些依赖项,并在 Cargo.toml 中为我们的服务器和客户端二进制文件创建二进制定义。
[[bin]]
name = "grpc-server"
path = "src/server.rs"
[[bin]]
name = "grpc-client"
path = "src/client.rs"
[dependencies]
tonic = "0.7"
prost = "0.10"
tokio = { version = "1.19", features = ["rt-multi-thread", "macros"] }
[build-dependencies]
tonic-build = "0.7"
创建您的原型文件。
proto/todo.proto
syntax = "proto3";
import "google/protobuf/empty.proto";
package todo;
message TodoItem {
string name = 1;
string description = 2;
int32 priority = 3;
pleted = 4;
}
message GetTodosResponse {
repeated TodoItem todos = 1;
}
message CreateTodoRequest {
string name = 1;
string description = 2;
int32 priority = 3;
}
message CreateTodoResponse {
TodoItem todo = 1;
bool status = 2;
}
service Todo {
rpc GetTodos(google.protobuf.Empty) returns (GetTodosResponse);
rpc CreateTodo(CreateTodoRequest) returns (CreateTodoResponse);
}
这是 Proto 文件的语法。 先说一下proto文件的语法:
将 Proto 文件编译为 Rust 代码。
build.rs
fn main() -> Result<(), Box<dyn std::error::Error>> {
tonic_build::configure()
.compile(&["proto/todo.proto"], &["proto"])
.unwrap();
Ok(())
}
服务器代码
src/server.rs
use std::sync::Mutex;
use tonic::{transport::Server, Request, Response, Status};
use todo::todo_server::{TodoServer, Todo};
use todo::{TodoItem, GetTodosResponse, CreateTodoRequest, CreateTodoResponse};
pub mod todo {
tonic::include_proto!("todo");
}
#[derive(Debug, Default)]
pub struct TodoService {
todos: Mutex<Vec<TodoItem>>
}
#[tonic::async_trait]
impl Todo for TodoService {
async fn get_todos(&self, _: Request<()>) -> Result<Response<GetTodosResponse>, Status> {
let message = GetTodosResponse {
todos: self.todos.lock().unwrap().to_vec()
};
Ok(Response::new(message))
}
async fn create_todo(&self, request: Request<CreateTodoRequest>) -> Result<Response<CreateTodoResponse>, Status> {
let payload = request.into_inner();
let todo_item = TodoItem {
name: payload.name,
description: payload.description,
priority: payload.priority,
completed: false
};
self.todos.lock().unwrap().push(todo_item.clone());
let message = CreateTodoResponse {
todo: Some(todo_item),
status: true
};
Ok(Response::new(message))
}
}
#[tokio::main]
async fn main() -> Result<(), Box<dyn std::error::Error>> {
let addr = "0.0.0.0:50051".parse().unwrap();
let todo_service = TodoService::default();
Server::builder()
.add_service(TodoServer::new(todo_service))
.serve(addr)
.await?;
Ok(())
}
让我们快速看看这里发生了什么。
客户代码
src/client.rs
use todo::todo_client::TodoClient;
use todo::{CreateTodoRequest};
pub mod todo {
tonic::include_proto!("todo");
}
#[tokio::main]
async fn main() -> Result<(), Box<dyn std::error::Error>> {
let mut client = TodoClient::connect("http://0.0.0.0:50051").await?;
let request = tonic::Request::new(());
let response = client.get_todos(request).await?;
println!("{:?}", response.into_inner().todos);
let create_request = tonic::Request::new(CreateTodoRequest {
name: "test name".to_string(),
description: "test description".to_string(),
priority: 1,
});
let create_response = client.create_todo(create_request).await?;
println!("{:?}", create_response.into_inner().todo);
Ok(())
}
同样,让我们快速看看这里发生了什么。
现在完成所有这些,构建,运行服务器二进制文件,等待它启动,然后运行客户端二进制文件。
cargo build
cargo run –bin grpc-server
cargo run –bin grpc-client
我希望它也对你有用。
如果没有,您可能必须根据您的操作系统安装 protobuf 包来编译您的 proto 文件。 我选择在 Docker Container 中运行我的应用程序
关注七爪网,获取更多APP/小程序/网站源码资源!
以上就是关于gg游戏修改器怎么启动_怎么启动GG修改器的全部内容,希望对大家有帮助。
gg修改器兔root下载_GG修改器root下载 大小:5.22MB8,700人安装 大家好,今天小编为大家分享关于gg修改器兔root下载_GG修改器root下载的内容,赶快……
下载gg修改器 免root使用_GG修改器免Root 大小:12.77MB8,672人安装 大家好,今天小编为大家分享关于gg修改器 免root使用_GG修改器免Root的内容,赶快来……
下载gg游戏修改器怎么部落冲突,优秀的gg游戏修改器,带给你完美的部落冲突游戏体验 大小:10.83MB7,757人安装 随着智能手机的普及,移动游戏成为了大部分人的娱乐选择。而其中,部落冲突是一款备……
下载gg修改器中文版视频_gg修改器下载使用教程视频 大小:15.69MB8,746人安装 大家好,今天小编为大家分享关于gg修改器中文版视频_gg修改器下载使用教程视频的内……
下载GG修改器免root版最新下载,GG修改器免root版 大小:4.59MB8,978人安装 人应该要为梦想追逐,不管现实给了你多少黑眼圈。勇敢的追求自己的梦想吧!早上好!……
下载gg修改器不root,让你轻松无极限,GG修改器不root强劲驱动 大小:3.37MB7,839人安装 在玩游戏的过程中,有时候突然发现卡顿、掉帧、过程卡死等问题会让人十分痛苦。GG修……
下载迷你世界gg修改器下载最新,迷你世界gg修改器下载最新让游戏变得更有趣 大小:17.45MB7,700人安装 迷你世界是一款非常受欢迎的游戏,可玩性非常高。但是在长时间的游戏过程中,我们可……
下载gg游戏修改器8.6,使用GG游戏修改器8.6,让你的游戏体验更加完美 大小:9.41MB7,927人安装 作为一名游戏玩家,相信大家都有过为了通关难度大、游戏进度慢等原因而烦恼过的经历……
下载gg修改器最新版蓝奏云,介绍 GG修改器最新版蓝奏云 大小:15.30MB7,774人安装 GG修改器最新版蓝奏云是一款功能强大的修改器,可以帮助玩家在游戏中实现各种各样的……
下载光遇gg修改器root_光遇gg修改器怎么刷蜡烛 大小:14.02MB8,752人安装 大家好,今天小编为大家分享关于光遇gg修改器root_光遇gg修改器怎么刷蜡烛的内容,……
下载