自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

MyDriverC

广博,创新

  • 博客(41)
  • 收藏
  • 关注

转载 学习:java设计模式—Observer模式

简单地说,观察者模式定义了一个一对多的依赖关系,让一个或多个观察者对象监察一个主题对象。这样一个主题对象在状态上的变化能够通知所有的依赖于此对象的那些观察者对象,使这些观察者对象能够自动更新。  一、观察者模式的结构  本模式的类图结构如下:图1、观察者模式的静态结构可从类图中看清楚。  在观察者模式里有如下的角色:

2015-11-30 14:19:19 233

转载 数据库分区分片框架

http://my.oschina.net/tinyframework/blog/186583序言一直在做企业应用,目前要做一些互联网应用,当然只是应用是放在互联网的,数据量距离真正的互联网应用还是有相当大的差距的。但是不可避免的,在数据库出现瓶颈的情况还是有的,现在做互联网上的应用,当然也要未雨绸缪,要考虑数据量大的时候的解决方案。这个目前开源的商用的也都有不少解

2015-11-27 17:02:50 1267

转载 数据库分库分表

数据库分库分表(sharding)系列(五) 一种支持自由规划无须数据迁移和修改路由代码的Sharding扩容方案数据库分库分表(sharding)系列(四) 多数据源的事务处理数据库分库分表(sharding)系列(三) 关于使用框架还是自主开发以及sharding实现层面的考量数据库分库分表(sharding)系列(二) 全局主键生成策略数据

2015-11-27 16:47:03 292

转载 数据库的垂直切分和水平切分

数据切分可以是物理上的,对数据通过一系列的切分规则将数据分布到不同的DB服务器上,通过路由规则路由访问特定的数据库,这样一来每次访问面对的就不是单台服务器了,而是N台服务器,这样就可以降低单台机器的负载压力。数据切分也可以是数据库内的,对数据通过一系列的切分规则,将数据分布到一个数据库的不同表中,比如将article分为article_001,article_002等子表,若干个子表水平拼

2015-11-27 16:34:32 297

转载 MySQL垂直和水平切分

replication的限制:一旦数据库过于庞大,尤其是当写入过于频繁,很难由一台主机支撑的时候,我们还是会面临到扩展瓶颈。数据切分(sharding):通过某种特定的条件,将我们存放在同一个数据库中的数据分散存放到多个数据库(主机)上面,以达到分散单台设备负载的效果。。数据的切分同时还可以提高系统的总体可用性,因为单台设备Crash之后,只有总体数据的某部分不可用,而不是所有的数据。数据

2015-11-27 16:31:47 511

转载 在mysql中执行shell命令

当bin-log的模式设置为 row时不仅日志长得快 并且查看执行的sql时 也稍微麻烦一点:1.干扰语句多;2生成sql的编码需要解码。binlog_format=row 直接mysqlbinlog出来的 文件执行sql部分的sql显示为base64编码格式固生成sql记录的时候 不能用常规的办法去生成 需要加上相应的参数才能显示出sql语句

2015-11-27 15:58:41 2055

转载 mysqlbinlog 查看执行的sql (row模式)

http://blog.csdn.net/lxpbs8851/article/details/39316589当bin-log的模式设置为 row时不仅日志长得快 并且查看执行的sql时 也稍微麻烦一点:1.干扰语句多;2生成sql的编码需要解码。binlog_format=row 直接mysqlbinlog出来的 文件执行sql部分的sql显示

2015-11-27 15:53:40 513

转载 mysql分表和表分区详解

http://www.2cto.com/database/201503/380348.html为什么要分表和分区?日常开发中我们经常会遇到大表的情况,所谓的大表是指存储了百万级乃至千万级条记录的表。这样的表过于庞大,导致数据库在查询和插入的时候耗时太长,性能低下,如果涉及联合查询的情况,性能会更加糟糕。分表和表分区的目的就是减少数据库的负担,提高数据库的效率,通常点来讲就是提高

2015-11-27 15:44:09 228

转载 MySQL分区

一,      分区概念 分区允许根据指定的规则,跨文件系统分配单个表的多个部分。表的不同部分在不同的位置被存储为单独的表。MySQL从5.1.3开始支持Partition。分区和手动分表对比手动分表 分区多张数据表一张数据表重复数据的风险没有数据重复的风险写入多张表写入一张表

