自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(78)
  • 资源 (4)
  • 收藏
  • 关注

原创 【linux】操作系统的事件通知机制eventfd

简单介绍linux中事件通知的机制和代码样例。

2022-07-04 17:07:33 1887 1

原创 【设计模式】抽象工厂

工厂模式与抽象工厂模式区别,抽象工厂模式使用场景

2022-05-04 17:54:50 568

原创 vscode如何安装自己下载的插件文件

vscode vsix

2022-04-25 15:06:33 7261 1

原创 【MySQL】MySQL乱码全面解析

mysql乱码初探

2022-04-10 11:10:42 650

原创 【nginx】nginx常见配置location转发与upstream负载均衡

nginx配置 location 转发 upstream 负载均衡

2022-04-10 11:09:34 2581

原创 【c++】c++常见关键词const、static、extern、explicit含义

const、extern、static、explicit

2022-04-09 20:17:33 1315 1

原创 【渲染引擎】cairo介绍

cairo是轻量级的渲染2D引擎,可以根据坐标输出常见的图片格式,或者pdf格式。cairo还支持多种编程语言的接入和多种第三方插件的调用。本文简单给出一个简单的绘制图形教程,快速的了解如何绘制简单的文字、线条和文本

2017-03-29 15:47:08 2589

原创 动态规划在算法中的应用

DP(Dynamic programming)动态规划是一种在算法中经常使用到的思想,它经常使用在寻找最优解的算法中被使用到这种方法。对于DP,注意它不是一种算法而是一种思想一种算法。除此之外,这种方法的使用场景也是集中在算法中的几种情况。 在介绍DP之前,介绍其他几种思想,首先是贪心。 贪心是讲在当前选择中要挑选一种最优的,这样累加到最后,结果就是最优的。在大多数情况下,寻找最优解中贪心算法的

2016-08-14 14:59:25 2176

原创 【渲染引擎】agg画线介绍

对于agg的字体进行了一个很简单的介绍,下面就再对agg的画线进行一个简单的说明。 首先对于画线来说,有几种线条比如普通线, 虚实线,点阵状的线条。agg对于每种线条都有支持。另外对于线条的起始的结束样式也有几种,这个属性一般都是以linecap来标识。只有绘制较宽线段时,它才有效。这个属性的合法值如下表所示。默认值是:”butt”。“butt” 这个默认值指定了线段应该没有线帽。线条的末点是

2016-07-21 14:30:34 1603

原创 【渲染引擎】agg字体介绍

agg字体可以使用第三方字体库,比如Freetype或者window下的字体。当你选择使用某种字体的时候,就必须把相应字体的头文件包含进去。 #include <agg_font_win32_tt.h> //for window #include <agg_font_freetype.h> //for freetype这里只介绍如何使用freetype。freetype是一个字体库,现在freet

2016-06-28 13:59:25 1378

原创 【渲染引擎】agg介绍

AGG是一款功能非常强大的渲染引擎。它使用标准的C++和基本的C函数实现,但是它并没有使用C++里的一些模版函数,因此AGG可以在很多场合下使用,甚至在一些端和嵌入式开发中也可以使用。AGG也可以用在web服务端,你可以在服务端渲染出一个图片返回给客户端,AGG支持各种格式的数据,具有很好的跨平台性。 AGG的设计理念也是基于插件式的开发模式,所以在AGG的使用中,你可以使用任何其他第三方库。比如

2016-06-28 11:11:58 4935 1

原创 【socket】socket介绍-socket与http服务通信

之前几篇文章都是介绍了socket的基础知识,包括socket的TCP/IP协议栈,socket的服务端集中常见的实现模式,还有对于socket在内核中都是如何支持和实现的。这篇文章就讲解socket的使用,通过socket来模拟http请求。

2015-12-20 12:20:04 3722

原创 【Redis】redis介绍-启动过程

通过阅读源码,对redis的启动过程进行跟踪,对redis启动的时候,各种事件的绑定进行介绍,

2015-12-13 10:16:49 2027

原创 【nginx】nginx介绍-信号处理

nginx是通过master进程和worker进程进行工作提供服务的模式。master进程主要用来监听worker进程状态进行相应的重启、停止等操作;worker进程则进行具体的提供服务,接受和处理请求。在master和worker进程之间的通信则是通过信号的方式。这篇文章就讲述我们在运维和使用nginx的时候,对于几种常用的信号nginx是如何处理的。

2015-11-15 18:55:34 3139

原创 【socket】socket介绍-socket深入内核解析

之前有篇文章讲解了socket服务开发模式:1、阻塞式-每次只接受一个请求,处理结束才接受下一个请求; 2、多进程-每次请求来了启动一个进程或者线程,来处理该请求; 3、IO复用模式-主要包括select模式、epoll模式 这篇文章就主要通过深入内核,讲述操作系统在创建socket、接受和处理请求的时候究竟进行了哪些操作。

