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权限,轻松修改你的游戏体验 大小:14.76MB5,207人安装 如果你是一个喜欢玩游戏的人,那么你一定会遇到以下情况:游戏进入到某一个难度后,……
下载怎么获修改器gg的root_gg修改器要怎么用? 大小:15.20MB5,872人安装 大家好,今天小编为大家分享关于怎么获修改器gg的root_gg修改器要怎么用?的内容,赶……
下载gg游戏修改器如何设置,GG游戏修改器让游戏更上一层楼 大小:14.46MB5,103人安装 GG游戏修改器是一个非常出色的游戏修改器,它可以让你轻松地修改游戏内的各种数值,……
下载gg修改器苹果版下载中文,GG修改器苹果版下载中文助你获得更好的游戏体验 大小:19.32MB5,014人安装 作为一名游戏爱好者,在游戏中能够获得更好的游戏体验,一定是我们所期望的。而现在……
下载gg修改器获得root_gg修改器获得物品 大小:8.40MB6,041人安装 大家好,今天小编为大家分享关于gg修改器获得root_gg修改器获得物品的内容,赶快来……
下载gg游戏修改器官方正版,gg游戏修改器官网下载中文 大小:7.70MB5,387人安装 1、正版gg修改器软件具有无限游戏道具、超级爆分的特性; 2、应用简易,想在打游戏……
下载gg修改器73.9中文官网,为什么GG修改器73.9中文官网能成为游戏修改器的代表? 大小:14.64MB4,888人安装 游戏玩家们对游戏难度的诉求不同,他们需要一个可以修改游戏的工具。而 GG修改器73.……
下载gg修改器这么root_GG修改器这么使用 大小:18.75MB5,979人安装 大家好,今天小编为大家分享关于gg修改器这么root_GG修改器这么使用的内容,赶快来……
下载魅族怎么给gg修改器root_魅族怎么给gg修改器root权限 大小:8.96MB5,996人安装 大家好,今天小编为大家分享关于魅族怎么给gg修改器root_魅族怎么给gg修改器root权……
下载gg游戏修改器穿越火线,穿越火线玩家必备神器GG游戏修改器 大小:11.87MB4,720人安装 随着游戏的不断发展,穿越火线作为国内最受欢迎的射击游戏之一,吸引了大量的玩家。……
下载