2015-11-27 15:35:01 268

转载 Mysql索引

使用索引的注意事项使用索引时,有以下一些技巧和注意事项:索引不会包含有NULL值的列只要列中包含有NULL值都将不会被包含在MySQL索引中,复合索引中只要有一列含有NULL值,那么这一列对于此复合索引就是无效的。所以我们在数据库设计时不要让字段的默认值为NULL。使用短索引对串列进行索引,如果可能应该指定一个前缀长度。例如,如果有一个CHAR(255)的列

2015-11-27 15:24:53 297

转载 mysql memory引擎

通常用于更新不频繁的小表,可以快速得到访问结果。CREATE TABLE lookup (id INT, INDEX USING HASH (id)) ENGINE = MEMORY; CREATE TABLE lookup (id INT, INDEX USING BTREE (id)) ENGINE = MEMORY; 如果一

2015-11-27 14:56:18 323

转载 load xml

LOAD XML LOCAL INFILE 'c:/users/yourname/desktop/myfile.xml' INTO TABLE MyTable ROWS IDENTIFED BY ''MYSQL数据库可以将数据导出成sql文本文件、xml文件、html文件。同样这些导出文件也可以导入到MYSQL数据库中一般异构数据库迁移都是采用文本文件的方式来导数据

2015-11-26 17:22:59 506

转载 gcc 中 assert(断言)的使用

1. assert是一个宏;2. 头文件:#include ;3. assert(表达式)的意思是:当表达式为真时,程序继续运行,如果表达式为假,那程序就会停止运行,并提示错误信息;4. assert.h 里有如下定义:     #ifdef NDEBUG     #define assert(p) ((void)0)     #else  

2015-11-19 10:57:57 2274

转载 memmove

memmove用于从src拷贝count个字符到dest,如果目标区域和源区域有重叠的话,memmove能够保证源串在被覆盖之前将重叠区域的字节拷贝到目标区域中。但复制后src内容会被更改。但是当目标区域与源区域没有重叠则和memcpy函数功能相同。

2015-11-19 10:51:05 323

转载 位运算

12 位运算  C语言是为描述系统设计的,因此它应该具有汇编语言所以完成的一些功能。C语言既有高级语言的特点,又具有低级语言的功能。因而具有广泛的用途和很强的生命力。12.1 位运算符和位运算运算符  含义&    按位与|    按位或^    按位异或~    取反>>   右移说明:(1)位运算符中除 ~

2015-11-19 09:51:46 253

转载 "异或"实现a和b两变量交换

今天在看C语言的位运算时,看到了如下交换a,b两值的方法:                    a = a^b;                    b = a^b;                    a = a^b;后来想想,真是太神奇了!其实,我们首先知道,对于任意的x满足:                               x^x =

2015-11-19 09:45:05 455

转载 C语言中强制类型转换的总结

字符型变量的值实质上是一个8位的整数值,因此取值范围一般是-128~127,char型变量也可以加修饰符unsigned,则unsigned char 型变量的取值范围是0~255(有些机器把char型当做unsighed char型对待, 取值范围总是0~255)。  ● 如果一个运算符两边的运算数类型不同,先要将其转换为相同的类型,即较低类型转换为较高类型,然后再参加运算,转换规则如下

2015-11-18 15:19:37 1101

转载 将小数转换为二进制的脚本

MYNUM=$1ALLNUM=$2while (( ALLNUM >0  ))do   MYNUM=`echo "$MYNUM*2"|bc`   #echo $MYNUM   MYINT=${MYNUM%.*}   INTLEN=${#MYINT}   if [ $INTLEN -eq 0 ]; then     echo -n "0"   else 

2015-11-18 15:03:53 362

转载 shell 中数学计算总结

http://www.cnblogs.com/liujiahi/archive/2011/03/30/2196400.htmlshell中的赋值和操作默认都是字符串处理,在此记下shell中进行数学运算的几个特殊方法,以后用到的时候可以来看,呵呵。   1、错误方法举例   a)   var=1+1   echo $var   输出的结果是1+1,悲剧,呵呵    

2015-11-18 14:17:46 343

转载 十进制小数转化为二进制小数

