
网络通信
文章平均质量分 83
本专栏主要介绍网络和通信方面的相关知识。
liitdar
一位热爱计算机科学技术的软件工程师
展开
-
HTML5介绍
HTML5结合了HTML4.01的相关标准并革新,符合现代网络发展要求,在2008年正式发布,是构建以及呈现互联网内容的一种语言方式,是互联网的核心技术之一。HTML产生于1990年,1997年HTML4成为互联网标准,并广泛应用于互联网应用的开发。HTML5在2012年已形成了稳定的版本。原创 2021-03-31 10:03:57 · 2741 阅读 · 1 评论 -
HTML介绍
HTML,即超文本标记语言,是一种标记语言。它包括一系列标签,通过这些标签可以将网络上的文档格式统一,使分散的Internet资源连接为一个逻辑整体。HTML文本是由HTML命令组成的描述性文本,HTML命令可以说明文字,图形、动画、声音、表格、链接等。HTML文件的扩展名为htm(因为之前的文件系统最多只支持三位扩展名)或html。超文本。原创 2021-03-26 17:57:31 · 5374 阅读 · 0 评论 -
Nginx介绍
Nginx(engine x)是一个HTTP服务器/反向代理服务器、邮件代理服务器、TCP/UDP代理服务器,最初由Igor Sysoev开发的,在很长的一段时间里,Nginx运行在很多高负载的俄罗斯网站上,包括Yandex,Mail.Ru,VK和Rambler。Nginx具有占用内存少,并发能力强的特点。事实上Nginx的并发能力确实在同类型的网页服务器中表现较好。原创 2019-08-21 17:20:54 · 1133 阅读 · 1 评论 -
RPC简介
RPC(Remote Procedure Call),即远程过程调用,是一种通过网络从远程计算机程序上请求服务、而不需要了解底层网络技术的协议。RPC协议假定某些传输协议(如TCP或UDP)的存在,为通信程序之间携带信息数据。在OSI网络通信模型中,RPC跨越了传输层和应用层。RPC使得开发应用程序(包括网络分布式多程序在内)更加容易。例如,有两台服务器A和B,一个应用部署在服务器A上,想要调用服务器B上的应用提供的函数/方法。原创 2019-08-21 17:20:49 · 3117 阅读 · 1 评论 -
Nginx+FastCGI架构的部署方法
Nginx不能像Apache那样直接执行外部的可执行程序,但是Nginx可以作为代理服务器,将Web请求转发给后端(服务器中的)应用程序,这是Nginx的主要作用之一。在本文中,我们使用Nginx接收Web客户端的请求,然后Nginx将该Web请求转发给后端的FastCGI进程。原创 2019-08-21 17:20:24 · 10317 阅读 · 1 评论 -
FastCGI介绍
FastCGI实际上是增加了一些扩展功能的CGI,是CGI的改进,描述了客户端和Web服务器程序之间传输数据的一种标准。FastCGI致力于减少Web服务器与CGI程序之间进行互动的开销,从而使Web服务器可以同时处理更多的Web请求。与CGI为每个Web请求创建一个新的进程不同,FastCGI使用持续的进程来处理一连串的Web请求,这些进程由FastCGI进程管理器管理,而不是Web服务器。原创 2019-08-21 17:20:20 · 9135 阅读 · 0 评论 -
ZeroC IceGrid中继承Ice::Application类构建demo的方法
继承Ice::Application类构建IceGrid demo时,实际上是对外提供接口的Ice服务(即server)继承了Ice::Application类。在IceGrid框架工作时,直接调用了该server程序。而使用IceBox搭建IceGrid时,则是通过icebox命令间接地调用了Ice服务。原创 2019-08-21 17:19:32 · 636 阅读 · 0 评论 -
ZeroC IceGrid介绍
IceGrid是为Ice服务提供的一个定位的、活化的服务。原创 2019-08-21 17:19:27 · 6328 阅读 · 2 评论 -
ZeroC Ice中继承Ice::Application类构建demo的方法
Ice::Application”类封装了所有的初始化和终止操作,用户在使用Ice::Application类时,就不需要过分关注初始化及相关异常,而将重点放在服务代码的实现上。要使用Ice::Application的相关功能,需要继承Ice::Application类、并在派生类中对Ice::Application类中的纯虚方法run进行具体实现,最终的Ice服务接口都是在run方法定义的。原创 2019-08-21 17:19:22 · 1124 阅读 · 0 评论 -
ZeroC IceBox介绍
IceBox是为Ice服务提供的一个易用框架。原创 2019-08-21 17:18:52 · 3294 阅读 · 2 评论 -
ZeroC Ice介绍
Ice(Internet Communications Engine)是一个面向对象的RPC(Remote Procedure Call,即远程过程调用)框架,它可以帮助你轻松地构建分布式应用。通过使用Ice,用户可以将更多的注意力放在自己应用程序的逻辑上,至于底层网络程序接口的交互则由Ice负责。通过使用Ice,用户不需要再为一些细节担忧,例如开放式网络连接、网路传输的序列化和反序列化,以及连接的失败重传问题。开发Ice程序的第一步就是编写Slice定义文件,该文件包含了Ice应用程序需要用到的接口。原创 2019-08-21 17:18:42 · 14962 阅读 · 1 评论 -
gRPC+Nginx架构的部署方法
本文介绍使用Nginx管理gRPC流量,即gRPC+Nginx架构的部署方法。说明:本文介绍的gRPC搭建示例是针对C++语言的。原创 2019-08-21 17:18:08 · 14758 阅读 · 1 评论 -
CGI(Common Gateway Interface)介绍
即通用网关接口,是WWW(World Wide Web)技术中最重要的技术之一,是外部应用程序(即CGI程序)与Web服务器之间的接口标准,负责在CGI程序和Web服务器之间传递信息。CGI是Web服务器运行时,调用外部应用程序(即CGI程序)的规范,CGI规范允许Web服务器执行外部程序,并将它们的输出发送给Web浏览器,CGI将Web的一组简单的静态超媒体文档变成一个完整的、新的交互式媒体,按照CGI编写的程序可以扩展Web服务器功能。CGI是比较原始的开发动态网站的方式。原创 2019-08-21 17:17:36 · 10825 阅读 · 1 评论 -
RocketMQ介绍(四)——RocketMQ常见问题
本系列文章主要介绍RocketMQ的相关知识,并通过示例代码介绍RocketMQ的使用方法。本文为系列文章的第四篇,主要介绍RocketMQ使用过程中可能遇到的常见问题及解决方法。原创 2019-02-27 15:25:58 · 734 阅读 · 0 评论 -
RocketMQ介绍(三)——RocketMQ编程示例
本系列文章主要介绍RocketMQ的相关知识,并通过示例代码介绍RocketMQ的使用方法。本文为系列文章的第三篇,主要介绍RocketMQ的C++客户端(即RocketMQ-Client-CPP),并通过简单的示例代码介绍RocketMQ编程技术。引用GitHub上对于RocketMQ-Client-CPP的介绍,内容如下:当前,RocketMQ-Client-CPP支持如下特性:RocketMQ-Client-CPP的安装是通过脚本build.sh实现的,不过在安装之前,需要确保开发环境中已经安装了下表原创 2019-02-27 19:00:52 · 9448 阅读 · 7 评论 -
RocketMQ介绍(二)——RocketMQ部署
本系列文章主要介绍RocketMQ的相关知识,并通过示例代码介绍RocketMQ的使用方法。本文为系列文章的第二篇,主要介绍RocketMQ的部署方法。原创 2019-02-26 09:07:54 · 1088 阅读 · 0 评论 -
RocketMQ介绍(一)——RocketMQ简介
首先,给出GitHub上对于RocketMQ项目的描述,内容如下:RocketMQ作为一款分布式的消息中间件,经历了Metaq1.x、Metaq2.x的发展和淘宝双十一的洗礼,证明其在功能和性能上远超ActiveMQ。GitHub上关于RocketMQ诞生的原因中,也说明了随着交易量的大幅度增长,ActiveMQ到达了性能瓶颈,而其他流行的消息解决方案(如Kafka)都不能满足其需求的情况下,才诞生了RocketMQ。原创 2019-02-26 09:11:42 · 1499 阅读 · 0 评论 -
消息队列(MQ)介绍
本文主要介绍消息队列(Message Queue,即MQ)的相关知识。原创 2019-08-30 17:03:54 · 5429 阅读 · 0 评论 -
使用libevhtp搭建HTTPS SERVER(双向验证身份)的方法
本文主要介绍使用libevhtp搭建一个HTTPS SERVER(双向验证身份)的方法,非加密的HTTP SERVER搭建方法,请点击本文将针对“双向验证身份”场景,介绍HTTPS SERVER的搭建方法。“单向验证身份”的场景,请点击。有的时候,客户端通过输入账号和密码向服务器端展示自己的身份的方式太过繁琐,尤其是在客户端并不是一个人而只是一个程序的时候。这种情况下,我们希望客户端与服务端双方都利用一个身份证(certificate)、通过SSL/TLS协议向对方展示自己的身份。原创 2019-08-21 17:19:06 · 1656 阅读 · 1 评论 -
libevhtp介绍
libevhtp是libevent's httpd API的一个快速、灵活的替代品。通过使用libevhtp,我们可以很容易地创建速度极快、安全的HTTP服务器。原创 2019-08-21 17:19:36 · 6481 阅读 · 0 评论 -
统一资源定位符(URL)介绍
引用Wikipedia中关于URL的相关描述,内容如下:httpftp), email(mailtoJDBCURL是针对可以从互联网上得到的资源的位置及访问方法的一种简洁的表示,是互联网上标准的资源地址。互联网上的每个文件都有唯一的URL,这个唯一的URL包含的信息指出了该文件的位置以及浏览器应该怎么处理它。原创 2018-06-13 19:25:18 · 1262 阅读 · 1 评论 -
curl常见用法
本文主要介绍curl的常见用法。说明:本文介绍的curl常见用法是面向Linux操作系统的。引用Manual中关于curl的介绍,内容如下:引用GitHub中关于curl的介绍,内容如下:curl is used in command lines or scripts to transfer data. curl is also used in cars, television sets, routers, printers, audio equipment, mobile phones, tablets,原创 2018-06-13 20:29:18 · 27801 阅读 · 1 评论 -
JSON简介
JSON(JavaScript Object Notation)是一种轻量级的数据交换格式,易于人们阅读和编写,同时也易于解析和生成。JSON基于“JavaScript Programming Language, Standard ECMA-262 3rd Edition - December 1999”的一个子集。JSON采用完全独立于编程语言的文本格式来存储和表示数据,数据层次结构简洁、清晰。原创 2019-08-21 17:20:04 · 2894 阅读 · 1 评论 -
使用JsonCpp实现JSON解析的方法
JsonCpp是一个可以与JSON进行交互的C++库。官网定义如下:通过使用JsonCpp,我们可以对JSON进行读写。原创 2019-08-21 17:20:33 · 46649 阅读 · 2 评论 -
SSL/TLS介绍
SSL及其继任者TLS是为网络通信提供安全及数据完整性的一种安全协议。SSL由Netscape研发,用以保障在Internet上安全地进行数据传输,利用数据加密“Encryption”技术,可确保数据在网络传输过程中不会被截取或窃听。SSL的当前版本为3.0,它已被广泛地用于Web浏览器与服务器之间的身份认证和加密数据传输场景中。TLS用于在两个通信应用程序之间提供保密性和数据完整性。SSL与TLS都是在传输层上对网络连接进行加密的。原创 2018-06-19 19:18:59 · 2449 阅读 · 0 评论 -
使用libevhtp编写HTTP服务器的方法
本文主要介绍使用libevhtp编写HTTP服务器的具体方法,编写的HTTP服务器可以接收HTTP客户端发送的GET/POST请求,并获取相应的请求参数。说明:本文中使用的编程语言为C++编程语言。原创 2018-08-01 10:09:10 · 2137 阅读 · 1 评论 -
HTTPS介绍
本文主要介绍HTTPS(Hyper Text Transfer Protocol over Secure Socket Layer)的相关知识。原创 2018-08-06 20:04:48 · 1239 阅读 · 1 评论 -
使用libcurl编写HTTP客户端的方法
libcurl属于curl的一部分,描述如下:从GitHub上下载curl源码,编译安装之后,就可以使用libcurl了。此外,也可以直接使用yum安装libcurl。curl的源码中,附带了一些libcurl的使用示例,示例位置如下:可以参考libcurl提供的示例代码,编写HTTP客户端(或者其他HTTP程序)。原创 2018-08-14 15:48:07 · 2514 阅读 · 1 评论 -
使用JsonCpp编写JSON封装程序的方法
本文主要介绍使用JsonCpp库,通过C++编程语言编写JSON封装程序的具体方法。原创 2018-08-14 16:26:33 · 2071 阅读 · 1 评论 -
使用JsonCpp实现JSON文件读写操作的方法
本文主要介绍使用JsonCpp库,通过C++编程语言实现JSON文件读写操作的具体方法。原创 2018-08-14 19:36:11 · 31999 阅读 · 9 评论 -
JsonCpp的常见用法
本文主要介绍JsonCpp的常见用法。引用GitHub上对于JSON和JsonCpp的介绍,内容如下:可以使用JsonCpp的isNull()函数,判断json的value是否为空。isNull()函数信息如下:示例代码(json_check_null.cpp)的内容如下:编译并执行上述代码,结果如下:根据上面的执行结果,可知:原创 2018-08-24 16:41:10 · 4509 阅读 · 1 评论 -
HTTP中POST请求方法的几种Content-Type(内容类型)介绍
HTTP中的Content-Type(内容类型),用于定义网络文件的类型和网页的编码方式,让数据接收方决定以什么形式、什么编码读取这个文件。HTTP/1.1协议规定的HTTP的请求方法有OPTIONS、GET、HEAD、POST、PUT、DELETE、TRACE、CONNECT,其中POST方法一般用于向服务端提交数据。HTTP是建立在TCP/IP协议之上的应用层协议,HTTP协议规定传输内容的格式为ASCII码。状态行请求头(headers)消息主体(body)。原创 2019-01-09 15:58:14 · 7429 阅读 · 1 评论 -
使用libevhtp搭建HTTPS SERVER(单向验证身份)的
本文主要介绍使用libevhtp搭建一个HTTPS SERVER(单向验证身份)的方法。非加密的HTTP SERVER搭建方法,请点击本文将针对“单向验证身份”场景,介绍HTTPS SERVER的搭建方法。“双向验证身份”的场景,请点击。一般的HTTPS服务都是只需要客户端验证服务器的身份就可以了。例如,我们想访问银行的网站,我们首先需要确认要访问的这个网站确实是真实的银行网站,而不是一个界面类似的、用来诱骗我们输入银行账号和密码的钓鱼网站,这就是我们作为客户端对银行进行身份验证的过程;原创 2019-08-21 17:19:01 · 2233 阅读 · 1 评论