自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

转载 多线程和多进程模型的选用

http://www.cnblogs.com/me115/p/4866115.html多线程和多进程模型的选用这里的线程指通过linux的pthread_create而产生的原生线程,线程资源很宝贵,能被操作系统的任务调度器看见的(不是python gevent、go gorouine里的概念); 我们讨论以下两种模型;多进程单线程模型(以下简称为多

2015-12-31 16:19:13 4652

转载 struct linger 用法

http://www.cnblogs.com/caosiyang/archive/2012/03/29/2422956.htmlLinux下tcp连接断开的时候调用close()函数,有优雅断开和强制断开两种方式。那么如何设置断开连接的方式呢?是通过设置socket描述符一个linger结构体属性。linger结构体数据结构如下: #include

2015-11-09 20:54:27 6153

转载 Socket选项概览

http://www.cnblogs.com/ggjucheng/archive/2012/02/17/2355874.html前言socket选项主要是由setsockopt和getsockopt函数完成的,这里主要是记录我自己常用的一些socket选项。函数原型int getsockopt(int sockfd, int level, int opt

2015-11-06 16:35:23 4900

转载 getaddrinfo()详解

http://www.cppblog.com/sleepwom/archive/2010/07/02/119136.aspxIPv4中使用gethostbyname()函数完成主机名到地址解析,但是该API不允许调用者指定 所需地址类型的任何信息,返回的结构只包含了用于存储IPv4地址的空间。为了解决该问题,IPv6中引入了getaddrinfo()的新API,它是 协议无

2015-10-20 15:55:51 4169

转载 基本的TCP编程

http://www.cnblogs.com/xing901022/p/3523910.htmlint socket(int family,int type,int protocol);family:AF_INET ipv4协议AF_INET6 ipv6协议AF_LOCAL unix域协议AF_ROUTE 路由套接口

2015-09-29 17:45:53 4250

转载 MySQL DBA面试全揭秘

http://imysql.com/2015/09/11/how-about-mysql-dba-interview.shtml本文起源于有同学留言回复说想了解下MySQL DBA面试时可能涉及到的知识要点,那我们今天就来大概谈谈吧。MySQL DBA职位最近几年特别热门,不少朋友让我帮忙推荐什么的,也有很多公司找不到合适的DBA。原因很简单,优秀的人才要么被大公司

2015-09-24 13:28:19 5256

转载 memcached面试题集锦

这里收集了经常被问到的关于memcached的问题 * memcached是怎么工作的? * memcached最大的优势是什么? * memcached和MySQL的query cache相比,有什么优缺点? * memcached和服务器的local cache(比如PHP的APC、mmap文件等)相比,有什么优缺点? * memcached的cache机制是怎样的?

2015-08-21 17:51:02 6952

转载 浏览器缓存详解:expires,cache-control,last-modified,etag详细说明

http://blog.csdn.net/eroswang/article/details/8302191最近在对CDN进行优化,对浏览器缓存深入研究了一下,记录一下,方便后来者画了一个草图:每个状态的详细说明如下:1、Last-Modified在浏览器第一次请求某一个URL时,服务器端的返回状态会是200,内

2015-08-17 20:24:08 10947

转载 如何在 Linux 上用 IP转发使内部网络连接到互联网

来源:http://linux.cn/article-5595-1.html1. 启用 IPv4 转发首先,我们需要在我们的 Linux 操作系统上启用 IPv4 转发。要做到这点,我们需要用 sudo 模式在 shell 或终端下执行下面的命令。$ sudo -s# echo 1 > /proc/sys/net/ipv4/ip_forward

2015-06-15 12:02:26 4405

转载 MySQL性能优化的21个最佳实践 和 mysql使用索引

http://www.cnblogs.com/daxian2012/articles/2767989.html今天,数据库的操作越来越成为整个应用的性能瓶颈了,这点对于Web应用尤其明显。关于数据库的性能,这并不只是DBA才需要担心的事,而这更是我 们程序员需要去关注的事情。当我们去设计数据库表结构,对操作数据库时(尤其是查表时的SQL语句),我们都需要注意数据操作的性