一、二进制数转换成十进制数    由二进制数转换成十进制数的基本做法是,把二进制数首先写成加权系数展开式,然后按十进制加法规则求和。这种做法称为"按权相加"法。    例1105 把二进制数110.11转换成十进制数。   二、十进制数转换为二进制数    十进制数转换为二进制数时,由于整数和小数的转换方法不同,所以先将十进制数的整数部分和小数部分分别转换后,再加以合并。 

2015-11-18 13:33:37 749

转载 浮点数在内存中的表示

http://www.cnblogs.com/xkfz007/archive/2012/02/27/2370357.htmlc语言中的浮点数在内存中的表示(VC++编译器中):char:1个字节short:2个字节int:4字节long:4字节float:4字节(单精度)double:8字节(双精度) 参考:http://ww

2015-11-18 13:30:20 376

转载 经得起雷劈:关于double和int/long相互转换失去精度计算错误的问题

http://blog.csdn.net/vonger/article/details/6656219在用C/C++做运算时,类型转换是很常见的,一般都直接用数据类型进行默认强制转化,但是这样其实是有很大问题的。[html] view plaincopy#include stdio.h>  int main(int

2015-11-18 13:18:59 3478

原创 精度 强制转换 浮点数

char *x0="4.89";                                             float x1=atof(x0);                                           float x2=atof(x0)*100;                                       float x3=x1

2015-11-18 11:09:39 819

转载 两个float 怎么比较大小

