摘要: 1、什么是内存映射文件(memory mapped files)?内存映射文件是操作系统通过调用函数mmap()创建的一个放在内存中的一个数据文件。这种文件可以当做一个从零开始的内存或者数组,你可以将内容放在任意位置。内存映射文件是mongodb存储引擎中的一个很重要组成部分。通过使用这种文件,mongodb可以将数据文件当内存一样任意分配和使用。同时又可以以一种极其简单的访问方式和极快的速度访问和操作数据。2、内存映射文件的原理是什么?内存映射文件会将一个文件映射到内存,使mongodb以访问内存的方式访问文件(无需经过操作系统的缓存,性能高)。3、Mongodb是如何使用内存映射文件的?m 阅读全文
posted @ 2013-07-11 20:50 猿界汪汪队 阅读(473) 评论(0) 推荐(0) 编辑
摘要: spring,真是一个好东西;性能,真是个让人头疼又不得不面对的问题。如何排查出项目中性能瓶颈?如何迅速定位系统的慢查询?在这我就不说spring自带的性能监控器了,实在是有些简陋。下面就说说我自己写的这个性能监控器。先看看效果:2013-07-07 19:19:50,440 WARN [main] [aop.PerformanceInterceptor] |-144 ms; [HelloService.hellpAop] |+---10 ms; [AnotherService.childMehhod] |+---21 ms; [AnotherService.childMehhod3... 阅读全文
posted @ 2013-07-07 22:33 猿界汪汪队 阅读(2450) 评论(1) 推荐(1) 编辑
摘要: Mongodb FAQ(基础篇),是官方文档的翻译。如有翻译不到之处,还请谅解。1、Mongdb是什么数据库?mongodb是一个面向文档(document)的数据库,既不支持表连接,也不支持事务。主从复制,故障自动转移,内建的水平扩展是mongodb的几个主要特性。同时还支持二级索引,表达式查询语言,基于文档的原子写操作,一致性读取。2、Mongdb有表吗?mongodb的collections和RMDB的table的两个重要区别。一是你可以只向一些document添加某一列的属性,而不用将collection里面的所有document都增加列属性。二是Documents in a sing 阅读全文
posted @ 2013-07-07 08:17 猿界汪汪队 阅读(329) 评论(0) 推荐(0) 编辑
摘要: 前言:代码简洁与性能高效无法两全其美,本系列文章专注于并发编程,提高性能,本文章是在读 Java Concurrency In Practice时自己总结的一些体会。有理解不正确的地方,还请指出。请回答以下几个问题:问题一、你的项目是否运行在多核CPU甚至多CPU的服务器上?问题二、你的项目中,是否使用到了线程池?问题三、你的项目是否使用到了集群或者用到了分布式框架?问题一不用想,任何人都会回答是,那么恭喜你,你离并发编程仅有1米的距离了,已经有必要看看并发编程了。如果你符合以上三个问题的所有条件,那么恭喜你,你离并发编程只有0.1毫米了,你应该好好学习并发编程了,并发已经深深渗人你的项目中, 阅读全文
posted @ 2013-07-04 22:59 猿界汪汪队 阅读(235) 评论(0) 推荐(0) 编辑
摘要: 前言:代码简洁与性能高效无法两全其美,本文章专注于大并发程序的性能,如果您追求代码简洁,本文章可能不太适合,因为本文章主要讨论如何写出在高并发下也能运行很好的代码。并文章属于Java并发编程实战中例子。但结合实际场景进行了阐述。通常,我们如果写一个单实例模式的对象,一般会这样写:写法一:public class Singleton { private static final Singleton instance = new Singleton(); /** * 防止其他人new对象 */ private Singleton(){ ... 阅读全文
posted @ 2013-07-03 21:22 猿界汪汪队 阅读(531) 评论(0) 推荐(0) 编辑