2015-04-22 15:01:49 4216

转载 MySQL索引背后的数据结构及算法原理

http://blog.jobbole.com/24006/摘要本文以MySQL数据库为研究对象,讨论与数据库索引相关的一些话题。特别需要说明的是,MySQL支持诸多存储引擎,而各种存储引擎对索引的支持也各不相同,因此MySQL数据库支持多种索引类型,如BTree索引,哈希索引,全文索引等等。为了避免混乱,本文将只关注于BTree索引,因为这是平常使用MySQL时主

2015-04-22 14:54:58 6147

原创 netstat用法记录

netstat -ant | awk '/^tcp/ {++state[$NF]} END {for(key in state) print key,"t",state[key]}'netstat -s | grep timestamp

2015-03-12 15:16:11 4348

原创 github相关

在github上创建好项目,然后clone到本地,修改 .git/config ,将url改为自己的用户名,比如:url = https://[email protected]/yangwenhai/esort.git//add所有文件git add ./*//提交git commit -m '提交'//更新到github上git push

2015-03-06 16:02:27 4169

原创 查看进程启动时间

ps -A -opid,lstart,etime,args|grep php-fpm|grep -v grep

2015-01-04 17:20:03 4410

转载 Erlang Programming拾零

http://cryolite.iteye.com/blog/419235receive子句的消息匹配模式:如果消息很简单,使用atom就可以描述的话,没必要使用tuple,tuple会消耗更多的内存,而且减慢了进程的处理速度。i()列出当前进程的详细信息,regs()列出所有注册进程和端口的详细信息。ets:i()列出所有ets表的详细信息。atom不会被垃圾回收

2014-12-11 19:27:52 4910

转载 Boost::asio io_service 实现分析

http://www.cnblogs.com/zhiranok/archive/2011/09/04/boost_asio_io_service_CPP.htmlBoost::asio io_service 实现分析io_service的作用io_servie 实现了一个任务队列,这里的任务就是void(void)的函数。Io_servie最常用的两个接口是po

2014-10-27 16:54:40 4169

转载 王帅:深入PHP内核(二)——SAPI探究

SAPI是Server Application Programming Interface(服务器应用编程接口)的缩写。PHP通过SAPI提供了一组接口,供应用和PHP内核之间进行数据交互。简单的讲,就像函数的输入和输出一样,我们通过Linux命令行执行一段PHP代码,本质是Linux的Shell通过PHP的SAPI传入一组参数,Zend引擎执行后,返回给shell,由shell显示出来的

2014-10-17 17:20:44 5349

转载 王帅:深入PHP内核(一)——弱类型变量原理探究

http://www.csdn.net/article/2014-09-15/2821685-exploring-of-the-phpPHP是一门简单而强大的语言,提供了很多Web适用的语言特性,其中就包括了变量弱类型,在弱类型机制下,你能够给一个变量赋任意类型的值。 PHP的执行是通过Zend Engine(下面简称ZE),ZE是使用C编写,在底层实现了一套弱类型机制

2014-10-17 16:13:22 4671

转载 Cassandra分析

http://blog.csdn.net/kirayuan/article/details/6430889一、 简介Apache Cassandra是一套开源分布式Key-Value存储系统。它最初由Facebook开发,用于储存特别大的数据。Facebook目前在使用此系统。主要特性:分布式基于column的结构化高伸展性

2014-09-23 11:28:45 5287

转载 linux shell “(())” 双括号运算符使用

在刚开始学习inux shell脚本编程时候,对于它的 四则运算以及逻辑运算。估计很多朋友都感觉比较难以接受。特变逻辑运算符”[]”使用时候,必须保证运算符与算数 之间有空格。 四则运算也只能借助:let,expr等命令完成。 今天讲的双括号”(())”结构语句,就是对shell中算数及赋值运算的扩展。 使用方法:语法:((表达式1,表达式2…))特点:1、在双

2014-08-27 16:07:22 4800

转载 linux shell 脚本实现tcp/upd协议通讯(重定向应用)

