现在位置: 首页 > admin发表的所有文章
  Redis中到处都会进行内存分配操作。为了屏蔽不同平台之间的差异,以及统计内存占用量等,Redis对内存分配函数进行了一层封装,程序中统一使用zmalloc,zfree一系列函数,位于zmalloc.h,zmalloc.c文中。下面学步园小编来讲解下Redis在内存分配和使用统计方面有哪些技巧?   Redis在内存分配和使用统计方面有哪些技巧   具体来说就是:   若系统中存在Google的TC_MALLOC库,则使用tc_malloc一族函数代替原本的malloc一族函数。   若当前系统是Mac系统,则使用中的内存分配函数。   其他情况,在每一段分配好的空间前头......
阅读全文
  • 07月
  • 02日
数据库 ⁄ 共 1454字 暂无评论
  CassandraUnit是一个Cassandra数据操作的单元测试框架,其功能与关系型数据库测试框架DBunit类似,只是其测试对象是Cassandra。下面学步园小编来讲解下CassandraUnit怎样使用?   CassandraUnit怎样使用   创建一个用于存储数据的xml文件,命名为simpleDataSet.xml   ?xmlversion="1.0"encoding="UTF-8"standalone="yes"?>   keyspacexmlns="http://xml.dataset.cassandraunit.org">   name>beautifulKeyspaceName/name>   columnFamilies>   columnFamily>   name>beautifulColumnFamilyName/name>   row>  ......
阅读全文
  • 07月
  • 02日
数据库 ⁄ 共 1399字 暂无评论
  BSON是由10gen开发的一个数据格式,目前主要用于MongoDB中,是MongoDB的数据存储格式。BSON基于JSON格式,选择JSON进行改造的原因主要是JSON的通用性及JSON的schemaless的特性。下面学步园小编来讲解下BSON怎优化来实现目标?   BSON怎优化来实现目标   1.更快的遍历速度   对JSON格式来说,太大的JSON结构会导致数据遍历非常慢。在JSON中,要跳过一个文档进行数据读取,需要对此文档进行扫描才行,需要进行麻烦的数据结构匹配,比如括号的匹配,而BSON对JSON的一大改进就是,它会将JSON的每一个元素的长度存在元素的头部......
阅读全文
  EventMachine是一个Ruby的事件驱动网络库,一个以Redis的Pub/Sub机制为后端,以WebSockets为前端的类EventMachine实现。下面学步园小编来讲解下Redis的Pub/Sub怎样以WebSockets为前端的类EventMachine实现?   Redis的Pub/Sub怎样以WebSockets为前端的类EventMachine实现   前端代码,创建Socket连接到本地8081端口,当有消息push过来的时候,将消息打印到指定的div里:                                    Redis的Pub/Sub怎样以WebSockets为前端的类EventMachine实现   后端代码:   require'......
阅读全文
  初次接触MongoDB的人,无不惊讶于它对内存的贪得无厌,那就先看一个MongoDB服务器的top命令结果:shell>top-p$(pidofmongod),Mem:32872124ktotal,30065320kused,2806804kfree,245020kbuffers。下面学步园小编来讲解下Linux如何管理内存?Linux中MongoDB是如何使用内存?   Linux如何管理内存   在Linux里(别的系统也差不多),内存有物理内存和虚拟内存之说,物理内存是什么自然无需解释,虚拟内存实际是物理内存的抽象,多数情况下,出于方便性的考虑,程序访问的都是虚拟内存地址,然后操作系统会把它翻译成物理内存地址。 ......
