博客关而复开

前段时间密码泄露,账户丢了。 导致自己博客连绵很多非法的盗链,但是自己比较懒,今天才发现博客被封禁了。 联系客服,还好咱们csdn的客服还是很赞的,很热心的帮忙清理了博客解封博客。 非常感谢! 接下来的一年,要多积累了。 博客荒芜的不行了。。。

2015-02-16 16:46:26

阅读数 741

评论数 1

定制mapreduce输出

这里以redis数据库为例。 这里的例子是,我想统计日志文件中的某天各个小时的访问量,日志格式为: ? 1 2014-02-10 04:52:34 127.0.0.1 xxx 我们知道在...

2014-11-02 14:22:24

阅读数 649

评论数 0

hbase MapReduce程序样例入门

1、先看一个标准的hbase作为数据读取源和输出源的样例: View Code JAVA 1 2 3 4 5 6 7 8 Configuration conf = HBaseConfiguration.create(); Job job = new Jo...

2014-11-02 13:43:07

阅读数 488

评论数 0

Sendfile Linux 系统中的零拷贝

如今几乎每个人都听说过Linux中所谓的"零拷贝"特性,然而我经常碰到没有充分理解这个问题的人们。因此,我决定写一些文章略微深入的讲述这个问题,希望能将这个有用的特性解释清楚。在本文中,将从用户空间应用程序的角度来阐述这个问题,因此有意忽略了复杂的内核实现。 什么是”零拷...

2014-09-30 15:30:06

阅读数 838

评论数 0

SkipList

SkipList是链表的一种,是有序单向链表的一种改进,使用跳表可以将查询操作的复杂度控制到O(lg n),而普通的链表只能通过顺序查找,复杂度为O(n),如此跳表的优势就很明显了,虽然它是通过以空间换时间搞定的。 它实现起来简单,而且查找效率高,因此被一些数据库应用采纳为底层的数据结构,比...

2014-09-14 15:49:53

阅读数 958

评论数 0

Linux协议栈accept和syn队列问题

环境:        Client 通过tcp 连接server,server端只是listen,但是不调用accept。通过netstat –ant查看两端的连接情况。 server端listen,不调用accept。 client一直去connect server。 ...

2014-08-23 20:38:32

阅读数 784

评论数 0

SQL常见的可优化点

###################################################    # 索引相关    # ###################################################    1. 查询(或更新,删除,可以转换为...

2014-08-23 20:15:08

阅读数 409

评论数 0

cache 缓存算法

LRU(Least Recent Used)是我们在cache替换算法中最普遍使用的算法,在缓存块已满,而需要缓存新的数据块的时候,这时需要从缓存中找到一个“没有价值”的块用新的数据块去替换它。 Cache有两个问题:一个是前面提到的降低锁粒度,另一个是提高精准度,或者称为提高命中率...

2014-08-23 19:41:20

阅读数 1485

评论数 0

将登博整理的较好的博客拿来,留个底

前段时间,我在微博上分享了自己订阅的博客Feeds,一共有200个左右,内容覆盖多个领域,包括有:Database(MySQL、Oracle、PostgreSQL),Programming,Distributed Systems,Systems 等。俗话说,过犹不及,太多的选择,往往意味着没有选择...

2014-08-11 18:08:10

阅读数 656

评论数 0

C/C++ Volatile关键词深度剖析

背景 前几天,发了一条如下的微博 (关于C/C++ Volatile关键词的使用建议): 此微博,引发了朋友们的大量讨论:赞同者有之;批评者有之;当然,更多的朋友,是希望我能更详细的解读C/C++ Volatile关键词,来佐证我的微博观点。而这,正是我写这篇博文的初衷:本...

2014-08-11 17:12:39

阅读数 489

评论数 0

tcp 连接关闭详解

注:tcp关闭连接不区分客户端和服务端,哪一端口可以主动发起关闭连接请求。所以为了描述方便,描述中的“主动方”表示主动发起关闭连接一方,“被动方”表示被动关闭连接一方。 1. tcp关闭连接状态转换   上图是tcp连接主动关闭端的状态转换图: (1)应用层...

