今天有人问我cap,找了https://my.oschina.net/lilw/blog/169776这片文字, 下面是cap那篇文字的解释: 所谓CAP理论,即: Cosistency       数据的一致性 Availability      高可用性 Tolerance to newowrk Partitions    分区容忍性 一个数据存储系统不可能同时满足上述三个特性,只能同时满足其两个特性,也就是: CA,CP,AP.可以这么说,当前所有的数据存储解决方案,都可以归类的上述三种类…
微软ASP.NET技术“乱谈” 2014新年了,顺手写的一点文字,主要谈谈我对当前微软ASP.NET技术的看法,比较随意,大伙儿随便看看吧. 1 当前微软Web平台技术全貌 从2002年发布.NET 1.0和Visual Studio.NET,到2013年.NET 4.5.1和Visual Studio 2013发布时,微软.NET平台己有11年的历史,其Web技术几经变迁,当前演化为以下的主要技术子领域: 一张图了解微软Web平台技术全貌 时至今日, ASP.NET底层的基础架构基本没太大变化…
转自:http://blog.sina.com.cn/s/blog_4265e1760100lg03.html 本系列篇章的主要内容是讲解矢量图形库的编译.开发和使用.并不对他们周边的内容做过多的描述,如性能对比等.本人博客所有文章全部都是个人原创,并保留一切权利.不是原创的内容本人一定会注明“转载”字样.所以如果您需要转载,请注明来源,谢谢. 矢量图形,这是一个非常熟悉但是又让人觉得陌生的东西.熟悉是因为听得太多了,Flash就大量应用了矢量图形技术,得以让一段完整的动画文件体积相比以逐帧图片…
文 / 腾讯 吴双 前言 优测小优 有话说: 腾讯优测只有应用测试大神?不不不,我们还有各种研发大牛! *** vim 是一种信仰,我自从2004年有了这个信仰,已经12个年头了.本文介绍了学习vim的方法以及一些vim常用的插件让大家对vim的功能有一个初步的认识. vim与神的编辑器emacs的争论从来没有停止过.其实两种编辑器的设计哲学完全不同,风格迥异.vim的特点是Composability,Emacs的特点是Extensibility.vim使用键序列输入,Emacs则经常使用组合键…
vnpy乱乱谈 02架构 转自:http://101.132.65.227/?p=51 听到架构这个词先不要害怕. 其实这部分内容还是挺简单的. 一般而言, 一个交易系统我们可以简单的分成输入, (系统)处理, 输出三个部分. 常见的输入就是交易所出来的行情(还有回报)了, 行情有很多其他叫法quote, tick, market data 反正都是差不多的意思. 而输出呢, 无非就是下单, 或者撤单, 或者查询. 整个处理流程是, 系统接收到一个quote, 然后系统内的模型会评估这个quot…
1. Nosql数据库的四大分类 2. 分布式数据库CAP原理 2.1 关系型数据库事务遵循的ACID规则 首先了解传统关系型数据库事务遵循的ACID规则: 原子性(Atomicity):事务里的所有操作要么全部做完,要么都不做,事务成功的条件是事务里的所有操作都成功. 一致性(Consistency):数据库要一直处于一致的状态,事务的运行不会改变数据库原本的一致性约束. 独立性(Isolation):指并发的事务之间不会相互影响,一个事务要访问的数据正在被另一个事务修改,那么在另一个事务提交…
前文简单介绍了NoSql数据库的四大分类以及常用的数据库技术,本文简单介绍分布式数据库CAP原理. 一.传统的CAID是什么 1. A(Atomicity)原子性:事务里的所有操作要么全部做完,要么都不做,事务成功的条件是事务中的所有操作都成功,只要有一个操作失败,整个事务失败,需要回滚. 2. C(Consistency)一致性:数据库要一直处于一致的状态,事务的运行不会改变数据库原本一致性的约束. 3. I(Isolation)隔离性:并发事务之间互不影响,如果一个事务要访问的数据正在被另外…
C 和 C++ 之类的编译语言性能远超Java,但是生成的代码只能在有限的几种系统上执行,这就有了Java的存在基础(JVM-跨平台) 早期 Java 运行时所提供的性能级别远低于 C 和 C++ 之类的编译语言. 最早的时候,java是由解释器(Interpreter),将每个java指令转译为对等的微处理器指令,并根据转译后的指令先后次序依序执行,一个java指令可能对应十几或者几十个对等微处理指令,运行的时候还要先解释,在硬件条件差的情况下,执行速度是可想而知有多慢的 后面 Java 通过…
昨天俱乐部内部办了一个讲座,关于常规数据库系统实现,听了之后有点混乱,于是花了很多时间特地查了一些资料,基本上自己感觉自己是明白了.特地写下来. 文章开头说明三点, 第一点,本文针对常规数据库,是为了区别空间数据库: 第二点,本文不追求解释清楚各个细节,而是着重介绍整体的脉络,说白了就是,本文不细究怎么做,而是探讨为什么要这么做.举个例子,我会去探讨为什么要设计B树,而不会去说明B树是怎么操作的: 第三点,设计数据库存储结构的目的在于简化和协助对数据的访问. 1.  概述 计算机内部存储是分层次…
使用 C 语言的 fopen 打开文件时,可以指定的 mode 有 12 个,其中 6 个包含  "b" 使用 C++ 的 fstream 打开文件时,可用的模式组合有 24 个(?),其中 12 个包含  "binary" 使用 python 的 open 打开文件,除了可以使用 C 中的 12 个模式外,还可以使用  "U" 或 "rU" 使用 Qt 库的 QFile 打开文件时,可以指定  QIODevice::Text…
一个月前尝试写了一篇关于QStringLiteral,存盘时MoinMoin罢工了.吸取一点经验,还是写成短篇吧 可是,可是,QString不就是简简单单一个字符串么?能有什么可谈的.真的么... (本文范围:Qt4) 字符串比较 如果翻看Qt的源码,或者Qt的(正规一点)第三方库,我们很少看到这种代码: //QString myString if (myString == "dbzhang800") { } 取而代之的是 if (myString == QLatin1String(&…
作者:马健邮箱:stronghorse_mj@hotmail.com发布:2006.11.21最近更新:2006.11.25 目录一.目录表(TOC)与分卷(Volume)二.固实(solid)压缩方式三.安全性四.开放性五.结论 声明:本文并非学术论文,所述内容仅为我个人的看法和体会,不具任何权威性,仅供有兴趣的人参考,但是如果您不具有足够的鉴别能力,建议勿看,以免误导. 一.目录表(TOC)与分卷(Volume) 抛开压缩算法不谈,我认为zip.rar在文件格式上最大的差异就在目录表(Tab…
原文地址1(连接MySQL图文) : http://www.cnblogs.com/GarfieldEr007/p/5746137.html 原文地址2 (修改MySQL图文): http://www.cnblogs.com/wuyuegb2312/p/3872607.html#tittle33 本文链接地址 : http://blog.csdn.net/deathislikethewind/article/details/71036900 前言:什么是JDBC 一.准备工作(一):MySQL安…
简介 SQL是一个标准的数据库语言,是面向集合的描述性非过程化语言.它功能强,效率高,简单易学易维护(迄今为止,我还没见过比它还好学的语言).然而SQL语言由于以上优点,同时也出现了这样一个问题:它是非过程性语言,即大多数语句都是独立执行的,与上下文无关,而绝大部分应用都是一个完整的过程,显然用SQL完全实现这些功能是很困难的. 所以大多数数据库公司为了解决此问题,作了如下两方面的工作: 扩充SQL,在SQL中引入过程性结构: 把SQL嵌入到高级语言中,以便一起完成一个完整的应用. SQL语言的…
在学习图形图像的过程中,最简单和常见的格式是BMP和PPM.下面将给出生成BMP的极度精简代码,然后讲解BMP格式. #include <stdio.h> #include <stdlib.h> #define w 200 #define h 200 void WriteBMP(char*img,const char* filename) { +)/*; ,,,,w,h,|*<<,,l*h,,,,}; FILE *fp = fopen(filename,"wb…
原文地址http://blog.csdn.net/dbzhang800/article/details/7542672?reload 两个月前,简单写过QTextCodec中的setCodecForTr等终于消失了 (Qt5) ,在Qt论坛上,不少用户都对去掉这两个函数表示特别的不了解.为什么会这样?我想多少能说明不少用户对C++中源码字符集和执行字符集的不太了解,从而造成对这种函数的依赖或误用. 今天,随着Change QString's default codec to be UTF-8 进…
  偶然一天内两次看到关于希斯·莱杰的文章(上面这个joker),貌似很多地方看到过这个,但是为什么他这么出名.知乎上的一篇文章 http://daily.zhihu.com/story/4341370 说明了一些原因: 拿起水杯喝也是叫动作. 茴香豆的茴字有几种写法.   想到最近正在阅读的<clean code>,真的是如果将一件事情做到极致,同样的东西,能看出一个人的不同: 刚好周末没有太多活动,所以找来Batman看看: 屌丝靠变异,高帅富玩科技   韦恩家族富可敌国,布鲁斯·韦恩亲眼…
本文旨在说明:QDialog::exec().QMenu::exec()等开启的局部事件循环,易用的背后,还有很多的陷阱... 引子 Qt 是事件驱动的,基本上,每一个Qt程序我们都会通过QCoreApplication或其派生类的exec()函数来开启事件循环(QEventLoop): int main(int argc, char**argv) { QApplication a(argc, argv); return a.exec(); } 但是在同一个线程内,我们可以开启多个事件循环,比如…
缘由 促使草人写这一系列(将会是)文章的原因是二维码现在很流行,很容易接触到,而且二维码又是那么容易就生成——就不说有很多在线的生成器,许多应用软件也都有生成二维码的功能,比如Firefox浏览器.QQ等. 最初的时候,草人看到QQ生成的花哨的二维码就想自己写出生成自己喜欢的二维码的程序. 恶搞 当我开始去了解二维码(后来主要是QR code)的时候,我知道QR code(QR Code码,是由Denso公司于1994年9月研制的一种矩阵二维码符号,它具有一维条码及其它二维条码所具有的信息容量大…
何处开始呢? 一旦在Qt程序中出现latin1字符集以外的字符,几乎大家无一例外的会用到 QTextCodec. 而不少网友不分青红皂白,一旦用到中文,就同时使用下面3条指令(其中textc 取为 gb18030 或 utf8,还有的会选用system). QTextCodec::setCodecForCStrings(textc); QTextCodec::setCodecForTr(textc); QTextCodec::setCodecForLocale(textc); 可是这3个东西有什…
写了几年的C指针几乎没怎么用过,因为感觉没什么用.不过在听了一位老师讲课之后,我改变的我的想法. 在此稍做总结,希望能帮到一些和我有同样想法的人,希望看完这篇文章后能改变您的想法. 首先,说说概念,指针是什么?基本的作用是什么? 答:指针它本身就是一个变量,它的作用就是用来保存地址. 有了这个概念,我们继续向下看. 指针的声明: char* p; //这就声明了一个char型 的指针,名字叫p 这里,我要强调一点,这一点十分重要,对理解指针十分有帮助.请注意,我声明指针时*号是挨着char的且和…
原文请看:http://blog.csdn.net/dbzhang800/article/details/7542672 两个月前,简单写过QTextCodec中的setCodecForTr等终于消失了 (Qt5) ,在Qt论坛上,不少用户都对去掉这两个函数表示特别的不了解.为什么会这样?我想多少能说明不少用户对C++中源码字符集和执行字符集的不太了解,从而造成对这种函数的依赖或误用. 今天,随着Change QString's default codec to be UTF-8 进入Qt5的m…
长期以来,很多人都清楚,一旦C++源码中直接使用了中文,这样的源码想要跨平台(I18N)会非常困难. 随着: Windows下:MSVC2010成为主流 Linux下:GCC升级到4.6 C++中的中文问题 才算有了一个比较优雅的.跨平台的Workaround. (本文讨论编译器范围:GCC4.6+, MSVC2010sp1+ .本文属于QString系列,但暂不涉及QString) C++ 中文问题 要在C++中正确使用中文,必须要了解下面两个概念: 源码字符集(the source char…
之前的一篇文章<从特拉斯辞职风波到研发效能中的荒唐事>中关于企业内源的内容在研发效能群内引起了大家的热烈讨论.有的小伙伴不同意,有的小伙伴非常不同意,我觉得这都是非常正常的反馈,话不说不透,理不辩不明,我还是特别希望能和大家一起把这个问题弄明白.这篇文章就是那篇文章的后续,本文主要讨论开源社区.开源项目以及企业内源. 企业内部开源 内部开源(Inner Source)简称内源,指把开发开源软件中学到的经验教训应用到公司或组织内部开发软件的实践.公司和组织可以在内部开源的同时开发专有软件. 开源…
范式:关系数据库中的关系是要满足一定要求的,满足不同程度要求的不同范式.满足最低要求的叫第一范式,简称1NF ,在第一范式中满足进一步要求的为第二范式,其余以此类推.通俗来说是满足数据库关系表中的一套规则. 范式理论研究:Codd提出1NF,2NF,3NF概念 2NF 例如:有关系模式S-L-C(Sno,Sdept,Sloc,Cno,Grade),其中Sloc为学生的住处,并且每个系的学生住在同一个地方.S-L-C的码为(Sno,Cno).则函数依赖:Grade对(Sno,Cno)是完全依赖函数…
本文的目标就是要确认那些使用了主键,却混淆了主键的本质而造成的一种反模式. 一.确立主键规范 每个了解数据库设计的人都知道,主键对于一张表来说是一个很重要,甚至必需的部分.这确实是事实,主键是好的数据库设计的一部分.主键是数据库确保数据行在整张表唯一性的保障.它是定位到一条记录并且确保不会重复存储的逻辑机制.主键也同时可以被外键引用来建立表与表之间的关系. 难点是选择那一列作为主键.大多数表中的每个属性值都有可能被很多行使用.例如姓名,电子邮件地址等等都不能保证不会重复. 在这样的表中,需要引入…
1数据库概述 (1) 用自定义文件格式保存数据的劣势. (2) DBMS(DataBase Management System,数据库管理系统)和数据库,平时谈到”数据库”可能有两种含义:MSSQL Server,Oracle等某种DBMS:存放一堆数据库的 一个分类(CateLog). (3) 不同品牌的DBMS有自己不同的特点:MYSQL,MSSQLServer,DB2,Oracle,Access,Sybase等.对于开发人员来讲,大同小异. (4) 除了Access,SQLServerCE…
一.数据库概述 1. 用自定义文件格式保存数据的劣势:并发性差,查找数据的速度差. 2. DBMS(DataBase Management System数据库管理系统)和数据库.平时谈到“数据库”的含义(1)MSSQLServer.Oracle等某种DBMS:(2)存放一堆数据表的一个分类(Catalog). 3. 不同品牌的DBMS有自己的不同特点:MYSQL(适合开发网站.速度快.不严格.可能会丢失数据).MSSQLServer.DB2.Oracle.Access.Sybase等. 4. S…
SQL数据库: 1.数据库概述 (1) 用自定义文件格式保存数据的劣势. (2) DBMS(DataBase Management System,数据库管理系统)和数据库,平时谈到"数据库"可能有两种含义:MSSQL Server,Oracle等某种DBMS:存放一堆数据库的一个分类(CateLog). (3) 不同品牌的DBMS有自己不同的特点:MYSQL,MSSQLServer,DB2,Oracle,Access,Sybase等.对于开发人员来讲,大同小异. (4) 除了Acces…
MongoDB 是基于分布式文件存储的数据库. 开发语言是C++. 具有高性能,可扩展的特点. 是NoSql中最像关系数据库的. 什么是NoSql NoSQL 是 Not only SQL 的缩写. 是对不同于传统的关系数据库的数据管理系统的统称. 一般用来存储超大规模数据, 且数据不需要有具体的模式, 可以横向扩展. 与关系数据库的对比 RDB 存储结构化数据, 数据结构之间可能存在约束; NoSQL无固定模式,一般采用k-v方式, 无表关联等约束. RDB 有规范的 SQL 语言; NoSQ…