前几天发了重定向以及管道相关使用方法,今天这里发些很有趣的例子。通过重定向实现基于tcp/udp协议的软件通讯。 linux 设备里面有个比较特殊的文件:/dev/[tcp|upd]/host/port 只要读取或者写入这个文件,相当于系统会尝试连接:host 这台机器,对应port端口。如果主机以及端口存在,就建立一个socket 连接。将在,/proc/self/fd目

2014-08-27 16:02:45 1328

转载 [MySQL版本差异] 丢失frm文件之后drop database的不同结果分析

背景今天在讨论frm丢失后drop database失败的问题。简单复现如下。假设test库中有两个表t1, t2,执行如下脚本:bin/mysql -uroot -socket=run/mysql.sock   -e ”drop database if exists test2;create database test2;use test2;create tabl

2014-04-25 00:55:38 1236

转载 Redis大冒险:如何跳出SQL这个坑

摘要:随着数据体积的激增,MySQL+memcache已经满足不了大型互联网类应用的需求,许多机构也纷纷选择Redis作为其架构上的补充,然而Redis的使用门槛并不低,比如不支持SQL等,这里为大家分享Redis的使用全攻略。

2014-04-24 13:43:46 1081

转载 计算机系统—CPU结构和内部工作

http://blog.csdn.net/akkzhjj/article/details/24383809一、计算机系统硬件组成  计算机系统的基本组成由:计算器、控制器、存储器、输入和输出设备这5大核心部件组成。  运算器和控制器等继承在一起成为CPU,下面通过这张图可以很清晰的表达计算机系统,先从全局上对CPU的位置和作用有一定认识。

2014-04-24 13:18:59 1229

转载 内部排序之三:堆排序

http://blog.csdn.net/ns_code/article/details/20227303前言    堆排序、快速排序、归并排序(下篇会写这两种排序算法)的平均时间复杂度都为O(n*logn)。要弄清楚堆排序,就要先了解下二叉堆这种数据结构。本文不打算完全讲述二叉堆的所有操作,而是着重讲述堆排序中要用到的操作。比如我们建堆的时候可以采用堆的插入操

2014-04-24 13:12:19 724

转载 部署 PHP 系列,第 3 部分: 加速用于 Oracle 的 PHP 代码运行速度

http://blog.itpub.net/1384/viewspace-432929/在过去的 10 年中,PHP 已经赢得了开发人员的芳心,它即使不是 Web 开发的最流行脚本语言,也是最流行脚本语言之一。 现在它支持着 2000 多万个站点,其范围从小型主页到大型公司电子商务应用程序。 PHP 的爆炸式增长很大程度上得益于它大量易用内置功能和出色的文档,这些都大大简化

2014-04-04 15:24:06 876

原创 windows下eclipse c++配置

1、从官网上下载eclipse 带cdt的版本、安装mingw,这些步骤网上到处都是2、新建一个c++工程,一路next,注意编译器那选mingw的那个3、设置外部库的头文件     左侧工程栏目里右键项目->properties->c/c++ build ->setting->gcc c++ complier ->includes  添加路径即可     添加 外

2014-03-19 16:05:35 3265

原创 opensuse设置windows的字体

以设置 Courier New 为例:拷贝c:/WINDOWS/Fonts/cour.ttf 到一个临时目录然后在opensuse里 系统设置-》字体管理-》添加字体 即可

2013-11-18 15:17:55 2765

转载 auto_ptr、shared_ptr、weak_ptr、scoped_ptr用法小结

http://blog.csdn.net/qingcaichongchong/article/details/7554617

2013-11-08 18:54:59 1005

原创 我的sublime text 2 linux下安装

1、去它的官网下载一个linux版本:        http://www.sublimetext.com/2、然后破解一把:         http://blog.definite.name/sublime-text-2-crack-linux.html3、我的st2的安装目录如下:       /home/ywh/program/Sublime Text 2

2013-11-07 13:53:56 2877

转载 130+vim基本命令

