自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(33)
  • 资源 (9)
  • 收藏
  • 关注

转载 对于前后端分离技术的理解和实现

前端静态化前端有且仅有静态内容,再明确些,只有HTML/CSS/JS. 其内容来自于完全静态的资源而不需要任何后台技术进行动态化组装.前端内容的运行环境和引擎完全基于浏览器本身.后端数据化后端可以用任何语言,技术和平台实现,但它们必须遵循一个原则:只提供数据,不提供任何和界面表现有关的内容.换言之,他们提供的数据可以用于任何其他客户端(如本地化程序,移动端程序).平

2017-10-31 17:29:33 8686

转载 我所理解的RESTful Web API [设计篇]

《我所理解的RESTful Web API [Web标准篇]》Web服务已经成为了异质系统之间的互联与集成的主要手段,在过去一段不短的时间里,Web服务几乎清一水地采用SOAP来构建。构建REST风格的Web服务是最近两三年风行的潮流,所以很多人以为REST是一个事物。而事实却是:REST自其诞生之日起到现在(2014年)已经有14年了,它为什么叫这么一个“奇怪”的名字呢?目录 一、为

2017-10-31 16:57:07 276

转载 网关协议学习:CGI、FastCGI、WSGI

CGICGI即通用网关接口(Common Gateway Interface),是外部应用程序(CGI程序)与Web服务器之间的接口标准,是在CGI程序和Web服务器之间传递信息的规程。CGI规范允许Web服务器执行外部程序,并将它们的输出发送给Web浏览器,CGI将Web的一组简单的静态超媒体文档变成一个完整的新的交互式媒体。通俗的讲CGI就像是一座桥,把网页和WEB服务器中的执行程序连

2017-10-31 15:24:53 345

转载 CGI、服务器内置模块、FastCGI、php-fpm的区别和详解

最早的Web服务器简单地响应浏览器发来的HTTP静态文件请求,并将存储在服务器上的静态文件(例如: jpg、htm、html)返回给浏览器。如图是处理流程CGI的出现事物总是不断发展,网站也越来越复杂,所以出现动态技术。但是服务器并不能直接运行 php,asp这样的文件,自己不能做,外包给别人吧,但是要与第三做个约定,我给你什么,然后你给我什么,就是我把请求参数发送给你,然

2017-10-31 15:09:45 394

转载 Nginx-->进阶-->原理-->Nginx+php+fastcgi的原理与关系

一、用户对动态PHP网页访问过程用户浏览器发起对网页的访问:http://192.168.1.103/index.php用户和nginx服务器进行三次握手进行TCP连接(忽略包括nginx访问控制策略、nginx防火墙等访问控制策略)第一步:用户将http请求发送给nginx服务器第二步:nginx会根据用户访问的URI和后缀对请求进行判断1.例如用户访问的

2017-10-31 11:53:27 288

转载 Nginx+FastCGI运行原理

FastCGI是一个可伸缩地、高速地在HTTP server和动态脚本语言间通信的接口。多数流行的HTTP server都支持FastCGI,包括Apache、Nginx和lighttpd等。同时,FastCGI也被许多脚本语言支持,其中就有PHP。FastCGI是从CGI发展改进而来的。传统CGI接口方式的主要缺点是性能很差,因为每次HTTP服务器遇到动态程序时都需要重新启动脚本解析器来执行解析

2017-10-31 11:48:36 378

转载 FastCgi与PHP-fpm之间是个什么样的关系

我在网上查fastcgi与php-fpm的关系,查了快一周了,基本看了个遍,真是众说纷纭,没一个权威性的定义。网上有的说,fastcgi是一个协议,php-fpm实现了这个协议; 有的说,php-fpm是fastcgi进程的管理器,用来管理fastcgi进程的; 有的说,php-fpm是php内核的一个补丁; 有的说,修改了php.ini配置文件后,没办法平滑重启,所以就诞生了php-fp

2017-10-31 11:42:23 289

转载 Nginx + CGI/FastCGI + C/Cpp

接着上篇《Nginx安装与使用》,本篇介绍CGI/FASTCGI的原理、及如何使用C/C++编写简单的CGI/FastCGI,最后将CGI/FASTCGI部署到nginx。内容大纲如下:1.     CGI1.1.     环境变量1.2.     标准输入2.     FastCGI3. nginx cgi/fastcgi3.1. nginx + fastcgi3.1

2017-10-31 11:41:02 350

转载 浏览器加载、解析、渲染的过程

最近在学习性能优化,学习了雅虎军规 ,可是觉着有点云里雾里的,因为里面有些东西虽然自己也一直在使用,但是感觉不太明白所以然,比如减少DNS查询,css和js文件的顺序。所以就花了时间去了解浏览器的工作,有一篇经典的文章《how browsers work》 ,讲的很详细,也有中文译本 。不过就是文章有点太长,也讲了一堆东西,还是自己总结一下。为什么要了解浏览器加载、解析、渲染这个过程?

