自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

转载 mysql数据库索引原理及其常用引擎对比

索引原理树数据结构及其算法简介B+/-树:- 多路搜索树;- 时间复杂度O(logdN);h为节点出度,d为深度红黑树:- 节点带有颜色的平衡二叉树- 时间复杂度O(log2N);h节点出度=2平衡二叉树:- 绝对平衡二叉树,查找效率和红黑树基本一样- 但是插入和删除的效率低于红黑书;查找时间复杂度上述数据结构,因为时间复杂度是O(logdN),所以d越大,效率上...

2017-11-15 16:55:00 175

转载 golang new和make的区别

自:http://www.cnblogs.com/ghj1976/archive/2013/02/12/2910384.htmlmake用于内建类型(map、slice 和channel)的内存分配。new用于各种类型的内存分配。内建函数new本质上说跟其它语言中的同名函数功能一样:new(T)分配了零值填充的T类型的内存空间,并且返回其地址,即一个*T类型的值。用Go的术语说,它返...

2017-10-25 13:31:00 143

转载 NOSQL:redis mongodb

redis1  概念及其基本操作:http://blog.nosqlfan.com/html/3139.html 2  安装配置及其操作:http://blog.fens.me/linux-redis-install/3  服务器详细配置(包括集群的配置)及其C语言客户端操作:http://blog.csdn.net/hj19870806/article/details...

2016-10-26 22:59:00 151

转载 go结构,结构嵌套,接口,指针的测试和结论

package mainimport ( "fmt")//T是M1接受者,不是实现M2接受者//*T是M1接受者,也是M2的接受者//所以T对象不可以赋值给接口对象。*T可以//结论:// 1.结构T实现接口I时,如果想通过方法改变其属性,则需要*T实现I所有方法:// 2.嵌套结构时,编译器会将子结构的属性和方法拷贝给父结构,与...

2016-10-20 23:15:00 112

转载 Mac Terminal 快捷键

在Mac系统中并没有Home、End等键,所以在使用时并不是特别的顺手,但是有几个键位组合可以使Terminal的操作更加灵活方便。1、将光标移动到行首:ctrl + a2、将光标移动到行尾:ctrl + e3、清除屏幕: ctrl + l4、搜索以前使用命令:ctrl + r5、清除当前行: ctrl + u6...

2016-10-19 09:57:00 103

转载 go基础笔记

1.slice:作为参数传递时,传递的是地址,当append时,在新的内存地址分配数据,但是没有返回给原的slice,只能通过返回值的方式赋值给slice2.func(a []int):传递,可以3.匿名函数:函数内部的声明匿名函数4.闭包:初始化,使用闭包5.defer(延迟): 1>类似析构函数,在函数执行结束后按照调用顺序,反序执行(栈) 2>即使发生严重错误也执行,前...

2016-09-27 18:10:00 161

转载 hadoop基础学习