2015-10-28 17:04:05 3720

原创 【Linux】linux下zlib压缩与crc32校验

对crc32进行了介绍,对于zlib解压缩库中的crc32的实现给出简单讲解。通过代码示例,给出了在zlib中解压缩数据和crc32结合使用。

2015-08-31 14:35:41 7891

原创 【nginx】nginx介绍-集成lua

之前的开发中是采用了nginx+wsgi+python的架构方案,发现其实这种实现方式也有一定的弊端。对于服务来说没有复杂的逻辑,所以采用了nginx+lua,直接访问redis的方案。

2015-07-20 20:42:12 2141

原创 【Linux】Linux下同步数据scp与rsync

对于linux之间数据同步的几种命令scp、rsync、rcp进行讲解,详细说明了rsync的原理和使用。

2015-05-13 18:02:06 6715 1

原创 【Python】迭代器(iterator) vs 生成器(generator)

对python中的迭代器(iterator) vs 生成器(generator)之间的区别和应用进行介绍。

2015-04-13 16:03:03 8450 2

原创 【Redis】redis介绍-订阅推送(pub/sub)模式

所谓pub/sub模式,是消息通讯的一种,它和消息队列在一定程度上有相似之处。pub/sub模式通过订阅与发布模式来解耦两个相互依赖的模块。本文通过对redis提供消费订阅模式的代码示例,对pub/sub模式给出简单的介绍。

2015-03-29 09:56:06 13015

原创 【socket】socket介绍-linux下socket常见开发模式

socke系列文章中第二骗,讲解在linux下集中常见的socket的服务端开发莫模式。socket通信根据协议划分可分为基于流的TCP通信和基于数据报的UDP通信。两个协议之间的区别大家都知道一个是面向连接一个是面向无连接的。通过对socket服务端简单实现、多进程实现、IO多路复用模式实现,对socket开发由浅入深介绍。

2015-01-22 21:21:32 2618

原创 【Python】Python中的多线程与多进程

在python中有两个库多进程和多线程相关,一个是threading关于多线程,另外一个是processing是多进程。

2014-08-09 19:03:50 7447 1

原创 【Python】windows下Eclipse中安装集成webpy框架

这篇文章主要讲述的是在Windows下,在eclipse中如何构建python的web端开发环境,主要包括eclipse下python插件的安装、webpy的安装、数据库链接MySQLdb的安装、ORM框架sqlalchemy的安装。

2014-04-30 11:28:05 3015 1

原创 【MySQL】Windows中MySQL安装全指南

写这篇文章的目的主要是自己安装了几次,但是每次有些步骤都必须再查询才能知道怎么去做,所以这次索性自己把每个细节都记录下来,以后再安装的时候就不必再四处查询。其他人在安装的时候也可以在一篇文章中找到所有需要注意的地方和步骤。  在windows中安装有两种方式,一个是解压压缩包,另外一个是以exe执行文件的方式安装。因为解压文件方便安装,且删除也比较容易,所以很多时候都是在用解压文件的方式进行安

2014-03-14 17:04:56 1304

原创 【Hadoop】YARN详解与安装指南

YARN是hadoop的第二代,一个更加请打的分布式集群。相比较hadoop一代,yarn提供了更加清晰的程序架构和资源管理,让资源管理和任务管理隔离开来。在架构和代码上更加的清晰。文章介绍了yarn的详细安装步骤和遇到的问题。

2014-02-21 15:19:37 9696 2

原创 【Java】ClassLoader源码全面解析java类加载机制

对于java类加载机制,是Java的比较重要的基础知识,也是笔试面试中被经常提及的一个问题。这篇文章就从头到尾全面剖析java类加载的全部细节。  代码的生命周期  在讲解java类加载机制的时候必须要首先知道的是,java类加载的时候加载的是什么。谈到这里又不得不谈论整个java文件从编写到运行整个的生命周期。其实所有的编程语言都是要经历下面这几个阶段,可能有的编译器会把几个解读合并

2014-01-09 10:04:34 2805

原创 分布式计算框架综述

本来是发表到科技论在线的,谁知道被退稿了,那就发到这里来吧。0      引言随着互联网的发展,web2.0时期[1]的到来,人类正式进入了信息爆炸时期的。海量的信息在很多应用都会出现,比如一些社交网络应用中记录用户行为日志通常都是以GB甚至是TB为单位的。常规的单机计算模式已经不能支撑如此巨大的数据量。所以,计算必须以分布式的把巨大的计算任务分成小的单机可以承受的计算任务

2014-01-02 10:25:45 22516 7

转载 【MySQL】MySQL读写加锁深入分析

1    背景    11.1    MVCC:Snapshot Read vs Current Read    21.2    Cluster Index:聚簇索引    31.3    2PL:Two-Phase Locking    31.4    Isolation Level    42    一条简单SQL的加锁实现分析    52.1

