当前位置: 首页 > news >正文

重庆住房城乡建设部网站flash网站源码带后台

重庆住房城乡建设部网站,flash网站源码带后台,网站显示已备案,网站怎么做跳转目录 一,介绍 1.1 序列化概念 1.2 什么是 Protobuf 1.3 使用特点 二,安装 Protobuf 2.1 Windows 下安装 2.2 Linux 下安装 一,介绍 protobuf在百度百科里的介绍如下: 1.1 序列化概念 关于对象的序列化和反序列化: 序…

目录

一,介绍

1.1 序列化概念

1.2 什么是 Protobuf

1.3 使用特点

二,安装 Protobuf

2.1 Windows 下安装

2.2 Linux 下安装

一,介绍

protobuf在百度百科里的介绍如下:

1.1 序列化概念

关于对象的序列化和反序列化:

  • 序列化:把对象转换成字节序列的过程,比如打视频电话,将声音信号和光信号转换成能够让机器识别的二进制信号
  • 反序列化:将字节序列恢复为对象的过程,比如视频电话中对方能从手机看到我发手机摄像头内容和声音

什么时候需要序列化?

  • 存储数据:当你想把的内存中的对象状态保存到一个文件中或者存到数据库中时
  • 网络传输:网络直接传输数据,但是无法直接传输对象,所以要在传输前序列化,传输完成后反序列化成对象。例如我们之前学习过socket编程中发送与接收数据:计算机网络(五) —— 自定义协议简单网络程序-CSDN博客

如何实现序列化?

  • xml:可扩展标记语言,被设计用来传输和存储数据,不用于表现和展示数据,HTML 则用来表现数据
  • json:JSON格式化是指将JSON数据以一种清晰、易读的方式进行排列和显示,我们上面链接中的博客中使用的就是json
  • protobuf:我们本系列的主角

1.2 什么是 Protobuf

  • Protocol Buffers 是 Google 的一种语⾔无关、平台无关、可扩展的序列化结构数据的方法,可用于(数据)通信协议、数据存储
  • Protocol Buffers 类比于XML,更种灵活、高效、自动化机制的结构数据序列化方法,但是比 XML更小、更快、更为简单
  • 可以定义数据的结构,然后使用特殊生成的源代码轻松的在各种数据流中使用各种语言进行编写和读取结构数据。甚至可以更新数据结构,而不破坏由旧数据结构编译的已部署程序

简单来说,Protobuf是让数据结构序列化的一套方案,特点有:

  • 语言无关、平台无关:ProtoBuf支持Java、C++、Python等多种语言,⽀持多个平台
  • 高效:即比XML更小、更快、更为简单
  • 扩展性、兼容性好:可以更新数据结构,而不影响和破坏原有的旧程序

1.3 使用特点

  • 编写.proto文件,定义结构对象(message)及属性内容
  • 使用 protoc 编译器编译 .proto 文件,生成⼀系列接口代码,存放在新生成头文件和源文件中
  • 依赖生成的接口,将编译生成的头文件包含进我们的代码中,实现对 .proto 文件中定义的字段进行设置和获取,和对 message 对象进行序列化和反序列化

总的来说:ProtoBuf是需要依赖通过编译生成的头文件和源文件来使用的

这种代码生成机制可以让开发人员可以大大降低编写协议解析的代码的成本

二,安装 Protobuf

2.1 Windows 下安装

官方仓库为:Releases · protocolbuffers/protobuf · GitHub

我们以V21.11为例,找到对应的电脑配置下载即可:Release Protocol Buffers v21.11 · protocolbuffers/protobuf · GitHub

下载好后解压,是个这样的文件夹:

我们把bin这个文件夹路径加到环境变量Path中去:

打开cmd,查看版本,有显示说明安装成功:

2.2 Linux 下安装

下面以 Ubuntu 系统为例

下载Protobuf 前要安装依赖库:autoconfautomakelibtoolcurlmakeg++unzip

sudo apt-get install autoconf automake libtool curl make g++ unzip -y

安装好后,再次打开:Release Protocol Buffers v21.11 · protocolbuffers/protobuf · GitHub

all 表示 protobuf支持所有语言,然后在 Shell 中使用 wget 命令就可以直接下载到服务器上:

wget https://github.com/protocolbuffers/protobuf/releases/download/v21.11/protobuf-all-21.11.zip

下载需要一点时间,也可以下载到windows本地,然后通过 XShell 上传到服务器

下载后解压得到一个目录,里面是protobuf的一些源码:

进入这个文件,首先运行 autogen.sh:

然后运行 configure:

protobuf 是默认安装在 /usr/local 目录的,lib 和 bin 是分散的,所以我们可以修改下安装目录,统一安装在 /usr/local/protobuf 下

然后我们可以在刚刚解压的目录下找到一个 makefile 文件:

然后执行make让其开始编译,时间比较久,需要十多分钟,然后执行 make check 也需要十多分钟(具体时长也看机器配置,我的云服务器两个都搞了近30分钟555)

当出现这些字样说明一切正常:

然后执行下列命令:

sudo make install

到此,如果我们前面执行 configure 时没有指定安装目录,那么现在就可以正常使用 protobuf 了,但是上面我们指定了安装目录,所以我们还需要加一些东西

打开配置文件:

sudo vim /etc/profile

按U旁边的 I 键进入编辑模式,鼠标右键粘贴添加下列内容:

#(动态库搜索路径) 程序加载运⾏期间查找动态链接库时指定除了系统默认路径之外的其他路径
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/protobuf/lib/#(静态库搜索路径) 程序编译期间查找动态链接库时指定查找共享库的路径
export LIBRARY_PATH=$LIBRARY_PATH:/usr/local/protobuf/lib/#执⾏程序搜索路径
export PATH=$PATH:/usr/local/protobuf/bin/#c程序头⽂件搜索路径
export C_INCLUDE_PATH=$C_INCLUDE_PATH:/usr/local/protobuf/include/#c++程序头⽂件搜索路径
export CPLUS_INCLUDE_PATH=$CPLUS_INCLUDE_PATH:/usr/local/protobuf/include/#pkg-config 路径
export PKG_CONFIG_PATH=/usr/local/protobuf/lib/pkgconfig/

然后按ESC键,按住Shift 键再按下W和Q键表示保存并退出,最后重新执行 /etc/profile文件:

 source /etc/profile

最后检查是否安装成功,输入检查版本命令:

 source /etc/profile

如果能打印版本,表示安装成功:

http://www.dtcms.com/a/451496.html

相关文章:

  • 申请免费网站域名哈尔滨建立网站公司
  • 外贸高端建站什么是网络营销美好小火锅的线上推广平台有哪些
  • 电子商城网站建设参考文献长春二手房
  • 缙云县建设局网站产权交易网站建设方案
  • 做物流用哪个网站好介绍国外的网站有什么不同
  • 网站开发意义wordpress采集源码
  • 网站开发费用是无形资产wordpress 搜索框大小
  • 合作市建设局网站成都近期发生的大事
  • 个人网站备案代理洛阳建设三轮网站
  • 电子商务网站建设目标免费论坛创建
  • 建设网站怎么挣钱网站要怎么做
  • Codeforces Round 1054 (Div. 3)-G. Buratsuta 3
  • 深圳网站设计建设公司php快速建站系统
  • 台州网站制作系统分析怎么写GPS实时定位网站怎么做
  • 计算机网路-PPP协议
  • 专门做网站的公司 南阳合肥房地产交易网
  • 小米的网站是哪个公司做的品牌网站建设只询大蝌蚪
  • JSP初始
  • 怎么做招聘网站链接孩子学编程网上课程哪家好
  • c语言如何做网站行业网站建设内容
  • 营销型网站内容网站源码 后台
  • 做企业网站好处网站建设如何上传文件
  • 网页制作与网站建设完全学习手册pdf公众号怎么开通留言功能
  • 顺德网站制作案例效果互联网企业网站
  • 上蔡网站建设公司2015做那个网站致富
  • 搭建钓鱼网站教程做响应式网站设计做图怎么搞
  • 广州自助网站设计平台客户管理系统排行榜
  • 兰州网站排名分析网站关键词调整 收录
  • PID --比例项P
  • VBA之Excel应用第四章第八节:单元格区域的Offset属性