MR系类:①hadoop生态>MapReduce:分布式处理>Hdfs:hadoop distribut file system>其他相关框架->unstructured data:收集日志 flume,scribe->structured data:sqoop hdfs与关系型数据库相互转换->OLTP:HBASE(低延时...

2016-09-27 11:34:00 77

转载 j2ee学习笔记

Servlet:①字符集问题:②身份验证:③统一的输入输出:类似母版,重写ServletResponeceWraper的getWriter,使用缓存流。 然后输出时,分析stringWriter ,重构html结构。 原因:之前的方式存在两个问题: ①目录结构混乱 ②程序可能将printwriter关闭,导致下边的输出停止。 解决方法:filter 过滤器特点:①过滤方向...

2016-09-27 11:31:00 102

转载 go开发和运行环境的配置

1.运行环境的下载、安装、配置:  下载:http://www.golangtc.com/download 官网下载经常被墙屏蔽,所以就从golang中国下载;  安装及其配置:http://jingyan.baidu.com/article/3c48dd3492fc1ee10be358d7.html2.IDE:Sublime text3  安装及其使用3.版本控制工具...

2016-09-18 22:21:00 144

转载 Java基础学习笔记

最近在学习大数据,然后就学习了一下java基础,下边是基础笔记:java学习笔记:<chp1>1>java + 类名:执行时不要带".class",否则报错。2>javac编译".java"文件时,文件中的类会被分别编译成对应的"类名.class"3>类或接口为public时,必须与文件名一样,包括大小写。一个文件只能有一个公开类或接口。<...

2016-04-07 17:54:00 106

转载 经典C/S服务器模型之守护进程

linux编程-守护进程编写守护进程(Daemon)是运行在后台的一种特殊进程。它独立于控制终端并且周期性地执行某种任务或等待处理某些发生的事件。守护进程是一种很有用的进程。Linux的大多数服务器就是用守护进程实现的。比如,Internet服务器inetd,Web服务器httpd等。同时,守护进程完成许多系统任务。比如,作业规划进程crond,打印进程lpd等。...

2016-01-11 20:01:00 138

转载 linux抓包命令-tcpdump命令详解

  最近调试支付接口的时候,遇到了一个奇怪的问题:我按照支付接口文档,对接支付通道,当消费业务正常后,调试查余和冲正的时候,支付通道的对接技术告诉我,系统没有我们支付系统的请求报文,数据库和日志中都没有,我查看我们系统已经将报文想消费报文那样发给同一台服务器。后来想了想是不是他们的服务器是集群服务,业务处理不在一台服务器上,或者防火墙包过滤掉了,后来经过确认排除这些原因。  静下心想...

2016-01-11 10:48:00 172

转载 PostgreSQL的HA解决方案-2负载均衡(load balance)

一.部署说明1.1实施环境本文档实验环境如下:PGSQL主机:192.168.1.45PGSQL备机:192.168.1.50软件和系统版本Pgsql版本:pgsql9.2.4Linux版本:Redhat 5.8pgpool版本:pgpool-II version 3.3.4 (tokakiboshi)1.2 文档说明  ...

2015-09-18 20:01:00 498

转载 PostgreSQL的HA解决方案-1主从和备份(master/slave and backup)

一.部署说明1.1实施环境本文档实验环境如下:PGSQL主机:192.168.1.45PGSQL备机:192.168.1.50软件和系统版本Pgsql版本:pgsql9.2.4Linux版本:Redhat 5.81.2 文档说明  本文档详细说明了PG的双机扩展,使pgsql数据库具备双机热备流复制功能。注意,双机热备中存...

2015-09-18 13:37:00 559

转载 PostgreSQL的HA解决方案-项目概述

  公司使用的数据库时postgresql,一直运行都很流畅,但是最近java新做的管理平台,由于登录用户较多,并发性比较大。另外新系统可能优化也存在问题,所以pg经常崩溃,所以我就开始研究如何事项pg的高性能,高可用的HA的数据库集群解决方案。主要思路是利用postgresql自带的流复制功能,来实现了双机热备,利用pgpool实现数据库的负载均衡、失败接管、在线回复、消除单点故障,从...

2015-09-18 12:22:00 376

转载 读书笔记:《你的知识需要管理》

数据、信息、知识三者关系》数据在信息中才有意义》信息需要在知识处理后才有意义》知识需要处理信息,否咋没有意义。知识得不到利用就没有价值隐形知识、显性知识》显性知识结合自己形成自己的隐形知识》总结、实践、利用知识才能形成新的显性知识》传播显性知识,才能学到其他人的显性知识知识管理(螺旋前进)[理念①、方法②、工具③]学习知识-》保存知识-》知识的共享与传播-》知识的利用-》创新学习知识:①...

2015-09-16 11:39:00 118

转载 linux系统管理-软件包管理

概述:    inux家族中的软件包管理有很多工具.  一种是在debiton系列的linux中,以像ubuntu的apt-get为代表。对于此种方式的管理方式,个人感觉挺简单方便的,  一种是在Fedora和RedHat以及SUSE中,以YUM为代表。这种包管理,因为现在是在redhat的环境中,不太熟悉,今天就总结一下。概念:  yum(全称为 Yellow...

2015-09-11 11:25:00 103

转载 linux系统设置-防火墙

基础知识  Linux系统内核内建了netfilter防火墙机制。Netfilter(数据包过滤机制),所谓的数据包过滤,就是分析进入主机的网络数据包,将数据包的头部数据提取出来进行分析,以决该连接为放行或阻挡的机制。Netfilter提供了iptables这个程序来作为防火墙数据包过滤的命令。Netfilter是内建的,效率非常高。我们可以通过iptables命令来设置netf...

2015-09-11 10:42:00 251

转载 linux kernel 0.11 head

  head的作用注意:bootsect和setup汇编采用intel的汇编风格,而在head中,此时已经进入32位保护模式,汇编的采用的AT&T的汇编语言,编译器当然也就变成对应的编译和连接器了,很多汇编指令右侧都会多l,如or变成orl却别与实模式的汇编指令。①设置中断描述符表:  》中断描述符表设置为256个项,初始化指向ignore_int中断门。然后加载中断...

2015-08-25 15:20:00 119

转载 linux kernel 0.11 setup

setup作用①读取参数放在0x90000处。②将原本在0x10000处的system模块移至0x00000处③加载中断描述符表,全局描述符表,进入32位保护模式。概念关于实模式和保护模式区别及寻址方式,该博客已经很详尽:http://blog.csdn.net/rosetta/article/details/8933200,只是有个别信息没有。IDT:In...

2015-08-24 17:27:00 116

转载 linux kernel 0.11 bootsect

bootsect作用①将自己移动到0x90000处②将setup从磁盘读到0x90200处③将system从磁盘读到0x10000处寄存器汇编代码中存在:数据段data seg  栈段 stack seg汇编代码中的寄存器概念:第一组:  DS:数据段寄存器  ES:额外数据段寄存器  SS:栈段寄存器     SI...

2015-08-23 11:54:00 97

转载 Linux环境下的编译,链接与库的使用

参考博客:http://www.cnblogs.com/qytan36/archive/2010/05/25/1743955.htmlhttp://m.blog.csdn.net/article/details?id=24421919一、GCC编译C源码有四个步骤:预处理-----> 编译 ----> 汇编 ----> 链接  四阶段作用:(对应文...

2015-08-21 11:23:00 131

转载 struct的成员对齐问题-结构体实际大小问题

struct的成员对齐注意:为了方便说明,等号左边是每个数据单独所占长度,右边是最终空间大小,以字节为单位。一、什么时间存在对其问题:(32位机对齐方式是按照4字节对其的,以下所有试验都是在32位机上验证的)  当结构体成员数据按照其顺序组合,无法按4字节对齐时,存在对其问题。  如:    1+1=2;    1+2=3;    1+2+1=4(而不是6或者...

2015-07-31 11:38:00 125

转载 linux内核设计与实现学习笔记-模块

模块1、概念: 如果让LINUX Kernel单独运行在一个保护区域,那么LINUX Kernel就成为了“单内核”。 LINUX Kernel是组件模式的,所谓组件模式是指:LINUX Kernel在运行时,允许“代码”动态的插入或者移出Kernel。 所谓模块是指:相关的一些子程序,数据、入口点和出口点共同组合成的一个单一的二进制映像,也就是一个可装载的Kern...

2015-07-17 12:24:00 148

转载 Linux内核学习笔记——VFS

概念:  ①硬链接:若一个 inode 号对应多个文件名,则称这些文件为硬链接。即硬链接就是同一个文件使用了多个别名。硬链接可由命令 link 或 ln 创建。其特性:文件有相同的 inode 及 data block;只能对已存在的文件进行创建;不能交叉文件系统进行硬链接的创建;不能对目录进行创建,只可对文件创建;删除一个硬链接文件并不影响其他有相同 i...

2015-07-14 09:23:00 110

转载 Linux内核学习笔记——内核内存管理方式

一 页 内核把物理页作为内存管理的基本单位;内存管理单元(MMU)把虚拟地址转换为物理地址,通常以页为单位进行处理。MMU以页大小为单位来管理系统中的也表。 32位系统:页大小4KB 64位系统:页大小8KB内核用相应的数据结构表示系统中的每个物理页:  <linux/mm_types.h>  struct pa...

2015-07-13 11:23:00 112

转载 linux kernel同步机制的思考

  在学习内核同步机制的时候,书中介绍了同步方法:原子操作(atomic)、自旋锁(spinlock)、信号量(semaphore)、互斥锁(mutex)、完成变量(completion)、大内核(BLK)、顺序锁(seqlock)、禁止抢占(preempt)、顺序与屏障(mb).面对如此多的同步机制,希望自己可以弄清这些机制的使用场合。  首先明白一些概念: ①进程可以被中断处...

2015-07-08 09:52:00 80

转载 非阻塞方式connect编程

参考博客:①setsockopt()函数使用详解:http://blog.csdn.net/tody_guo/article/details/5972588②setsockopt :SO_LINGER 选项设置:http://blog.csdn.net/factor2000/article/details/3929816③TIME_WAIT状态的作用:http://www.c...

2015-05-26 15:01:00 210

转载 ubuntu crontab 定时备份postgres数据库并上传ftp服务器

最近公司要求备份数据库,所以就查了比较作的资料。废话不多说,入正题。目的:定期备份ubuntu下的postgres数据库,打包上传到指定ftp服务器。经过查找资料,解决方法:①编写备份数据库、打包压缩、上传指定ftp的脚本。②将该脚本加入到ubuntu定期计划任务crontab中。下边是执行的步骤:①编写shelll脚本:bk.sh,对于对shell脚本不了解的,...

2015-05-24 21:09:00 176

转载 关于动态链接库与静态链接库

简介1. 静态函数库 这类库的名字一般是libxxx.a;利用静态函数库编译成的文件比较大,因为整个 函数库的所有数据都会被整合进目标代码中,他的优点就显而易见了,即编译后的执行程序不需要外部的函数库支持,因为所有使用的函数都已经被编译进去了。当然这也会成为他的缺点,因为如果静态函数库改变了,那么你的程序必须重新编译。2. 动态函数库 这类库的名字一般是lib...

2015-05-21 14:39:00 317

转载 Postgresql命令行和数据库备份与恢复

进入Postgresql1 进入数据库默认安装会创建postgres 用户,,使用postgres用户,psql命令会直接进入数据库:Bash代码 $ su postgres //psql用户 $ psql //默...

2015-05-20 18:50:00 1178

转载 makefile复习时发现的编写makefile规则注意事项

博客中关于makefile的博文数不胜数,比较经典的都很相似,下面这一片,很全面,只是很长,可以作为参考资料:http://blog.csdn.net/liang13664759/article/details/1771246。①makefile格式,即规则。②makefile工作原理,即栈式编译和更新。注意cc时,当前行最前边必须是tab。③makefiel变量的使用。...

2015-05-20 18:40:00 119

转载 应聘复习基础笔记1:网络编程之TCP与UDP的优缺点,TCP三次握手、四次挥手、传输窗口控制、存在问题...

一、TCP与UDP的优缺点①TCP---传输控制协议,提供的是面向连接、可靠的字节流服务。当客户和服务器彼此交换数据前,必须先在双方之间建立一个TCP连接,之后才能传输数据。TCP提供超时重发,丢弃重复数据,检验数据,流量控制等功能,保证数据能从一端传到另一端的可靠传输。对可靠性要求较高的应用层协议,如FTP、Telnet、SMTP、HTTP、POP3②UDP---用户数据...

2015-04-16 10:50:00 121

转载 js IDE WebStorm 注册码

webStorm :UserName:William===== LICENSE BEGIN =====45550-1204201000001SzFN0n1bPII7FnAxnt0DDOPJAINauvJkeVJBuE5bqLEznccE4tet6trRiyoMxDK8oDY93tx!ipPyGmqYYeWxS===== LICENSE END =====UserName:...

2015-03-19 12:22:00 121

转载 mysql学习笔记之基础篇

数据库学习之基础篇① 开放数据库互连(OpenDatabaseConnectivity,ODBC② 结构化查询语言(StructuredQueryLanguage)③ 进入mysql:Mysql-ucz-pcz;④ 显示系统的database:showdatabases;⑤ 创建database:createdatabase名字;⑥ 选择d...

2015-02-03 20:34:00 61

转载 c++继承详解

C++中的三种继承public,protected,private三种访问权限public:可以被任意实体访问protected:只允许子类及本类的成员函数访问private:只允许本类的成员函数访问三种继承方式public继承protect继承private继承组合结果基类中继承方式子类中public&publi...

2015-01-31 16:40:00 56

转载 虚表的形成

一切结论都必须以事实为依据,这样才能形成长久记忆!虚表的形成过程:一、对于非继承类而言:编译器会根据类中是否有虚函数产生虚表,如果有虚函数,则会形成虚表,虚表中会按照成员函数声明顺序存放函数的地址,从而形成存放函数入口地址的函数指针数组,最后把数组地址存放在类的开始的位置,只一个指针的大小。二、对于继承类而言:对于单继承,如果父类中有虚函数表,则编译器编译时,会把父类的虚表赋...

2015-01-31 16:30:00 162

转载 c++关于虚表 图文并茂 不只是概念

http://blog.csdn.net/haoel/article/details/1948051/转载于:https://www.cnblogs.com/cz-blog/p/4246194.html

2015-01-24 17:51:00 53

转载 linux module

insmod 是靠一个在kernel/module.c里定义的系统调用来实现的。1. 此系统调用(sys_init_module )分配内核存储空间(kernel memory)给相关的模块,这个内存分配动作是由vmalloc完成;2. 然后将该模块内容拷贝到这块存储空间里;3. 接着声明内核引用该模块;4. 呼叫该模块的初始化涵数这样,一个插入模块的过程就完成了。...

2014-12-31 11:06:00 108

转载 c位段

假如程序表示四盏灯的开关状态灯只有开或关两种状态所以用1和0就可以表示为了节省内存就用一个二进制位表示一盏灯这里就定义位域用 a b c d 各表示一盏这里定义时注意选用无符号类型位域允许用各种格式输出其他的和结构类型使用基本相同注意一点就是一个位域不能跨字节,长度不能大于一个字节#include <stdio.h>#include <conio.h>typede...

2014-12-30 19:35:00 82

空空如也

空空如也

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

TA关注的人

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