http://wklken.me/posts/2013/08/17/130-essential-vim-commands.html从八十年代起,vi和vim在程序员中十分流行.5年前,我写了《程序员必须知道的100哥vim命令》,这是重写更新版本,希望你喜欢!基础:e filename 在编辑器中打开一个文件:w 保存文件:q

2013-11-05 18:33:59 933

原创 svn基础知识

测试服一个php文件报错,并标明了错误所在的行。但这这行不是我改的,怎么在linux下查看这行是谁修改的呢,操作步骤如下(假设文件为 Bag.class.php) :1、svn blame Bag.class.php  > /tmp/ccc2、打开这个文件,找到错误那行对应的 svn号,信息类似这样:1384  70625  孙二货

2013-10-31 17:11:42 985

原创 opensuse下利用youcompleteme补全boost库

1、安装boost 1.54,这个步骤网上到处都是,我都是默认安装,安装后的boost路径如下:ywh@linux-ywh:/usr/include/boost> pwd/usr/include/boost2、安装好vim、llvm_clang、youcompleteme,我的opensuse12.3默认安装的vim不支持python,只能卸载了从源码安装vim74

2013-10-30 13:51:18 8059

原创 opensuse下安装completeme

这玩意折腾了一下午,具体安装步骤如下:Step 1: edit .vimrc, add: Bundle "https://github.com/Valloric/YouCompleteMe.git"Step 2: open a new vim and run: :BundleInstallStep 3: cd ~/.vim/bundle/

2013-10-29 20:46:28 3174

原创 opensuse下安装llvm-clang3.3

从下面的地址下载文件:http://llvm.org/releases/3.3/llvm-3.3.src.tar.gzhttp://llvm.org/releases/3.3/cfe-3.3.src.tar.gzhttp://llvm.org/releases/3.3/clang-tools-extra-3.3.src.tar.gzhttp://llvm.org/releases/

2013-10-29 14:39:28 2861

原创 opensuse源码安装vim74

先卸载掉原来的vim1、下载并解压vim74的源码2、cd 源码目录3、./configure     --with-features=huge    \        --enable-rubyinterp     \        --enable-pythoninterp   \        --with-python-config-dir=/usr

2013-10-29 14:30:40 1686

原创 svn将分支合并到主干

去对应的分支下,看分支创建时的版本号:ywh@linux-ywh:~/svnbranches/specialactivety> pwd/home/ywh/svnbranches/specialactivetyywh@linux-ywh:~/svnbranches/specialactivety> svn info路径: .工作副本根目录: /home/ywh/svnbr

2013-10-28 11:04:25 2452

转载 给两个主机建立互信

#!/bin/shHOST=$2USER=$1if [ -z $HOST -o -z $USER ]; then echo "sh $0 user host" exitfiif [ ! -e ~/.ssh/id_rsa.pub ]; then echo "id_ras.pub not exists" exitfi

2013-10-16 18:12:03 1036

原创 opensuse 安装firefox的flash插件

1.从flash 官网上下载tar包2.解开tar包,并将libflashplayer.so复制到目标目录  输入su  密码:  //以root身份登陆    cp /usr/lib/flash-plugin/libflashplayer.so /usr/lib/browser-plugins/3.再打开firefox 就看到flash player加载了

2013-10-16 11:24:47 4061

转载 gcc编译生成静态及动态链接库步骤

http://my.oschina.net/u/1270343/blog/167137这两天在看《Linux C程序设计大全》,吴岳编著,清华大学出版社。这本书是在一个培训机构看到的,在网上查了下该书的相关信息。从目录而言,该书涵盖了Linux下C程序设计的较多内容,包括C语言基础(主要讲解C语法结构)、C语言开发环境(主要介绍VIM使用、GCC使用、makefile编写、

2013-10-09 11:23:24 1303

各个名企业笔试题汇总

挺好的。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。

2008-12-26

C++内部培训材料

c++内部资料,Handle-Body接口、菱形缺陷等讲的内容教科书上很难有

2007-06-02

Windows程序设计

charles petzold 的经典之作,vc学不明白的可以先看看这个

2007-06-02

vc做的一个播放器

vc做的一个播放器!!

2007-05-10

空空如也

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

TA关注的人

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