自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 MYSQL 命令行工具自动登录的方法

MYSQL 命令行工具自动登录的方法1. 需求提出由于在linux 环境下,经常需要使用mysql(command-line tool) 终端连接到MYSQL DB服务。其中大致的语法如下:mysql [options] db_name比较重要的option 参数有:--database=db_name, -D db_name--host=host_name, -h

2013-08-15 14:28:18 2661

原创 [C++ 2011 STL (VS2012 Update4) 源代码阅读系列(3)]模板函数指针的的各种组合以及调用的方式

// function.cpp :/*测试例子演示了函数指针的的各种组合以及调用的方式如果你的编译器编译失败,请尽可能的先去掉 const 后编译,如果全部去掉后还是编译失败,请把你的编译器升级到最高版本或者换了它。*/#include "stdafx.h"#include "stdafx.h"#include #include #include #

2013-08-12 16:50:53 1314

原创 [C++ 2011 STL (VS2012 Update4) 源代码阅读系列(2)]熟悉一些宏定义和模版偏特化或叫模版专门化

[C++ 2011 STL (VS2012 Update4) 源代码阅读系列(2)]熟悉一些宏定义和模版偏特化或叫模版专门化// point_test.cpp : 知识点练习和测试,用于单步调试,跟踪。//#include "stdafx.h"#include #include #include using namespace std; //for _1, _2

2013-08-08 19:05:03 2707

原创 [C++ 2011 STL (VS2012 Update4) 源代码阅读系列(1)]准备知识

/*prepare.cpp演示了阅读 STL 原代码的一些预备知识*///标明是使用 MS版本,本处使用 VS2012 update 4#include "stdafx.h"#include #include using namespace std;#define join_1(a,b) a+b#define join_2(a,b) ab#defin

2013-08-05 11:32:04 1791

原创 [C++ 2011 多线程系列一]如何创建线程

/*thread.cpp演示了创建线程的多种方法*/#include #include #include #include #include #include #include #include using namespace std;template T stringcat(T &x,T &y){ std::cout x += x;

2013-06-08 16:42:39 3327 1

原创 linux 下采用scp远程传送文件,采用expect技术,支持自动输入密码

1. 编辑 copycgi.sh,主要用户筛选需要传送的文件,内容如下:#!/bin/bashpath="./"if [ $# -eq 1 ]; then   path=$1   if [ ! -d $path ]; then       echo "please input valid dir."       exit     fifils -al ${p

2013-05-17 10:07:34 4029

原创 spring http 请求的数据传输的几种格式

