自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(21)
  • 收藏
  • 关注

原创 Nginx源码分析 ——Nginx的进程通信方式

在之前分析Nginx的进程模型中我们看到,Nginx使用Master-Worker模式工作时,会有多个进程启动。那在Nginx的多进程之间采用怎样的通信方式呢?本节,我们将就Nginx的进程间通信进行分析。一、UNIX域套接字通信在开始介绍Nginx如何使用UNIX域套接字之前,我们讲讲UNIX域套接字通信方式,它是用于同一台机器上运行的进程之间的一种常用通信方式,它实质上是一种应用于客户

2016-05-13 11:42:08 1288

原创 Nginx源码分析 ——Nginx的进程模型

一、Nginx的功能简介Nginx ("EngineX"),一个业界使用率非常高的轻量级高性能 HTTP 和反向代理服务器,也提供IMAP/POP3/SMTP等代理服务器功能。近年,由于Nginx专业团队不断提升其稳定性和各项服务性能指标,在很多方面已经超越著名的Apache服务器。由于Nginx是开源的,国内使用它作为Web 服务器的网站也越来越多,其中包括新浪博客、新浪播客、网易新闻等

2016-05-13 11:39:33 506

转载 列式数据库

定义列式数据库是以列相关存储架构进行数据存储的数据库,主要适合于批量数据处理和即席查询。相对应的是行式数据库,数据以行相关的存储体系架构进行空间分配,主要适合于小批量的数据处理,常用于联机事务型数据处理。描述数据库以行、列的二维表的形式存储数据,但是却以一维字符串的方式存储,例如以下的一个表:EmpIdLastname

2015-07-28 15:57:31 759

转载 Spring AOP的理解和简单实现