float 类型不能比较相等或不等,但可以比较>,=,用==从语法上说没错,但是本来应该相等的两个浮点数由于计算机内部表示的原因可能略有微小的误差,这时用==就会认为它们不等。应该使用两个浮点数之间的差异的绝对值小于某个可以接受的值来判断判断它们是否相等,比如用    if (fabs(price - p) 来代替    if (price == p)很

2015-11-17 16:13:03 42573 1

转载 IEEE 754四种舍入方向

四种舍入方向: 向最接近的可表示的值;当有两个最接近的可表示的值时首选“偶数”值;向负无穷大(向下);向正无穷大(向上)以及向0(截断)。 说明:舍入模式也是比较容易引起误解的地方之一。我们最熟悉的是四舍五入模式,但是,IEEE 754标准根本不支持,它的默认模式是最近舍入(Round to Nearest),它与四舍五入只有一点不同,对.5的舍入上,采用取偶数的方式。举例比较如下: 例2

2015-11-17 15:44:48 943

转载 浮点数比较

浮点数据在内存中表示是有误差的,所以一般不直接进行比较。用10进制小数不能精确表示某些三进制小数0.1(3)=0.33333333333……(10)同理,用二进制小数也不能精确表示某些10进制小数。float类型if(x-0.000001)  前一段时间读了一下林锐博士的《高质量 C/C++ 编程指南》,其中有一个比较经典的问

2015-11-17 15:41:45 560

转载 float转int 四舍五入问题

http://blog.csdn.net/ropai/article/details/19907847   最近碰到一例客户投诉某款产品某个参数显示误差的问题,经检查发现是软件中浮点数(float)转化为整型数(int)时候未四舍五入造成的。    虽说是小问题但也值得重视,如果是航天飞机/月球探测仪(纯属YY)的软件中出了误差可能后果不堪设想。 

2015-11-17 14:17:56 1592

转载 grep遍历所有文件

grep -R "关键字"  .find .  -type f | xargs grep "关键字"

2015-11-13 09:55:25 4500

转载 语言的目的

可以看见在排行榜中,C,Java,C++这样的语言几乎是年年稳居前五。这些语言的实用性都是非常高的。让我们回顾一下C语言的历史:1973年AT&T的Ken Thompson因为研发和维护操作系统的需要,要求一种高效简洁的程序设计语言,于是在BCPL语言的基础上创造了C语言。Java、C++等语言也都是在有着类似的高要求的任务下临时创造出来,然后再不断发布标准进行改进的(C语言是为了操作系统,Jav

2015-11-10 17:42:44 611

转载 va_list实现不定参数C函数

va_list实现不定参数C函数

2015-11-10 17:26:00 370

转载 浅谈C++多态性

http://blog.csdn.net/hackbuteer1/article/details/7475622  C++编程语言是一款应用广泛,支持多种程序设计的计算机编程语言。我们今天就会为大家详细介绍其中C++多态性的一些基本知识,以方便大家在学习过程中对此能够有一个充分的掌握。  多态性可以简单地概括为“一个接口,多种方法”,程序在运行时才决定调用的函数,它是面向对象编程领域的

2015-11-10 17:20:56 241

转载 Refactoring Day 31 : Replace conditional with Polymorphism

The last day of refactoring comes from Fowlers refactoring catalog and can be found here.This shows one of the foundations of Object Oriented Programming which isPolymorphism. The concept here

2015-11-10 16:49:15 352

转载 开发者都应该使用的10个C++11特性

http://my.oschina.net/xlplbo/blog/343242auto    在C++11之前,auto关键字用来指定存储期。在新标准中,它的功能变为类型推断。auto现在成了一个类型的占位符,通知编译器去根据初始化代码推断所声明变量的真实类型。各种作用域内声明变量都可以用到它。例如,名空间中,程序块中,或是for循环的初始化语句中。?

2015-11-10 15:58:29 294

转载 深入浅出C/C++中的正则表达式库

本文摘自: 小武哥的博客写在前面: 本文是面向有正则表达式基础的读者朋友的,如果你还不知道正则表达式是什么,请先到这里学习一下  :http://en.wikipedia.org/wiki/Regular_expression。正则表达式(Regular Expressions),又被称为regex或regexp,是一种十分简便、灵活的文本处理工具。它可以用来精确地找出某文本中匹配某种

2015-11-10 15:16:57 507

转载 linux shell 数组建立及使用技巧

linux shell在编程方面比windows 批处理强大太多,无论是在循环、运算。已经数据类型方面都是不能比较的。 下面是个人在使用时候,对它在数组方面一些操作进行的总结。 1.数组定义 [chengmo@centos5 ~]$ a=(1 2 3 4 5)[chengmo@centos5 ~]$ echo $a1 一对括号表示是数组,数组

2015-11-09 14:51:13 281

转载 关于KSH的数组

我对数组的理解,希望对大家有帮助哟~~ 在KSH中定义数组的方法:set -A argname a b c 其中,set -A 告诉shell要建立一个数组,argname是数组名,a b c等字符为数组元素,下标为0,用空格分开.访问数组的方法echo ${argname[*]} 显示数组所有元素echo ${argname[n]} 显示数组第n个元素echo ${#

2015-11-09 14:50:02 2150 1

转载 C语言和设计模式(策略模式)

http://blog.csdn.net/feixiaoxing/article/details/7166055写得真好,转这一个,其他的都看目录http://blog.csdn.net/mydriverc2/article/details/49584019 策略模式就是用统一的方法接口分别对不同类型的数据进行访问。比如说,现在我们想用pc看一部电影,此时应该怎么做

2015-11-03 15:51:59 420

转载 值得推荐的C/C++框架和库

【本文系外部转贴,原文地址:http://coolshell.info/c/c++/2014/12/13/c-open-project.htm】留作存档下次造轮子前先看看现有的轮子吧值得学习的C语言开源项目- 1. Webbench Webbench是一个在linux下使用的非常简单的网站压测工具。它使用fork()模拟多个客户端同时访问我们设定的URL,测

2015-11-03 09:59:29 320

转载 C语言enum枚举类型解析

在实际应用中,有的变量只有几种可能取值。如人的性别只有两种可能取值,星期只有七种可能取值。在 C 语言中对这样取值比较特殊的变量可以定义为枚举类型。所谓枚举是指将变量的值一一列举出来,变量只限于列举出来的值的范围内取值。 定义一个变量是枚举类型,可以先定义一个枚举类型名,然后再说明这个变量是该枚举类型。例如: enum weekday{sun,mon,tue,wed,thu,fri

2015-11-02 16:47:28 376

转载 C语言设计模式

http://wenku.baidu.com/link?url=bauL-T_CI1j_-GlDFxW3nUavtAhIXEqrlsjp5Hw-eWDTAmA8qy5UBrTyLj2CebuV5XddqLzKhEO79Y7jG_FxQ5oVnISAdZEO_PmN8hzTtu3

2015-11-02 11:01:13 736

空空如也

空空如也

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

TA关注的人

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