/*请求格式:url?参数1=值1&参数2=值2...同时适用于GET和POST方式spring 处理查询参数的方法又有几种写法*/public class HttpTestApi { //方法参数名和请求参数名可以不一样,通过@RequestParam注解来绑定参数 @RequestMapping(value = "/test_1", method = RequestMethod.GET) public String testApi_1(@RequestPara.

2020-06-15 18:24:09 384

原创 算法实现: 在二叉树中找到两个节点的最近公共祖先

/*在二叉树中找到两个节点的最近公共祖先(进阶)给定一棵二叉树,多次给出这棵树上的两个节点 o1 和 o2,请对于每次询问,找到 o1 和 o2 的最近公共祖先节点。输入描述第一行输入两个整数 n 和 root,n 表示二叉树的总节点个数,root 表示二叉树的根节点。以下 n 行每行三个整数 fa,lch,rch,表示 fa 的左儿子为 lch,右儿子为 rch。(如果 lch 为 ...

2020-04-16 13:17:09 1150

原创 nginx-rtmp(直播点播)配置

1. 安装a. 环境选择,linux[root@200 software]# cat /etc/redhat-releaseCentOS Linux release 7.6.1810 (Core)[root@200 software]# gcc --versiongcc (GCC) 4.8.5 20150623 (Red Hat 4.8.5-36)Copyright (C) 201...

2019-12-13 10:39:11 1366

原创 postgresql 10.5 安装步骤,支持gis(centos 7.4)

postgresql 10.5 安装步骤1. https://www.postgresql.org/download/linux/redhat/ 官方网站选择对应的版本,目前选择 10.5 为例指定安装源安装对应的数据库yum install https://download.postgresql.org/pub/repos/yum/10/redhat/rhel-7-x86_64/pgdg-...

2018-11-07 09:26:26 1019

原创 std::bind 绑定类成员重载函数和函数指针的高级用法

//todo/*[root@Slave02 thread]# g++ bind.cpp  -o bind -g -Wall -std=gnu++11 -lpthread;./bindclass void Test::print(const std::string& str,int32_t i) 对比测试 std::mem_fn 和 std::bind,并调用类重载函数,1class voi...

2018-05-10 15:04:32 5845

原创 模板函数重载

#include #include using namespace std;class A{public:template void add_extend(const std::string &key,const T &value){std::string ss = key;ss += std::to_string(value);std::cout

2017-07-10 15:10:20 501

原创 gcc 5.4 编译通用 C++ 线程池实现

//todo/*[root@Slave02 thread]# g++ thread_pool.cpp -o thread_pool -g -Wall -std=gnu++11 -lpthread;./thread_poolHello ThreadPoolclass Test2 Hello world,0Current thread id: 140287557768960, glo...

2017-06-22 15:08:09 887

原创 centos 7.X 升级 python3(带修复yum)

centos 7.X 升级 python3(带修复yum)

2017-04-28 10:10:56 11188

原创 protobuf 数据的一种封装

struct ProtobufTransportFormat __attribute__ ((__packed__)){ int32_t len; int16_t flag; int16_t nameLen; char typeName[nameLen]; char protobufData[len - nameLen - 8]; int32_t checkSum;}1. flag 从最低位开始,第0位用作校验类型, 0: adler3

2017-02-21 12:26:32 3831

原创 centos 7 上通过 yum 安装 mysql 5.7

centos 7 上通过 yum 安装 mysql 5.7

2016-10-09 15:52:37 1253

原创 C++ 模板全特化和偏特化

1. 模板特化按对象类型(类和全局函数)分为两种: 类模板的特化和全局模板函数的特化;2. 按特化的类型分全特化和偏特化(也就是多个模板参数可以选定只特化一个或者多个),全局模板函数的特化不支持偏特化;3. 全局模板函数的特化需要关注几个重要元素函数返回值 函数名 形参类型、个数和顺序,eg:template <class T> T max_(const T &, const T &)4. 类模板的特化需要关注几个重要元素类名,形参类型和个数,形参的顺序倒不重要了;

2015-12-03 09:30:12 3806 1

原创 mysql主从同步配置步骤

1. 启用 主库的 log_bin 日志,设置日志格式 binlog_format=MIXED,或者 binlog_format=ROW,启用主库的 server-id#主库上加#只记录 ka_app 库的同步日志binlog_do_db=ka_app#不记录下列库的同步日志binlog_ignore_db=mysqlbinlog_ignore_db=performan

2015-06-18 18:01:46 1814

原创 使用连接池访问memcached(libmemcached)的完整例子

使用连接池访问memcached(libmemcached)的完整例子

2014-12-16 15:53:03 7915 1

原创 CGI原理解析系列之三----CGI如何完整获取WEB服务器数据

//模拟了服务器端 httpd 进程启动 cgi的过程,//完整展现了 get,post 方法支持

2014-12-02 17:22:09 2403

原创 centos 7 已经支持 gcc 编译32位程序

centos 7 已经支持 gcc 编译32位程序

2014-11-28 11:16:21 8146

原创 CGI原理解析之二------WEB服务和CGI交互数据

CGI原理解析,解析了WEB服务器和CGI程序进行数据交互。

2014-07-17 16:14:09 5048

原创 CGI原理解析系列之一----CGI如何获取WEB服务器数据

CGI 原理解析

2014-07-17 16:11:45 5535

转载 数组指针和指针数组的区别

数组指针和指针数组的区别http://www.cnblogs.com/hongcha717/archive/2010/10/24/1859780.html数组指针(也称行指针)定义 int (*p)[n];()优先级高,首先说明p是一个指针,指向一个整型的一维数组,这个一维数组的长度是n,也可以说是p的步长。也就是说执行p+1时,p要跨过n个整型数据的长度。如要将二

2014-07-16 09:22:07 817

原创 CentOS 7 构造GCC 4.8.2 32位编译环境

CentOS 7 构造GCC 4.8.2 32位编译环境

2014-07-15 10:05:07 12772

原创 linux 上使用外接设备(光驱) 安装和更新库

linux 上使用外接设备(光驱) 安装和更新库

2014-07-15 10:00:34 2554

原创 C/C++指针的指针(**p)和指针的引用(*&)使用案例分析

C/C++指针的指针(**p)和指针的引用(*&)使用案例分析一个简单的映射描述:int **pp = 5;[pp=0x***]---->[*pp=0x****]---->[**p = 5]typedef int * INT_P;INT_P a 等同于 int *a,那 INT_P &a 就等同于 int *&a,也即指针的引用了

2014-06-06 13:15:14 21226

原创 编译安装 gcc 4.9并验证使用

编译安装 gcc 4.9并验证使用

2014-06-05 16:05:07 19805 4

原创 linux后台服务器开发环境部署配置和验证(nginx+apache+php-fpm+FASTCGI(C/C++))

CentOS 6.3(Linux version 2.6.32-279.el6.x86_64)gcc (GCC) 4.4.6 20120305 (Red Hat 4.4.6-4)本次配置Nginx 1.5.8Apache 2.4.7php 5.3.26FASTCGI

2014-05-13 17:20:21 4934 2

原创 linux eventfd 应用案例

#include #include #include #include #include #include #include #include int evfd;void * f(void *p){    int ret = 0,j = 100;    while(ret >= 0)    {         uint64_t i =

2014-04-25 10:20:25 3757

原创 PHP(xml转成json)样例

$content = file_get_contents("d:\\aaa.xml");print_r($content);print_r("\n\n");$xml = simplexml_load_file("d:\\aaa.xml");if(is_object($xml)){    foreach($xml->entry as $photo)    {  

2014-03-18 15:17:08 9477

原创 hadoop2.3安装和wordcount运行验证

以下描述了centos linux(2.6.32-279.el6.x86_64)位机器下,安装32位hadoop 2.3,并通过运行系统自带的 WordCount 例子来验证服务正确性的步骤。

2014-03-06 17:15:29 10017

原创 最新版本 PHP (windows)开发环境配置

本次配置软件Eclipse 4.3Apache 2.4.7php 5.5.9Xdebug 2.2.3-5.5php 安装软件准备http://windows.php.net/download/官网下载版本,php-5.5.9-Win32-VC11-x86.zip,注意是线程安全版本,完整zip 安装包。安装直接解压文件到目录,D:\develop\php

2014-02-21 12:21:25 10193

原创 LINUX C 输出重定向例子

输出重定向

2014-01-08 10:23:39 5154 1

原创 protocol buffer C(linux)安装

下面描述了在 GNU/Linux x86_64(centeros)下安装 protocol buffer,支持 C 和 C++ 。1. google protocol buffer 下载下载 google protocol buffer,使用版本 2.5的,主页http://code.google.com/p/protobuf/下载地址:http://code.google.c

2013-12-18 15:56:48 8565

原创 网络通信之--accept死循环

通信服务器一直运行,每次成功 accept ,都会分配新的 socket 资源,但是因为未能有效的检测和处理socket 的关闭事件,导致未能释放 socket,最后,socket 资源被耗尽,再也不能接入新的连接了。同时,新的连接不断的通过 TCP 层,内核不断的通知应用层有新的可读事件,但是因为 accept 无法创建新连接,无法消除这些读事件。导致内核和accept 陷入死循环。这种情况是使用 epoll的 LT (level trigger)和 seelct 情况下会发生。

2013-11-06 11:11:18 4269 1

原创 LINUX vi(vim) 高亮显示语法文件

" 在目录 /etc/ 下面,有个名为vimrc的文件," 这是系统中公共的vim配置文件,对所有用户都有效。而在每个用户的主" 目录下,都可以自己建立私有的配置文件,命名为:.vimrc" 取消自动注释au FileType c,cpp setlocal comments-=:// comments+=f://" 设置编码支持let &termencoding=&enco

2013-10-18 16:13:07 5371

原创 LINUX 64位下运行32位程序加载和读取大数据段共享内存

LINUX 64位下运行32位程序加载和读取大数据段共享内存1. 查看当前机器共享内存1073741824 = 1024 * 1024 * 1024[root@six shm]# ipcs------ Shared Memory Segments --------key        shmid      owner      perms      bytes      nat

2013-10-17 17:53:14 3347

原创 google protocl buffer 序列化和反序列化的一个例子

google protocl buffer 序列化和反序列化的一个例子

2013-09-25 10:15:38 5142

原创 使用最新的log4cplus(1.1.1)输出多个自定义日志文件,隔离不同的 log 文件输出

//APP 和 APP_DAILY 共用了一个 logger配置static Logger APP = Logger::getInstance(LOG4CPLUS_TEXT("APPfilelogger.APP"));static Logger APP_DAILY = Logger::getInstance(LOG4CPLUS_TEXT("APPfilelogger.APP_DAILY"));//SYS,ACC 是独立的 logger 配置,这样 SYS,ACC,APP(APP_DAILY) 分别属

2013-09-03 12:03:32 8038 1

mysql C API

change log: 1. 2006年 初始版本发布,主要封装一些访问 MYSQL 的 C API,能便捷的访问 MYSQL 数据库; 2. 2010年 版本是原来版本的修正版本; 主要增加功能如下: 1. 支持多地址分布式部署数据库连接; 2. 支持数据库连接池; 3. 支持数据库字符转义,能保持包括 ' 等字符到数据库 4. 支持客户端编码类型指定,解决中文乱码问题 3. 2013年 版本是原来版本的修正版本; 主要增加功能如下: 1. 优化编码接口内存分配; 2. 增加查询和更新(读写)超时功能(需要 MYSQl 相应版本支持); 3. 增加分批查询数据(limit+offset)形式;

2013-04-16

MYSQL C API 访问程序

1. 以下是研究 mysql 5.0.22 得出的结果,描述并使用标准 c++演示了使用 MySQLC API 函数 简单操作数据库的流程; 例子程序在 VC6(VC7.1) + windows 2000 上调试通过; 例子程序在 red hat linux 9,red fc6 上调试通过 支持多地址分布式部署数据库连接; 支持数据库连接池;

2010-12-27

JNSP (java network service platform)

下列描述了JNSP(java network service platform)服务的部署和功能,如有不明白之处,自己查看源代码,我无力和没有太多时间回答太多的问题. 源代码一起提供,可以随意修改,发布,并商业化,但请保留作者的信息.为了技术的进步,请注意共享成就. 如果查看后有技术问题探讨和建议的,欢迎致电致信联系.系统架构设计和实现有如下特点: A. 采用 Accept-Connect 通讯模型,能统一管理系统中使用的所有 Socket 资源; B. 系统支持通信和协议分离的实现原则,支持自定义协议解析模块;通信负责数据收发,协议负责数据鉴别,两者配合实现通信和协议的和谐工作; C. 灵活支持业务处理功能重定义,分级支持慢业务和快业务的不同业务处理线程; D. 丰富灵活的配置参数,能满足高扩展性; E. 配合业务处理和通信模型,能异步的管理所有的交互步骤; F. 分布式服务设计和部署,减少乃至拒绝单点服务; 1. 可以使用 ant 工具指定目录下 build.xml 文件,编译. 2. TestServerAssistant 是模拟一个第三方的服务,可以采用这个方式启动 java -classpath ./:./bin/:/home/huangzheng/MyTest/pack/nioserver.jar:/home/huangzheng/MyTest/pack/lib/log4j-1.2.15.jar -server -Xms1024m -Xmx1024m com.nsp.assistant.TestServerAssistant /home/huangzheng/MyTest/pack/conf/assistant_log4j.xml /home/huangzheng/MyTest/pack/conf/assistant.xml 3. TestServerA 和 TestServerB 是代表实际的业务处理服务,其处理 TestAgent 分发的业务处理请求.可以采用这个方式启动 java -classpath ./:./bin/:/home/huangzheng/MyTest/pack/nioserver.jar:/home/huangzheng/MyTest/pack/lib/log4j-1.2.15.jar -server -Xms1024m -Xmx1024m com.nsp.frametest.TestServerA /home/huangzheng/MyTest/pack/conf/servera_log4j.xml /home/huangzheng/MyTest/pack/conf/servera.xml java -classpath ./:./bin/:/home/huangzheng/MyTest/pack/nioserver.jar:/home/huangzheng/MyTest/pack/lib/log4j-1.2.15.jar -server -Xms1024m -Xmx1024m com.nsp.frametest.TestServerB /home/huangzheng/MyTest/pack/conf/serverb_log4j.xml /home/huangzheng/MyTest/pack/conf/serverb.xml 4. TestAgent 是表示一个消息分发服务,用户接收最外层的业务请求.可以采用这个方式启动 java -classpath ./:./bin/:/home/huangzheng/MyTest/pack/nioserver.jar:/home/huangzheng/MyTest/pack/lib/log4j-1.2.15.jar -server -Xms1024m -Xmx1024m com.nsp.agent.TestAgent /home/huangzheng/MyTest/pack/conf/agent_log4j.xml /home/huangzheng/MyTest/pack/conf/agent.xml 5. 可以编写一个客户端 DriverClient 来驱动整个流程,可以采用这个方式启动 java -classpath ./:./bin/:/home/huangzheng/MyTest/pack/nioserver.jar:/home/huangzheng/MyTest/pack/lib/log4j-1.2.15.jar -client -Xms256m -Xmx256m com.nsp.frametest.DriverClient 6. 可以按TestServerAssistant,TestServerA,TestServerB,TestAgent,DriverClient 顺序启动测试.如果在 linux 下,可对应采用 restart_*.sh,startup_*.sh,allstartup.sh 等启动服务.

2009-12-09

MySql C API 的 C++ 包装

此代码是研究 mysql 5.0.22 得出的结果,描述并使用标准 c++演示了使用 MySQLC API 函数简单操作数据库的流程; 例子程序在 VC6(VC7.1) + windows 2000 上调试通过; 例子程序在 red hat linux 9,red fc6 上调试通过

2009-03-06

空空如也

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

TA关注的人

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