C++
Brock-123
昨夜风雨今日晴...
展开
-
gRPC-cpp使用总结(4)
参考gRPC基础:C++通过学习教程中例子,你可以学会如何:在一个 .proto 文件内定义服务.用 protocol buffer 编译器生成服务器和客户端代码.使用 gRPC 的 C++ API 为你的服务实现一个简单的客户端和服务器.为什么使用 gRPC?我们的例子是一个简单的路由映射的应用,它允许客户端获取路由特性的信息,生成路由的总结,以及交互路由信息,如服务器和其他客户端的流量更新。有了 gRPC, 我们可以一次性的在一个 .proto 文件中定义服务并使用任何支持它的语言去原创 2020-06-09 15:19:37 · 710 阅读 · 0 评论 -
gRPC-cpp使用总结(3)
参考安全认证认证gRPC 被设计成可以利用插件的形式支持多种授权机制。本文档对多种支持的授权机制提供了一个概览,并且用例子来论述对应API,最后就其扩展性作了讨论。支持的授权机制SSL/TLSgRP 集成 SSL/TLS 并对服务端授权所使用的 SSL/TLS 进行了改良,对客户端和服务端交换的所有数据进行了加密。对客户端来讲提供了可选的机制提供凭证来获得共同的授权。OAuth 2.0gRPC 提供通用的机制(后续进行描述)来对请求和应答附加基于元数据的凭证。当通过 gRPC 访问 Goo原创 2020-06-09 14:42:27 · 838 阅读 · 0 评论 -
gRPC-cpp使用总结(2)
参考gRPC 概念本文档通过对于 gRPC 的架构和 RPC 生命周期的概览来介绍 gRPC 的主要概念。本文是在假设你已经读过文档部分的前提下展开的。针对具体语言细节请查看对应语言的快速开始、教程和参考文档(很快就会有完整的文档)。概览服务定义正如其他 RPC 系统,gRPC 基于如下思想:定义一个服务, 指定其可以被远程调用的方法及其参数和返回类型。gRPC 默认使用 protocol buffers 作为接口定义语言,来描述服务接口和有效载荷消息结构。如果有需要的话,可以使用其他替代方案。原创 2020-06-09 14:08:38 · 284 阅读 · 0 评论 -
gRPC-cpp使用总结(1)
gRPC 官方文档中文版简介gRPC 是一个高性能、开源和通用的 RPC 框架,面向移动和 HTTP/2 设计。目前提供 C、Java 和 Go 语言版本,分别是:grpc, grpc-java, grpc-go. 其中 C 版本支持 C, C++, Node.js, Python, Ruby, Objective-C, PHP 和 C# 支持.gRPC 基于 HTTP/2 标准设计,带来诸如双向流、流控、头部压缩、单 TCP 连接上的多复用请求等特。这些特性使得其在移动设备上表现更好,更省电和节省原创 2020-06-09 13:56:36 · 1053 阅读 · 0 评论 -
protobuf开发-cpp版
https://www.jianshu.com/p/d2bed3614259ProtoBuf 官方文档(九)- (C++开发)教程此文翻译自 Protocol Buffers 官方文档 Protocol Buffer Basics: C++ 部分https://links.jianshu.com/go?to=https%3A%2F%2Fdevelopers.google.com%2Fprotocol-buffers%2Fdocs%2FcpptutorialProtocol Buffer Basics:原创 2020-06-07 22:16:28 · 356 阅读 · 0 评论 -
protobuf使用-概述-总结1
Protocol Buffers 是一种轻便高效的结构化数据存储格式,可以用于结构化数据串行化,或者说序列化。它很适合做数据存储或 RPC 数据交换格式。可用于通讯协议、数据存储等领域的语言无关、平台无关、可扩展的序列化结构数据格式。目前提供了 C++、Java、Python 三种语言的 API。简介什么是 Google Protocol Buffer? 假如您在网上搜索,应该会得到类似这样的文字介绍:Google Protocol Buffer(简称 Protobuf) 是 Google 公司内部的原创 2020-06-07 21:01:56 · 396 阅读 · 0 评论 -
GLOG总结
来自Google的Glog是一个应用程序的日志库。它提供基于C++风格的流的日志API,以及各种辅助的宏。打印日志只需以流的形式传给 LOG(level) ,例如:#include <glog/logging.h>int main(int argc, char* argv[]) { // Initialize Google's logging library. google::InitGoogleLogging(argv[0]); // ... LOG(INFO) <原创 2020-06-04 14:39:00 · 2254 阅读 · 0 评论 -
GFlags使用总结
Github 官方文档Gflags简明教程 http://dreamrunner.org/blog/2014/03/09/gflags-jian-ming-shi-yong/GFlags使用文档 http://www.yeolar.com/note/2014/12/14/gflags/简介GFlags是Google开源的一套命令行参数处理的开源库,包括C++的版本和python 版本。和 getopt() 之类的库不同,flag的定义可以散布在各个源码中,而不用放在一起。一个源码文件可以定义一些原创 2020-06-03 21:28:18 · 1499 阅读 · 0 评论 -
C++ : std::thread 多线程<1>
1. thread-join()必要条件:添加 lthread 编译支持选项。join()函数等待线程函数运行完毕,阻塞向下运行主函数;#include <iostream>#include <thread>#include <unistd.h> using namespace std;void thread01(){ for (i...原创 2019-09-11 20:48:14 · 243 阅读 · 0 评论 -
现代C++的回调技术--std::bind+std::function
参考自《Linux多线程服务端编程》在此详细叙述使用std::bind和std::function在C++对象之间的用法,用以配合解决事件驱动的编程模型1\std::function2\std::bind3\使用std::bind和std::function回调技术4\std::bind绑定到虚函数时会表现出来的多态行为,解决继承时的虚函数指带不清的问题std::functions...原创 2019-08-05 18:35:07 · 638 阅读 · 0 评论