所谓Aop,即Aspect Oriented Programming,面向方面编程。这个概念听起来可能有点抽象,所以在这里我们先引入Aop中的一些术语并结合它们来对Aop思想做一个整体的解释:  1.Joinpoint(连接点):顾名思义,连接点的作用就是可以在上面接一点东西。实际上,Aop中的连接点的意思也差不多,就是那些被我们拦截到的点(Spring中,这些点指的就是方法,因为Spri

2015-07-21 00:12:39 691

转载 Spring依赖注入的几种实现方式

接口注入我们常常借助接口来将调用者与实现者分离。如:public class ClassA {private InterfaceB clzB;public init() {Ojbect obj =Class.forName(Config.BImplementation).newInstance();clzB = (InterfaceB)obj;}……

2015-07-19 01:13:15 2171

转载 数据库和数据仓库的区别

数据仓库是面向分析的,数据库是面向事务处理. 数据仓库的数据是基本不变得,而数据库的数据是由日常的业务产生的,常更新 数据仓库的数据一般有数据库的数据经过一定的规则转换得到得 数据仓库主要用来分析数据,一般是tb级的的数据,比如决策支持系统,数据挖掘等.--------------------------关于数据仓库-------------------------------

2015-07-16 16:32:49 522

转载 Android开发学习笔记:浅谈显示Intent和隐式Intent

Intent寻找目标组件的两种方式:·       显式Intent:通过指定Intent组件名称来实现的,它一般用在知道目标组件名称的前提下,一般是在相同的应用程序内部实现的。·       隐式Intent:通过Intent Filter来实现的,它一般用在没有明确指出目标组件名称的前提下,一般是用于在不同应用程序之间。一.显式Intent   一般情况下,一个Android应

2015-04-09 22:14:44 353

转载 Activity跳转Flag详解

下面是关于setFlags的一下属性的解释:一、Activity和Task(栈)的关系Task就像一个容器,而Activity就相当与填充这个容器的东西,第一个东西(Activity)则会处于最下面,最后添加的东西(Activity)则会在最低端。从Task中取出东西(Activity)则是从最顶端取出,也就是说最先取出的是最后添加的东西(Activity),一次类推,最后取出的是第一次添

2015-04-09 22:11:13 605

转载 Android六大类进程介绍

前台进程(foreground): 目前正在屏幕上显示的进程和一些系统进程。举例来说,Dialer Storage,Google Search等系统进程就是前台进程;再举例来说,当你运行一个程序,如浏览器,当浏览器界面在前台显示时,浏览器属于前台进程(foreground),但一旦你按home回到主界面,浏览器就变成了后台程序(background)。我们最不希望终止的进程就是前台进程

2015-04-09 22:10:19 417

转载 Android Activity为什么要细化出onCreate、onStart、onResume、onPause、onStop、onDesdroy这么多方法让应用去重载?

Android Activity为什么要细化出onCreate、onStart、onResume、onPause、onStop、onDesdroy这么多方法让应用去重载?原创链接:http://blog.csdn.net/zhao_3546/article/details/12843477,转载请注明,谢谢。 最近在研究Activity的启动流程,老罗的blog在看,也找了其它资料学习

2015-04-09 22:07:52 456

转载 Android Studio导入第三方类库的方法

Android Studio导入第三方类库的方法本人也刚刚开始尝试做android app的开发,听说android studio是Google支持的android 应用开发工具,所以想应该肯定比Eclipse好用吧,反正以前没有java开发经验,索性就从android studio开始学,以前一直是做.net的开发,最近使用了Eclipse,Android Studio之后发现Visua

2015-04-09 22:04:26 530

转载 StringBuilder和String的区别

StringBuilder和String的区别  自己总结,简而言之,stringbuilder和string的区别在于:stringbuilder是变长的。string是定长的。 以下详细介绍String和StringBuilder的使用:---------------------------------------------------------

2015-02-27 12:02:29 553

原创 Java程序最基本的加载流程

Java程序运行时,首先运行JVM(Java虚拟机),然后再把Java类加载到JVM里运行。负责加载Java类的组件叫做ClassLoader。当然,ClassLoader由多个部分组成,每个部分都负责相应的加载工作。当运行一个程序的时候,JVM启动,运行BootstrapLoader,该ClassLoader加载Java核心API,ExtClassLoader和AppClassLoader。然后

2015-01-22 16:43:14 370

原创 PHPEclipse用Xdebug调试出现"waiting for XDebug session"

1. 端口设置不对,在php.ini文件里设置的跟eclipse的不一样,或者端口被占用。可以用netstat查看一个空端口,重新设置到php.ini和Eclipse中。2. XDebug的版本不对,可以phpinfo();一下,看现在的版本是个版本,支不支持threadsafe,disable的话,就不能装TS的版本。3. 排除以上两项的话,那就查一下php.ini里其他设置对不对,XD

2015-01-14 22:40:59 490

原创 TCP的三次握手和四次挥手

1.建立连接:(三次握手)(1)客户端发送一个SYN包给服务器,然后等待应答。(2)服务器端回应给客户端一个ACK=1、SYN=1的TCP数据段。(3)客户必须再次回应服务器端一个ACK确认数据段。2.释放连接:(四次挥手)(1) TCP客户端发送一个FIN,关闭客户端到服务器端的数据传送。(客户端不再发送报文给服务器端,但可接受服务器端报文)

2015-01-07 09:12:22 346

原创 C++ 模板template<class T>和template<typename T>有区别吗?

template和template都可以用来定义函数模板和类模板,在使用上,他们俩没有本质的区别。在C++早期版本中,没有typename这个关键字,所以在模板定义的时候便使用了class。在C++后期的版本中,为了不再和class向混淆,所以加入了新的关键字typename用以区分。对于我个人而言,在定义模板函数时,更倡导使用typename关键字。这里,顺便记录一下模板函数和模

2014-12-27 18:36:59 9336

原创 私有&保护继承的派生类不是子类

如题。我们经常把派生类和子类混为一谈,其实他们是一个全集和子集的关系。即,子类肯定是派生类,但不是所有的派生类都是子类。这里,我们首先要明确他们俩的概念:1. 通过C++继承属性而产生的类,都叫派生类。2. 派生类对象完全具有基类功能,则该派生类叫做基类的子类。即,父类对象能做什么,子类对象也能做什么。阐明了这两个概念之后,我们再回到话题说说C++的三种继承方式:公共继承、私有继承

2014-12-26 22:01:51 1043

原创 C++中Structure和Class有什么区别

C++中的Structure也可以有属性和方法,也可以有构造函数和析构函数,同时Structure之间也可以继承。那Class和Structure的区别是什么喃?Class中的属性和方法默认是private的,而Structure默认是public的。两者的却别仅此而已,所以C++继续保持Structure的目的更多的是为了兼容C语言。

2014-12-26 15:20:08 940

原创 C++中运算符优先级及其应用场景的探讨

一、我们首先列出C++中各种运算符的优先级序列二、我们来看看几种经典的应用场景三、一些隐晦的应用,比如数据指针vs指针数组,函数指针,const指针vs指向const的指针

2014-12-26 11:16:20 345

原创 C++中,malloc/free和new/delete的区别

首先,malloc和free属于C/C++标准库函数,而new和delete则只是C++提供的操作符而已。其次,他们在功能上有本质的却别。对于C++中非内部数据类型的创建和释放而言(比如,用户在程序中自定义的数据结构),仅仅使用malloc和free是远远不够的。对象在创建时需要自动执行构造函数,对象消亡时要自动执行析构函数,而malloc和free是C和C++共享的标准库函数(不是操作符,不

2014-12-26 11:03:22 483

原创 C++是怎么实现多态的

多态是C++的三大重大特性之一,简而言之,它即是在运行时才确定到底应该执行父类还是子类的虚函数。那么它是如何实现的喃?说到其实现原理,我们必须谈到两点:推迟绑定技术和虚表。我们先来讲推迟绑定,对普通函数而言,对象实例

2014-12-26 10:54:23 554

空空如也

空空如也

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

TA关注的人

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