主程的晋升攻略(5):HTTP协议和二进制协议的对比
在上一篇《 主程的晋升攻略(4):TCP、消息分包和协议设计》中谈了协议设计的一些话题,这里补充聊聊HTTP协议和二进制协议的对比。
HTTP协议是一种文本协议,也是一种Name-Based协议,就从这两方面来说。
文本协议 vs 二进制协议
文本协议的特点:
便于人
易于阅读、理解、调试、构造
解析复杂、冗余多
需要考虑字符转义
二进制协议的特点:
便于机器
Name-Based vs Position-Based
Name-Based协议的特点:
协议字段都 用Name标识
协议字段 与位置无关
协议字段可缺省
新增协议字段比较方便
解析复杂
需要考虑字符转义
Position-Based协议的特点:
每个协议字段都 有特定的位置
新增协议字段需要做好协议版本管理( protobuf这类就挺好)
解析更高效
-------- 分割线 ---------
主程的晋升攻略(1):重要的引言
主程的晋升攻略(2):技术篇概要
主程的晋升攻略(3):IP、DNS和CDN
主程的晋升攻略(4):TCP、消息分包和协议设计
主程的晋升攻略(6):CGI和FastCGI
推荐 wecode程序员云笔记──为程序员而生的 开源、 简洁高效的云笔记软件,使用有道云做云端存储。
★ 【 语法高亮】目前支持 C/C++、C#、Pascal、Java、VB.Net、XML、HTML、Python、SQL等多种方。
★ 【 云端存储】除了本地笔记本外,还增加了云存储功能,目前使用有道云笔记做为云存储。
★ 【 文档加密】提供了文档加密功能,确保敏感文档的安全性。
★ 【 多个本地笔记本】支持多个本地笔记本,你能够新建本地笔记本、打开、压缩和备份本地笔记本。
★ 【 文章附件】能够为每个文章添加多个附件,并能够在临时目录中打开附件、导出附件。有道云的附件也存储在云端。
主程的晋升攻略(5):HTTP协议和二进制协议的对比相关推荐
- 主程的晋升攻略(1):重要的引言
尽管是引言,但也非常重要. 程序猿怎样成长?这个话题百度有大约170万个相关结果,介绍了不少从菜鸟到老鸟的经验,但怎样成长为主程序猿(下面简称主程),网上的"帮助文档"不完好,也缺 ...
- 主程的晋升攻略(2):技术篇概要
技术是程序员安身立命的家伙,主程的技术不强,向下难以服众,向上有负重托. 或许有人会问:技术深度上该挖多深才能做好主程?程序员至少有两个高阶成长方向: 1.技术型专家非常热爱技术本身,往往会钻研得非常 ...
- 主程的晋升攻略(3):IP、DNS和CDN
有段时间我面试程序员时,喜欢问这个问题:局域网IP有哪些IP段?由这个问题再追问NAT(网络地址转换). 为什么不是每个设备一个公网IP? 先说个关于QQ的小故事,最早开发QQ时,小马哥他们也没想到Q ...
- 主程的晋升攻略(7):服务器模型谈
在上一篇< 主程的晋升攻略(6):CGI和FastCGI>中,讲到Web服务器和CGI/FastCGI能动态输出内容,从而提供更强大的业务处理能力.Web服务器这种架构,我称之为Web模式 ...
- 程序员发展与晋升攻略
> 思想互通: 1.PC时代,学的Java SE,写的是Windows软件 2.Nokia时代,学的是Java ME,写的是Symbian应用 3.Android时代,学的是Android, ...
- 来自十年互联网人的大厂等级晋升攻略
今天给大家分享一个大厂的等级划分.这种划分其实每个大公司的内部都有,直接拿公司内部的资料来分享肯定是不妥当的,而且那些东西写得太正式,读起来很枯燥. 今天分享的这篇,是参考了一些大厂的划分,再加上自身 ...
- php yield 携程,爬取携程国内地区攻略评论
这里我们用scrapy 框架爬取数据 爬虫文件里面的代码: # -*- coding: utf-8 -*- import json import re import os import scrapy ...
- 海淘转运攻略之2017年黑色星期五海淘转运公司对比推荐
海淘转运毕竟时间比较长,少则三四天(日淘),多则十天半个月(美淘.德淘):要是运气不好,给海关抽查到,甚至得一个多月才能收货,因而说到海淘转运公司推荐,也不好推荐,毕竟每个转运公司都会有好评.差评,都 ...
- 技术合伙人必备攻略---app开发技术栈调研--多种方案对比--uniapp学习路线
app开发技术方案对比 app开发主要有几种技术方案如下: 原生开发 原生开发简介 原生(native)开发从定义上来说 一般是指用原生开发语言开发,原生开发语言就是开发整个系统时使用的编程语言. 对 ...
最新文章
- Web App、Hybrid App与Native App的设计差异
- oracle 10g SYSAUX表空间快速增长之WRH$_SQL_PLAN篇
- JS 原生实现复选框全选反选功能
- tomcat优化-有改protocol 和 缓存 集群方案
- 欢迎使用CSDN-markdown编辑器-入门
- 疫情之下,哪些行业正在逆势爆发?
- AI编辑SVG格式的相关问题
- 毕设题目:Matlab故障分析
- 目标检测——CodeBook背景建模(原理+Opencv实现代码)
- mac Android studio 使用 阿里 maven 报错
- 计算机处理器采用多核,电脑处理器多核心与高主频哪个更重要【详细介绍】
- 7-9 把字符串中的大写字母改成小写字母 (10分)
- 安卓使用ContentProvider实现读取手机联系人和短信内容
- Https接口异常javax.net.ssl.SSLHandshakeException问题
- android按键模拟测试
- 蓝汛之5376脚位图
- 萃聚는 分散中의 統合
- docker webdav_跨主机容器共享数据卷(webdav 双向同步)
- Confidence-guided roadside individual tree extraction for ecological benefit estimation
- 狂神说SpringBoot最全笔记
热门文章
- Element UI 中国省市区级联
- mysql数据驱动的作用_MySQL数据优化
- Animal()动物类,关于多态的练习
- 启动计算机的程序方法单击,启动Windows应用程序的方法
- python 实时数据推送_python scrapy 爬取金十数据并自动推送到微信
- 为什么很多学华为、阿里的公司,最后都死掉了?
- “金融上链”正当时,百度智能云推出“链上可信金融”解决方案
- 练习:压缩字符串和逆序英文语句
- Linux下的PCB结构体
- 判断体重是否标准 男标准=身高-100±3 女标准=身高-110±3