- 博客(16)
- 资源 (41)
- 收藏
- 关注
转载 Memcached 学习笔记(二)内存机制
Memcached 学习笔记(二)内存机制1.Slab Allocation机制在使用该机制以前,内存分配是使用free和malloc来实现的,这样就会造成大量的内存碎片,加重内存管理器的负担,于是Slab Allocation就是为了应对这个问题的。他的原理就是按照预先定义的大小,将内存分成很多特定长度的块,这样来解决内存碎片。另外,Slab Allocation还有重复使用
2012-03-30 10:12:24 642
原创 java中的队列与堆栈
java中的队列Queue今天无意中看到java里面的Queue,联想到以前用c来做宽度遍历的时候还得自己来组织数据结构,现在java里面提供了Queue接口,其中LinkedList就实现的这么一个接口,同时与队列对应的,java有一个栈的实现:Queue q = new LinkedList();q.offer("A");q.offer("B");System.out.
2012-03-27 23:29:09 1049
转载 Memcached 学习笔记(一)安装 & helloworld
Memcached 学习笔记(一)安装 & helloworld1. 安装Memcached首先是下载 memcached 了,目前最新版本是 1.1.12,直接从官方网站即可下载到 memcached-1.1.12.tar.gz。除此之外,memcached 用到了 libevent,我下载的是 libevent-1.1a.tar.gz。接下来是分别将 libevent-
2012-03-27 15:54:41 2611
转载 MySQL学习笔记(六)扩展性设计之Memcached
MySQL学习笔记(六)扩展性设计之Memcached1.作为系统性能提升的工具首先,我们给出使用Memchched作为Cache服务层的简图如下所示:从图中可以看出,所有数据都需要insert,update,delete到Master中,并且如果对Master进行update或者delete之后,从memcached中delete掉,从而保持数据的一致性。读取数据
2012-03-27 14:16:40 1213
转载 MySQL学习笔记(五)扩展性设计之Replication
MySQL学习笔记(五)扩展性设计之Replication1.Replication的意义首先,我们需要清楚一个数据库据系统的扩展性实际上是主要体现在两个方面,一个是横向扩展,另一个则是纵向扩展,也就是我们常说的Scale Out 和Scale Up。Scale Out 就是指横向的扩展,向外扩展,也就是通过增加处理节点的方式来提高整体处理能力,说的更实际一点就是通过增加机器来增加整体
2012-03-27 10:58:28 955
转载 MySQL学习笔记(四)性能优化2
MySQL学习笔记(四)性能优化21.高效的模型设计(1)适度冗余,让查询尽量减少Join将别的表的数据拿出来一部分放在自己表里面,比如:发布信息表里面不仅保存用户ID,同时保存一份nickname(2)大字段垂直拆分把字段拆分出来放在另外一张表里面,比如:一些大字段,文章额内容,产品介绍等,还有访问不频繁的数据(3)大表水平拆分把表中不分数据拿出来单独放在一张表里
2012-03-27 01:17:58 637
转载 MySQL学习笔记(三)性能优化1
MySQL学习笔记(三)性能优化11.MySQL 数据库锁定机制MySQL的数据库锁定分为表级锁定,行级锁定,页级锁定。Innodb 存储引擎和MyISAM 存储引擎最大区别主要有四点,第一点是缓存机制,第二点是事务支持,第三点是锁定实现,最后一点就是数据存储方式的差异。1.1 表级锁定MySQL的表级锁定分为读锁定和写锁定,通过四个队列来维护这两周锁定,分为当前锁定的正在读写
2012-03-25 22:58:41 632
转载 Nginx 环境搭
Nginx 环境搭建1.下载pcrehttp://jaist.dl.sourceforge.net/project/pcre/pcre/7.9/pcre-7.9.tar.gz2.安装pcre-7.9.tar.gz#tar zxvf pcre-7.9.tar.gz#cd pcre-7.9/#./configure#make && make installpcre是一个
2012-03-25 21:22:43 1105
转载 MySQL学习笔记(二)架构组成
MySQL学习笔记(二)架构组成1.物理文件1.1 日志文件错误日志:需要在启动时开启-log-error 选项。错误日志的默认存放位置在数据目录下,以hostname.err 命名。但是可以使用命令:--log-error[=file_name],修改其存放目录和文件名。二进制日志:当我们通过“--log-bin[=file_name]”打开了记录的功能之后,MySQL 会将所有
2012-03-22 17:23:22 682
原创 MySQL学习笔记(一)基本介绍
MySQL学习笔记(一)基本介绍1.与其他数据库的比较1.1功能比较MySQL 基本实现了ANSI SQL 92 的大部分标准,仅有少部分并不经常被使用的部分没有实现。在事务支持方面,虽然MySQL 自己的存储引擎并没有提供,但是已经通过第三方插件式存储引擎Innodb 实现了SQL 92 标准所定义的四个事务隔离级别的全部,只是在实现的过程中每一种的实现方式可能有一定的区别,
2012-03-22 16:06:45 980
原创 ibatis学习笔记(四) 缓存
ibatis学习笔记(四) 缓存1.缓存配置首先我们看一下缓存配置的样式 <select id="getProduct" parameterClass="java.lang.Integer" resultClass="product" cacheModel="cache1"> <![CDATA[ select * from t_product
2012-03-21 17:01:06 807
原创 ibatis学习笔记(三) 数据关联
ibatis学习笔记(三) 数据关联我们来讨论一下关联数据的情况1.一对多关联首先,我们有两张表,商品和评论,表的结构如下:create table t_product ( id int(11) not null auto_increment, name varchar(50) default null, description var
2012-03-21 00:44:06 1574
转载 Mysql 性能
今天,数据库的操作越来越成为整个应用的性能瓶颈了,这点对于Web应用尤其明显。关于数据库的性能,这并不只是DBA才需要担心的事,而这更是我们程序员需要去关注的事情。当我们去设计数据库表结构,对操作数据库时(尤其是查表时的SQL语句),我们都需要注意数据操作的性能。这里,我们不会讲过多的SQL语句的优化,而只是针对MySQL这一Web应用最多的数据库。希望下面的这些优化技巧对你有用。1.为查询缓
2012-03-14 23:46:50 891
原创 ibatis学习笔记(二) 基本操作
ibatis学习笔记(二)基本操作上一次,做了一个简单的ibatis的例子,这回想针对上次的例子在继续研究1.基本操作实例(1)数据写入操作Product prod = new Product(); prod.setName("联想 T400 笔记本");prod.setPrice(8999);sqlMap.startTransaction();sqlMap.i
2012-03-14 23:19:35 884
原创 ibatis学习笔记(一)例子
ibatis学习笔记(一)例子 之前用Hibernate用的多了,可能先入为主,关注别的持久层技术就少了,最近见到很多注重性能和效率的工程在使用iBatis,自己就留心了一下,整理一个学习总结,首先从一个Hello world开始吧。1.数据库创建create database sample;use sampledrop table if exists `t_use
2012-03-13 21:54:43 1301
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人