2017-10-31 09:53:33 225

转载 谈谈Linux下动态库查找路径的问题

学习到了一个阶段之后,就需要不断的总结、沉淀、清零,然后才能继续“上路”。回想起自己当年刚接触Linux时,不管是用源码包编译程序,还是程序运行时出现的和动态库的各种恩恩怨怨,心里那真叫一个难受。那时候脑袋里曾经也犯过嘀咕,为啥Linux不弄成windows那样呢,装个软件那个麻烦不说,连运行软件都这么恼火呢?如果那样的话就不叫Linux了。借用小米公司CEO雷军一句话:小米,为发烧而生。我认为:

2017-10-27 10:58:46 336

转载 码流 / 码率 / 比特率 / 帧速率 / 分辨率 / 高清的区别

GOP/ 码流 /码率 / 比特率 / 帧速率 / 分辨率GOP(Group of picture)       关键帧的周期,也就是两个IDR帧之间的距离,一个帧组的最大帧数,一般而言,每一秒视频至少需要使用 1 个关键帧。增加关键帧个数可改善质量,但是同时增加带宽和网络负载。         需要说明的是,通过提高GOP值来提高图像质量是有限度的,在遇到

2017-10-27 09:24:10 1445

转载 MYSQL数据库索引

1.工作原理:数据库索引是怎么工作的呢?可以简单理解为我们要看一本书的某一个知识点,如果你从第一页开始一页页的找的话,是不是很慢呢,但是如果有目录的话,那么你就可以在目录中查找你想要看的内容所在的页数,然后按照这个指定的页数就可以找到你想要看的内容。这样是不是就快多了。索引的工作原理类似:首先在索引中找到对应值,然后根据对应匹配的索引记录找到对应的数据行。比如在name列上建立索引

2017-10-27 08:37:23 295

转载 http协议无状态中的 "状态" 到底指的是什么?

引子:最近在好好了解http,发现对介绍http的第一句话【http协议是无状态的,无连接的】就无法理解了:无状态的【状态】到底指的是什么?!找了很多资料不仅没有发现有一针见血正面回答这个问题的,而且有些解释还充斥了各种错误,看着看着就觉得心里憋着一股浊气吐不出来于是在看了很多资料之后,我一口吐出浊气,大声正面提出这个问题:http协议无状态中的【状态】到底指的是什么?!

2017-10-23 19:00:02 427 1

转载 大话https演化过程(对称加密、非对称加密、公钥、私钥、数字签名、数字证书)

大话https演化过程(包括概念:对称加密、非对称加密、公钥、私钥、数字签名、数字证书、https访问全过程) 在网络上发送数据是非常不安全的,非常容易被劫持或是被篡改,所以每次定向发送数据你都可以视为在广播,每次定向接收数据都可以视为在广收。而建立安全通道的难度和成本都很高,甚至安全性都不一定靠谱。 在这样的情境下,F需要向S发送一段只有S才能看的信息msg,它要

2017-10-23 18:58:51 387

转载 无状态服务(stateless service)