2014-07-13 16:48:51

阅读数 988

评论数 0

从TCP协议的原理来谈谈rst复位攻击

在谈RST攻击前,必须先了解TCP:如何通过三次握手建立TCP连接、四次握手怎样把全双工的连接关闭掉、滑动窗口是怎么传输数据的、TCP的flag标志位里RST在哪些情况下出现。下面我会画一些尽量简化的图来表达清楚上述几点,之后再了解下RST攻击是怎么回事。 1、TCP是什么? TCP是...

2014-03-04 08:44:29

阅读数 559

评论数 0

linux c 进程跟踪工具:strace、ltrace、truss

strace命令详解 strace 命令是一种强大的工具,它能够显示所有由用户空间程序发出的系统调用。   strace 显示这些调用的参数并返回符号形式的值。strace 从内核接收信息,而且不需要以任何特殊的方式来构建内核。   下面记录几个常用 option .   1 -f -F选项告诉s...

2014-02-28 15:56:17

阅读数 933

评论数 0

高性能网络编程七--tcp连接的内存使用

当服务器的并发TCP连接数以十万计时,我们就会对一个TCP连接在操作系统内核上消耗的内存多少感兴趣。socket编程方法提供了SO_SNDBUF、SO_RCVBUF这样的接口来设置连接的读写缓存,linux上还提供了以下系统级的配置来整体设置服务器上的TCP内存使用,但这些配置看名字却有些互相冲突...

2014-02-19 11:44:52

阅读数 755

评论数 0

python 自动补全

1. 设置"PYTHONSTARTUP"环境变量   root@localhost:~$ cat .bashrc ... # setting python env PYTHONSTARTUP='/root/.pythonstartup' ex...

2014-02-17 21:23:53

阅读数 783

评论数 0

网络编程中重要函数总结:如何判断socket关闭

1、阻塞模式与非阻塞模式下recv的返回值各代表什么意思?有没有区别?(就我目前了解阻塞与非阻塞recv返回值没有区分,都是 0接收到数据大小,特别:返回值 2、阻塞模式与非阻塞模式下write的返回值各代表什么意思?有没有区别?(就我目前了解阻塞与非阻塞write返回值没有区分,都是 0发送...

2014-02-11 11:15:41

阅读数 3459

评论数 0

位运算总结及应用

一、C语言的六种位运算符: & 按位与 | 按位或 ^ 按位异或 ~ 取反 左移 >> 右移   1.   按位与运算 按位与运算符"&"是双目运算符。         其功能是参与运算的两数各对应的二进位相与。只有对应的两个二进...

2014-01-17 12:12:32

阅读数 612

评论数 0

高性能网络编程六--reactor反应堆与定时器管理

反应堆开发模型被绝大多数高性能服务器所选择,上一篇所介绍的IO多路复用是它的实现基础。定时触发功能通常是服务器必备组件,反应堆模型往往还不得不将定时器的管理囊括在内。本篇将介绍反应堆模型的特点和用法。 首先我们要谈谈,网络编程界为什么需要反应堆?有了IO复用,有了epoll,我们已经可以使服务...

2013-12-26 18:24:56

阅读数 677

评论数 0

高性能网络编程五--IO复用与并发编程

对于服务器的并发处理能力,我们需要的是:每一毫秒服务器都能及时处理这一毫秒内收到的数百个不同TCP连接上的报文,与此同时,可能服务器上还有数以十万计的最近几秒没有收发任何报文的相对不活跃连接。同时处理多个并行发生事件的连接,简称为并发;同时处理万计、十万计的连接,则是高并发。服务器的并发编程所追求...

2013-12-12 09:00:50

阅读数 866

评论数 0

linux shell 将多行文件转换为一行

说实话,虽然对shell编程包括awk有所了解,但是对sed的多行与一行的处理还是不甚理解,在网上搜罗了一篇文章觉得还不错,记录一下:     今天一个工程师问我,怎么将一个文件中的多行转换成一行。       我给出了如下三种方法:       1. 采用awk ...

2013-12-11 16:27:06

阅读数 47218

评论数 1

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