阅读全文
在默认情况下,mongod是监听在0.0.0.0之上的。而任何客户端都可以直接连接27017,且没有认证。好处是,开发人员或dba可以即时上手,不用担心被一堆配置弄的心烦意乱。坏处是,显而易见,如果你直接在公网服务器上如此搭建MongoDB,那么所有人都可以直接访问并修改你的数据库数据了。下面学步园小编来讲解下MongoDB怎么样默认安全设置?MongoDB中JavaScript怎么执行与保护? MongoDB怎么样默认安全设置 在默认情况下,mongod是监听在0.0.0.0之上的。而任何客户端都可以直接连接27017,且没有认证。好处是,开发人员或dba......
阅读全文
我们知道Redis作为一个NoSQL类型的数据库,使用的是key作为存取对象的唯一标识,对“key”的通俗理解就是“字符串”。在Redis中字符串又分为两类:二进制安全(BinarySafe)的和非二进制安全的,关于二进制安全的描述可以参考这里。Redis处理存储的内容时用的是二进制安全的字符串,而作为key使用的非二进制安全的。下面学步园小编来讲解下Redis内部怎么实现字符串类型? Redis内部怎么实现字符串类型 Redis是一个基于键-值存储的数据库。Redis中使用字符串作为它的键,同时字符串也是“值”所使用的最基本的数据类型。当然还有......
阅读全文
  • 07月
  • 02日
数据库 ⁄ 共 6856字 暂无评论
  我们都知道,MongoDB使用内存映射的方式来进行数据文件的存取操作。当你运行一个程序,程序中有许多东西需要存储,堆、栈以及各种功能库。而这一切在你写程序时可能都不需要自己控制,Linux内核会帮你完成这些存储的调度,你只需要告诉它你需要做什么,内核就会在合适的地方给你分配内存空间。下面学步园小编来讲解下Linux虚拟内存怎么实现?   Linux虚拟内存怎么实现   第一个例子:下面一段程序会打印出程序的pid(进程号)后挂起。   #include   #include   #include   intmain(){   printf("run`pmap%d`\n",getp......
阅读全文
  NoSQL带给我们的东西很多,高性能,水平扩展性,还有不一样的思维方式。丰富的数据结构使得redis的设计非常的有趣。不像关系型数据库那样,DEV和DBA需要深度沟通,review每行sql语句,也不像memcached那样,不需要DBA的参与。redis的DBA需要熟悉数据结构,并能了解使用场景。下面学步园小编来讲解下有哪些常见Redis数据库键值的设计?   有哪些常见Redis数据库键值的设计   用户登录系统   记录用户登录信息的一个系统,我们简化业务后只留下一张表。   关系型数据库的设计   mysql>select*fromlogin;   +---------+......
阅读全文
  Build-CoucbDB是一个CouchDB的自动安装程序,它的特点是将所有CouchDB的依赖包都放置在独立的目录,这样你在卸载时也可以直接删除安装目录即可。下面学步园小编来讲解下怎样使用Build-CouchDB在系统上安装多个CouchDB?   怎样使用Build-CouchDB在系统上安装多个CouchDB   RedHatEnterpriseLinuxServerrelease5.5(Tikanga)   CentOS5.5   DebianGNU/Linux5.0(Lenny)   Ubuntu10.04LTS(LucidLynx)   Ubuntu9.10(KarmicKoala)   Fedora13   MacOSX   OpenSUSE11.3   ScientificLinux5.3   Solaris10,OpenSol......
阅读全文
  在关系型数据库时代,SQL注入攻防几乎成了每一个Web开发者的必修课,很多NoSQL的支持者称NoSQL的同时也就NoSQL注入了。下面学步园小编来讲解下怎样利用GET参数判断不严格进行MongoDB注入?   怎样利用GET参数判断不严格进行MongoDB注入   使用SQL数据库存储用户名密码的系统,我们检测用户名与密码的过程可能是这样的:   mysql_query("SELECT*FROMuser   WHEREusername=".$_GET['username'].",   ANDpasswd=".$_GET['passwd'])   我们使用MongoDB进行最简单的用户名与密码检测可能是这样的:   $collection->find......
阅读全文
  • 07月
  • 02日
数据库 ⁄ 共 2541字 暂无评论
  CQS(CouchDBQueueService)是一个用CouchDB构建的异步队列系统,如果你用过Amazon的SQS队列服务,那么你会发现CQS与SQS的api完全一致。下面学步园小编来讲解下怎样使用node.js来操作CQS?   怎样使用node.js来操作CQS   安装:   $npminstallcqs   初始化你的CQS模块:   //Anormalimport.   varcqs=require('cqs');   //Pre-applymycouchanddbname.   cqs=cqs.defaults({"couch":"https://user:password@example.iriscouch.com"   ,"db":"cqs_queue"   });   列出所有的队列:   cqs.ListQueues(functio......
阅读全文