一、定义 无状态服务(stateless service)对单次请求的处理,不依赖其他请求,也就是说,处理一次请求所需的全部信息,要么都包含在这个请求里,要么可以从外部获取到(比如说数据库),服务器本身不存储任何信息 有状态服务(stateful service)则相反,它会在自身保存一些数据,先后的请求是有关联的 二、优劣 有状态服务常常用于实现事务(并不是唯一办

2017-10-23 18:36:42 573

转载 CGI详解

当我们在谈到cgi的时候,我们在讨论什么    最早的Web服务器简单地响应浏览器发来的HTTP请求,并将存储在服务器上的HTML文件返回给浏览器,也就是静态html。事物总是不断发展,网站也越来越复杂,所以出现动态技术。但是服务器并不能直接运行 php,asp这样的文件,自己不能做,外包给别人吧,但是要与第三做个约定,我给你什么,然后你给我什么,就是握把请求参数发送给你,然后我接

2017-10-23 18:13:44 480

转载 CGI详解(原理,配置及访问)

一.基本原理CGI:通用网关接口(Common Gateway Interface)是一个Web服务器主机提供信息服务的标准接口。通过CGI接口,Web服务器就能够获取客户端提交的信息,转交给服务器端的CGI程序进行处理,最后返回结果给客户端。组成CGI通信系统的是两部分:一部分是html页面,就是在用户端浏览器上显示的页面。另一部分则是运行在服务器上的Cgi程序。它们之间

2017-10-23 18:07:56 2617

转载 Protobuf 语法指南

本指南描述了怎样使用protocol buffer 语法来构造你的protocol buffer数据,包括.proto文件语法以及怎样生成.proto文件的数据访问类。(本文只针对proto2的语法)本文是一个参考指南——如果要查看如何使用本文中描述的多个特性的循序渐进的例子,请在http://code.google.com/intl/zh-CN/apis/protocolbuffer

2017-10-19 09:15:52 333

转载 Protocol Buffer的C++入门教程

1.protobuf简介protobuf(Protocol Buffers )是google的开源项目,官网见:click这里,源码见:github。更准确的官方描述是:protobuf是google的中立于语言,平台,可扩展的用于序列化结构化数据的解决方案。简单的说,protobuf是用来对数据进行序列化和反序列化。那么什么是数据的序列化和反序列化呢?见下文。protobuf支持目前

2017-10-18 18:58:51 698 1

转载 Protocol Buffer技术详解(Java实例)

该篇Blog和上一篇(C++实例)基本相同,只是面向于我们团队中的Java工程师,毕竟我们项目的前端部分是基于Android开发的,而且我们研发团队中目前主要使用的开发语言就是C++、Java和Python,其中Python主要用于编写各种工具程序。然而为了保证该篇Blog的完整性和独立性,我仍然会将上一篇Blog中已经出现的内容再一次赘述,同时对于Java中特有的部分也会着重介绍。    

2017-10-18 18:56:38 307

转载 Protocol Buffer技术详解(C++实例)

这篇Blog仍然是以Google的官方文档为主线,代码实例则完全取自于我们正在开发的一个Demo项目,通过前一段时间的尝试,感觉这种结合的方式比较有利于培训和内部的技术交流。还是那句话,没有最好的,只有最适合的。我想写Blog也是这一道理吧,不同的技术主题可能需要采用不同的风格。好了,还是让我们尽早切入主题吧。          一、生成目标语言代码。      下面的命令帮助我们将M

2017-10-18 18:55:34 354

转载 Protocol Buffer技术详解(语言规范)

该系列Blog的内容主体主要源自于Protocol Buffer的官方文档,而代码示例则抽取于当前正在开发的一个公司内部项目的Demo。这样做的目的主要在于不仅可以保持Google文档的良好风格和系统性,同时再结合一些比较实用和通用的用例,这样就更加便于公司内部的培训,以及和广大网友的技术交流。需要说明的是,Blog的内容并非line by line的翻译,其中包含一些经验性总结,与此同时,对于一

2017-10-18 18:52:39 417

转载 Protocol Buffer 序列化原理大揭秘 - 为什么Protocol Buffer性能这么好?

前言习惯用 Json、XML 数据存储格式的你们,相信大多都没听过Protocol BufferProtocol Buffer 其实 是 Google出品的一种轻量 & 高效的结构化数据存储格式,性能比 Json、XML 真的强!太!多!由于 Google出品,我相信Protocol Buffer已经具备足够的吸引力今天,我将讲解为什么Pro

2017-10-18 17:30:06 304

转载 Google Protocol Buffer 的使用和原理

简介什么是 Google Protocol Buffer? 假如您在网上搜索,应该会得到类似这样的文字介绍:Google Protocol Buffer( 简称 Protobuf) 是 Google 公司内部的混合语言数据标准,目前已经正在使用的有超过 48,162 种报文格式定义和超过 12,183 个 .proto 文件。他们用于 RPC 系统和持续数据存储系统。Pro

2017-10-18 17:29:04 512

转载 序列化和反序列化浅析

序列化和反序列化对于现代的程序员来说是一个既熟悉又陌生的概念。说熟悉是因为几乎每个程序员在工作中都直接或间接的使用过它,说陌生是因为大多数程序员对序列化和反序列化的认识仅仅停留在比较一下各种不同实现的序列化的性能上面,而很少有程序员对序列化和反序列化的设计和实现有深入的研究。本文将从序列化和反序列化的设计和实现的入手,来简单讲解一下序列化和反序列化。其中包括以下几个方面:序列化和反

2017-10-18 17:11:11 619

转载 linux shell “永久环境变量”、“临时环境变量”和"普通变量"之完全解读

这个年代, 大家写点书, 也无非就是为了搞点钱, 基本都是罗列一些知识点, 基本都是写给已经会了的人看的。 真正用心写书的人, 不多。 如果真正用心写书, 且站在读者的角度去写, 那就少之又少了。        关于linux shell环境变量, 我看了四本linux相关书的介绍, 结果, 没有一本书的讲解让我完全满意, 总感觉没有说清楚。所以呢, 我打算自己来写一下,如有不

2017-10-18 11:56:15 2594 1

转载 详解操作系统中断

2016-11-02中断这个特性相比大家都不会陌生,稍微懂点操作系统知识的人都可以说到一二。但是要真正把中断描述清楚,以及LInux中和windows中的实现方式,这可能还是有点难度的。今天笔者就想彻头彻尾的把中断给详细分析下。 说到中断还不得不从现代操作系统的特性说起,无论是桌面PC操作系统还是嵌入式都是多任务的操作系统,而很遗憾,处理器往往是单个的,即使在硬件成本逐

2017-10-17 17:06:08 29849 5

转载 浅谈js运行机制(线程)

浅谈js运行机制(线程)1.前言从开始接触js时,我们便知道js是单线程的。单线程,异步,同步,互调,阻塞等。在实际写js的时候,我们都会用到ajax,不管是原生的实现,还是借助jQuery等工具库实现,我们都知道,ajax可以实现局部刷新,并且在请求处理时,任然可以响应用户的操作,比如点击事件。不是说js是单线程吗?这些都是怎么实现的?在阅读《深入理解Bootrap的源码》一书,

2017-10-17 16:12:03 409 1

转载 Ajax工作原理

Ajax工作原理  在写这篇文章之前,曾经写过一篇关于AJAX技术的随笔,不过涉及到的方面很窄,对AJAX技术的背景、原理、优缺点等各个方面都很少涉及null。这次写这篇文章的背景是因为公司需要对内部程序员做一个培训。项目经理找到了我,并且征询我培训的主题,考虑到之前Javascript、CSS等WEB开发技术都已经讲解过了,所以决定针对AJAX这一块做一个比较系统的培训,所以这篇文章

2017-10-17 15:35:06 315

转载 WebService详解

最近项目有要用到WebService的知识,在网上找了相关资料整理一番。一、序言  大家或多或少都听过WebService(Web服务),有一段时间很多计算机期刊、书籍和网站都大肆的提及和宣传WebService技术,其中不乏很多吹嘘和做广告的成分。但是不得不承认的是WebService真的是一门新兴和有前途的技术,那么WebService到底是什么?何时应该用?   当前的应用程

2017-10-16 14:50:13 168

转载 vue.js在windows本地下搭建环境和创建项目

Vue.js是一套构建用户界面的渐进式框架。与其他重量级框架不同的是,Vue 采用自底向上增量开发的设计。Vue 的核心库只关注视图层,并且非常容易学习,非常容易与其它库或已有项目整合。另一方面,Vue 完全有能力驱动采用单文件组件和Vue生态系统支持的库开发的复杂单页应用。    首先vue.js的作者是中国人,所以说他是国产的,吸收了google的angular.js和facebook

2017-10-16 14:18:45 403

转载 vue.js开发环境搭建

1.安装node.js(http://www.runoob.com/nodejs/nodejs-install-setup.html)2.基于node.js,利用淘宝npm镜像安装相关依赖 在cmd里直接输入:npm install -g cnpm --registry=https://registry.npm.taobao.org,回车,等待安装...3.安装全局vue-

2017-10-16 13:52:01 253

转载 案例分析:基于消息的分布式架构

美国计算机科学家,LaTex的作者Leslie Lamport说:“分布式系统就是这样一个系统,系统中一个你甚至都不知道的计算机出了故障,却可能导致你自己的计算机不可用。”一语道破了开发分布式系统的玄机,那就是它的复杂与不可控。所以Martin Fowler强调:分布式调用的第一原则就是不要分布式。这句话看似颇具哲理,然而就企业应用系统而言,只要整个系统在不停地演化,并有多个子系统共同存在时,这条

2017-10-10 09:22:08 604

libevent-2.0.22 windows和linux下的静态库,附源码和libevent使用手册

libevent-2.0.22-stable.tar.gz源码编译的Windows和Linux下的静态库,另附源码,电子书《libevent参考手册(中文版).pdf》、《libevent源码深度剖析.pdf》、《LibeventBook.pdf》。 Linux环境下该libevent静态库修改Makefile加入编译选项-fPIC,这样可以使静态库被正确的链接到自己工程的动态库。

2019-02-04

protobuf_2.6.1 C++源码、工具和库文件

protobuf_2.6.1 C++源码、包括VS2012下编译后的工具和库文件

2017-10-19

FFMpeg SDK 开发手册

FFMpeg SDK 开发手册 视频编解码过程

2013-09-23

C++设计模式精解

设计模式精解-GoF 23种设计模式解析附C++实现源码

2013-09-23

boost_1_41_文档_中文版

boost_1_41_文档_中文版,最全面的boost学习资料。

2013-09-23

Boost库/C++标准库使用手册

boost库和标准库使用手册,内容全面,介绍详细,编程开发学习必备!

2012-11-27

C/C++标准函数库

C/C++标准函数库,几乎包含全部C/C++中全部常用的函数,查看方便,开发学习必备。

2012-11-27

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除