2013-12-14 11:36:13 6460 1

原创 【Python】Python http编程:urllib包与http包详解

python自3.x版本推出之后,web端的编程更加方便。基于http编程主要使用的包有两个,一个是和url请求返回相关的urllib,另外一个是http库

2013-12-13 13:52:29 6987 2

原创 【MySQL】MySQL常用操作集合

对于MySQL中常用命令的总结。数据库的创建、修改;表的创建、修改;列的创建、修改;触发器相关操作。

2013-10-28 14:58:22 3033

原创 【socket】socket介绍-TCP协议

本篇是socket介绍中的第一篇,主要讲述基础的TCP/IP协议。TCP/IP应该算得上是网络七层协议中最重要的两个协议,一个负责传输层的数据传输,一个负责网络层的数据传输。文章主要讲解TCP/IP的协议,链接、断开过程。

2013-10-17 11:31:27 1881

原创 切词分词之判断字符串是否能够拆分为字段中的单词

给定字符串,以及一个字典,判断字符串是否能够拆分为字段中的单词。给出递归和DP解决办法

2013-10-15 19:50:49 2979

原创 centos源码安装多线程memcached multi-threaded

本来好好的使用的memcached的,突然要修改成支持多线程。对于memcached默认是只使用一个线程的,也就是说所有的请求都是通过一个线程来响应请求。如果想要memcached支持多线程,则必须在编译的时候就说明。本文就介绍了如何在编译的时候指定多线程编译和当中遇到的问题。

2013-10-15 11:48:29 1924

原创 2014校园招聘各大公司笔试题目

校招各大公司笔试面试题目,包括腾讯,百度,阿里,完美,有道等各大公司的算法题目,给出简单介绍和部分实现。包括字典序的下一位置,括号是否匹配,链表相关问题、最短摘要的介绍。

2013-10-14 11:31:47 1224

转载 【算法与数据结构】红黑树从浅入深详解

1 R-B Tree简介    R-B Tree,全称是Red-Black Tree,又称为“红黑树”,它一种特殊的二叉查找树。红黑树的每个节点上都有存储位表示节点的颜色,可以是红(Red)或黑(Black)。红黑树的特性:(1)每个节点或者是黑色,或者是红色。(2)根节点是黑色。(3)每个叶子节点(NIL)是黑色。 [注意:这里叶子节点,是指为空(NIL或NULL)的叶子节点

2013-10-01 13:24:54 3869

原创 【Linux】Linux中Swap与Memory内存简单介绍

Linux的很多设计与考虑也是非常独特,对性能也产生了巨大的提升。这篇文章介绍一下Linux中swap与memory。

2013-09-26 17:02:18 59064 4

原创 【MySQL】MySQL中针对大数据量常用技术

如今随着互联网的发展,数据的量级也是撑指数行的增长,从GB到TB到PB。对数据的各种操作也是愈加的困难,传统的关系性数据库已经无法满足快速查询与插入数据的需求。所以对数据库的优化就势在必行。包括对查询的、数据转移的优化。索引、缓存的建立。

2013-09-24 14:01:40 14450

原创 【虚拟机】虚拟化技术以及KVM、QEMU与libvirt介绍

虚拟机主要分为对硬件的虚拟和对操作系统或者对软件的虚拟。在硬件虚拟化这个层面,又有三种不同的技术:1)Full Virtualization(全虚拟化),Partial Virtualization(部分虚拟化),Paravirtualization(半虚拟化);2)网卡的虚拟

2013-08-30 17:03:20 27833 3

原创 【Hadoop/Hbase】centos上安装并设置Snappy/LZO压缩方式

在hadoop和hbase文件传输可以在压缩之后在进行传输,这样就可以在传输的时候减少传输数据,增大I/O和带宽效率。在hadoop中主要提供了三种压缩方式Gzip、LZO、Snappy三种数据压缩。后面两种需要额外的配置和安装依赖。但是,在hadoop中默认都已经实现接口。

2013-07-30 18:46:23 8376

原创 【数据结构】Trie树的相关介绍与实现

Trie树是前缀树,通常使用在字符串检索,经典使用场景是在搜索提示中对用户搜索词的提示。可以参考wiki

2013-07-28 15:01:11 1414

MYSQL字符集与乱码问题分析

详细介绍了字符编码的渊源,解释了MySQL中字符编码

2013-09-16

jsoup源码与文档

jsoup一个强大的解析html的工具,工具包里jar与源码还有文档,一应俱全

2013-07-19

hadoop-core-1.0.2-modified.jar

对hadoop-core进行重新编译,适合windouw下开发hadoop的jar

2013-06-24

hbase - api

hbase api。如果下载之后无法打开。请右键文件 - 属性 - 单击解除锁定,然后就可以打开文件了

2013-03-16

空空如也

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

TA关注的人

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