上一页 1 ··· 5 6 7 8 9 10 11 12 13 ··· 19 下一页
摘要: 一、表的定义: 对于任何一种关系型数据库而言,表都是数据存储的最核心、最基础的对象单元。现在就让我们从这里起步吧。 1. 创建表: CREATE TABLE products ( product_no integer, name text, price numeric ); 2. 删除表: DROP TABLE products; 3. 创建带有缺省值的表: CREATE TABLE products ( product_no integer, name text, price numeric DEFAULT 9.99 --DEFAULT是关键字,其后的数值9.99是字段pri... 阅读全文
posted @ 2012-04-23 07:42 OrangeAdmin 阅读(41847) 评论(9) 推荐(11)
摘要: 前几天刚刚发了一篇自己开博一年的标志性纪念博客,本不想在如此短的时间内再发布一篇类似的博客了,但仔细想想,就自己目前的心境而言仍然有很多感受想通过博客表达出来。 坦白的讲,自己不是一个非常随性的人,反而恰恰相反,我在做任何事情之前都会经过慎重的思考并制定周密的计划,写博客这件事亦是如此。当然我这样说并不表示自己就没有冲动的时候,事实上2010年的经历对自己来说确实是一个沉痛的教训,不论导致失败的原因是高估了自己,还是低估了新行业的难度,总之自己为此前的一意独行买单了,甚至到目前为止,也仍然没有恢复到此前的水准。然而塞翁失马焉知非福,如果自己仍然处于2010之前的温室环境之中,可能现在也不... 阅读全文
posted @ 2012-04-20 07:31 OrangeAdmin 阅读(2621) 评论(11) 推荐(12)
摘要: 时间过的真是很快,来博客园已经整整一年了,不知道为什么,感觉这一年过的非常充实,也许是因为这一年的项目都比较紧张的原因吧。但是这些对于我这样一个在开发一线奋斗10几年的老兵而言,确实是已经司空见惯了。那这又是为什么呢?正好趁着项目处于交付期,事情相对较少,能够有更多的时间静下来思考和总结一下。和往年相比,最大的变化主要来自于两点,一是自己之前开发的服务容器框架在功能上已经日臻完善,然而随着在实际项目中的应用,也逐渐暴露出一些问题,这主要体现在一些Bugs的修复,接口易用性的优化,性能的调整,新功能的支持,以及文档标准化等。再者就是在博客园正式开通了自己的博客。孙子兵法讲,“夫未战而庙算胜者,. 阅读全文
posted @ 2012-04-18 07:43 OrangeAdmin 阅读(3390) 评论(21) 推荐(8)
摘要: 为什么自己当初要选择Redis作为数据存储解决方案中的一员呢?现在能想到的原因主要有三。其一,Redis不仅性能高效,而且完全免费。其二,是基于C/C++开发的服务器,这里应该有一定的感情因素吧。最后就是上手容易,操作简单。记得在刚刚接触Redis的时候,由于当时项目的工期相当紧张,留给我们做出选择的空间也是非常有限,一旦技术决策失误,造成的后果也比较严重。所以在做出决定之前,我不仅快速的浏览了Redis官网文档,而且还熬夜搜集了很多网上的相关技术文章。在经过一通折腾之后,毅然决然的选择了它,现在回头想想自己确实是幸运的。 这个系列博客中的内容和数据主要来自于Redis官方文档,本人仅仅是.. 阅读全文
posted @ 2012-04-16 07:40 OrangeAdmin 阅读(67335) 评论(34) 推荐(64)
摘要: 在之前的博客中已经非常详细的介绍了Redis的各种操作命令、运行机制和服务器初始化参数配置。本篇博客是该系列博客中的最后一篇,在这里将给出基于Redis客户端组件访问并操作Redis服务器的代码示例。然而需要说明的是,由于Redis官方并未提供基于C接口的Windows平台客户端,因此下面的示例仅可运行于Linux/Unix平台。但是对于使用其它编程语言的开发者而言,如C#和Java,Redis则提供了针对这些语言的客户端组件,通过该方式,同样可以达到基于Windows平台与Redis服务器进行各种交互的目的。 该篇博客中使用的客户端来自于Redis官方网站,是Redis推荐的基于C接口的客. 阅读全文
posted @ 2012-04-13 07:54 OrangeAdmin 阅读(45762) 评论(4) 推荐(12)
摘要: 一、特殊编码: 自从Redis 2.2之后,很多数据类型都可以通过特殊编码的方式来进行存储空间的优化。其中,Hash、List和由Integer组成的Sets都可以通过该方式来优化存储结构,以便占用更少的空间,在有些情况下,可以省去9/10的空间。 这些特殊编码对于Redis的使用而言是完全透明的,事实上,它只是CPU和内存之间的一个交易而言。如果内存使用率方面高一些,那么在操作数据时消耗的CPU自然要多一些,反之亦然。在Redis中提供了一组配置参数用于设置与特殊编码相关的各种阈值,如: #如果Hash中字段的数量小于参数值,Redis将对该Key的Hash Value采用特殊编码。 has 阅读全文
posted @ 2012-04-11 07:52 OrangeAdmin 阅读(24135) 评论(3) 推荐(10)
摘要: 一、请求应答协议和RTT: Redis是一种典型的基于C/S模型的TCP服务器。在客户端与服务器的通讯过程中,通常都是客户端率先发起请求,服务器在接收到请求后执行相应的任务,最后再将获取的数据或处理结果以应答的方式发送给客户端。在此过程中,客户端都会以阻塞的方式等待服务器返回的结果。见如下命令序列: Client: INCR X Server: 1 Client: INCR X Server: 2 Client: INCR X Server: 3 Client: INCR X Server: 4 在每一对请求与应答的过程中,我们都不得不承受网络传输所带来的额外开销。我们通常将这种开销称为RTT 阅读全文
posted @ 2012-04-09 00:19 OrangeAdmin 阅读(10625) 评论(4) 推荐(3)
摘要: 一、概述: Redis在设计之初就被定义为长时间不间断运行的服务进程,因此大多数系统配置参数都可以在不重新启动进程的情况下立即生效。即便是将当前的持久化模式从AOF切换到RDB也无需重启。 在Redis中,提供了一组和服务器管理相关的命令,其中就包含和参数设置有关的CONFIG SET/GET command。二、相关命令列表:命令原型时间复杂度命令描述返回值CONFIG GET parameter主要用于读取服务器的运行时参数,但是并不是所有的配置参数都可以通过该命令进行读取。其中该命令的参数接受glob风格的模式匹配规则,因此如果参数中包含模式元字符,那么所有匹配的参数都将以key/val 阅读全文
posted @ 2012-04-06 00:06 OrangeAdmin 阅读(14247) 评论(0) 推荐(5)
摘要: 一、简介: 和大多NoSQL数据库一样,Redis同样遵循了Key/Value数据存储模型。在有些情况下,Redis会将Keys/Values保存在内存中以提高数据查询和数据修改的效率,然而这样的做法并非总是很好的选择。鉴于此,我们可以将之进一步优化,即尽量在内存中只保留Keys的数据,这样可以保证数据检索的效率,而Values数据在很少使用的时候则可以被换出到磁盘。 在实际的应用中,大约只有10%的Keys属于相对比较常用的键,这样Redis就可以通过虚存将其余不常用的Keys和Values换出到磁盘上,而一旦这些被换出的Keys或Values需要被读取时,Redis则将其再次读回到主内存中 阅读全文
posted @ 2012-04-04 06:34 OrangeAdmin 阅读(12734) 评论(2) 推荐(6)
摘要: 一、Redis提供了哪些持久化机制: 1). RDB持久化: 该机制是指在指定的时间间隔内将内存中的数据集快照写入磁盘。 2). AOF持久化: 该机制将以日志的形式记录服务器所处理的每一个写操作,在Redis服务器启动之初会读取该文件来重新构建数据库,以保证启动后数据库中的数据是完整的。 3). 无持久化: 我们可以通过配置的方式禁用Redis服务器的持久化功能,这样我们就可以将Redis视为一个功能加强版的memcached了。 4). 同时应用AOF和RDB。 二、RDB机制的优势和劣势: RDB存在哪些优势呢? 1). 一旦采用该方式,那么你的整个Redis数据库将只包含一个文件,这. 阅读全文
posted @ 2012-04-02 07:44 OrangeAdmin 阅读(19410) 评论(7) 推荐(10)
上一页 1 ··· 5 6 7 8 9 10 11 12 13 ··· 19 下一页