- 博客(18)
- 收藏
- 关注
原创 memcache java客户端优化历程
http://www.infoq.com/cn/articles/memcached-java
2011-07-20 11:45:15
892
原创 新工作几天有感
不知不觉来新公司10天了,巧遇新公司组织变更,再加上明天有新人入职企业文化培训,在此正好写点东西感慨感慨下。话说这些时间是我新同事们宣扬的他们入职以来最轻松的几天,不过再轻松,也看他们在下班后都会在那学习或者讨论一些生活呀,技术呀之类的话题,一般没什么事的话都
2011-07-05 20:54:23
1258
原创 google分布式三篇论文地址
Google的三大核心技术MapReduce、GFS和BigTable的论文MapReduce: http://blog.csdn.net/active1001/archive/2007/07/02/1675920.aspxGFS: http://blog.csdn.net/xuleicsu/archive/2005/11/10/526386.aspxBigTa
2011-06-16 23:31:00
4043
原创 淘宝面试记
最过三个星期的面试,人生的第一次转折终于尘埃落定,虽然过程很平坦,但还是颇有感慨。 有喜就有悲,其中拒了四个公司的offer,其中有一家实在是不情愿,而且自己还有些失落,不过为了自己的目标,选择去杭州淘宝。人生就是这样,很多东西是缘分注定了的。 先说下我自己的情况,本人毕业三流二本大学,非计算机专业,因个人兴趣而走向java这条路,其中也经历过培训机构,但个人感觉培训机构教的太浅,而且更
2011-06-13 16:38:00
31682
116
原创 BASE
1. http://www.infoq.com/cn/news/2008/03/ebaybase 很好的以ebay为例子的BASE介绍2. http://www.ccs.neu.edu/groups/IEEE/ind-acad/brewer/index.htm 专门介绍BASE的PPT哦,呵呵3. http://www.infoq.com/cn/articles/ebay-scalabili
2011-06-08 16:41:00
855
转载 IO性能提升
目前磁盘都是机械方式运作的,主要体现在磁盘读写前寻找磁道的过程。磁盘自带的读写缓存大小,对于磁盘读写速度至关重要。读写速度快的磁盘,通常都带有较大的读写缓存。磁盘的寻道过程是机械方式,决定了其随机读写速度将明显低于顺序读写。在我们做系统设计和实现时,需要考虑到磁盘的这一特性。 FastDFS是一个开源的高效分布式文件系统,它最初的实现,文件是按hash方式随机分布到多个目录中的,后来增加了顺
2011-06-07 11:14:00
1352
转载 tomcat6 nio
首先,何谓nio? 如果读者有socket的编程基础,应该会接触过堵塞socket和非堵塞socket,堵塞socket就是在accept、read、write等IO操作的的时候,如果没有可用符合条件的资源,不马上返回,一直等待直到有资源为止。而非堵塞socket则是在执行select的时候,当没有资源的时候堵塞,当有符合资源的时候,返回一个信号,然后程序就可以执行accept、rea
2011-06-03 23:47:00
1575
转载 tomcat6 classloader
tomcat6.0.18与Tomcat5的类加载机制有所不同,在5版本时,如下图:Bootstrap | System | Common / / Catalina Shared / / Webapp1 Webapp2在Tomcat5.5/se
2011-06-03 23:38:00
2011
转载 java线程及ComcurrentHashMap
一.Java并发基础当一个对象或变量可以被多个线程共享的时候,就有可能使得程序的逻辑出现问题。在一个对象中有一个变量i=0,有两个线程A,B都想对i加1,这个时候便有问题显现出来,关键就是对i加1的这个过程不是原子操作。要想对i进行递增,第一步就是获取i的值,当A获取i的值为0,在A将新的值写入A之前,B也获取了A的值0,然后A写入,i变成1,然后B也写入i,i这个时候依然是1.当然java的内存模型没有上面这么简单,在Java Memory Model中,Memory分为两类,main memory和w
2011-06-02 13:38:00
1814
转载 JVM垃圾回收GC原理
一、相关概念 基本回收算法 1. 引用计数(ReferenceCounting) 比较古老的回收算法。原理是此对象有一个引用,即增加一个计数,删除一个引用则减少一个计数。垃圾回收时,只用收集计数为0的对象。此算法最致命的是无法处理循环引用的问题。 2. 标记-清除(Mark-Sweep) 此算法执行分两阶段。第一阶段从引用根节点开始标记所有被引用的对象,第二阶段遍历整个堆,把未标记的对象清除。此算法需要暂停整个应用,同时,会产生内存碎片。 3. 复制(Copying) 此算法把内存空间划为两个相等的区域
2011-06-02 13:16:00
5210
转载 数据库索引
<br />1.什么是索引?<br />我想这个用过数据库的人都应该知道了,索引类似于书的目录,主要用于提高查询效率,也就是按条件查询的时候,先查询索引,再通过索引找到相关的数据,索引相当于记录了对某个关键词,指定到不同的文件,或者文件里的不同位置,当然索引自身也是通过文件来保存的。<br />2.索引的类型<br />有两种基本的索引结构,也就是索引文件的保存方式,一个是顺序索引,就是根据值的顺序排序的(这个文件里面的值,也就是为其建索引的字段值,是顺序的放在索引文件里面),另外一个是散列索引,就是将值平
2011-05-30 01:05:00
1059
转载 网站一些优化经验
<br />一、前端优化<br /><br />网站性能优化是一个很综合的话题,涉及到服务器的配置和网站前后端程序等各个方面,我只是从实际经历出发,分享一下自己所尝试过的网站性能优化方法。之所以在标题上挂一个web2.0,是因为本文更偏重于中小网站的性能优化,我所使用的系统也是典型web2.0的LAMP架构。<br /><br />首先讲讲前端的优化,用户访问网页的等待时间,有80%是发生在浏览器前端,特别是页面和页面中各种元素(图片、CSS、Javascript、 flash…)的下载之上。因此在很多情况
2011-05-23 00:42:00
871
转载 Varnish+ESI实现静态页面的局部缓存
<br />页面静态化是搭建高性能网站必用的招式之一,页面静态化可以有效提升系统响应速度,同时也有利于搜索引擎优化。但在页面静态化后,静态页面之间包含(例如所有的静态页面包含页头、页脚)以及静态页面中的局部信息的动态更新又成为新的问题。<br /> 静态页面之间的包含一般有如下一些方案:<br /> 1、Client Side Includes(CSI):通过frame、iframe、javascript、javacript+ajax等方式将另外一个页面的内容动态包含进来。像现在流行的jquery
2011-05-22 23:47:00
5180
原创 Web2.0各大网站架购
<br /><br />记得在大学里不止一次关注网站架构方面的东西了,但每次都是泛泛了解,也没有着重记录,一段时间后对各种架构的思想也就模糊了。这几天不知怎么的又心血来潮(可能是快毕业了冲动了)想深入了解一下网站架构方面的知识,并想通过这次来总结一下网站架构,记录一点东西供自己以后翻阅,也给那些希望了解这方面知识的朋友提供一点点有用的信息,下面是我这次学习的总结笔记,有什么写得不妥的地方还请大家指出,还有希望这篇随笔能抛砖引玉,大家各抒己见。<br />1、MySpace架构<br />回顾了MySpace
2011-05-18 20:01:00
2175
转载 Cache
<br /> 概述<br /> Cache有从前到后有很多个层次,越靠近客户,缓存的效果越明显:数据库自身的缓存Data Access对数据对象及查询结果的二级缓存,典型如Hibernate。业务级缓存,包括Spring用AOP实现的方法级缓存。页面片段与页面内容的缓存。<br /> 缓存是对获取代价较为昂贵资源的cache,意思是cache是可丢失的,因此通常会限制总量大小,然后采用先进先出,最近访问等算法在溢出时丢失部分缓 存,或者采用max_idle_time,max_live_time时主
2011-05-04 15:11:00
857
转载 Memcached深度分析
<br /><br />Memcached是danga.com(运营LiveJournal的技术团队)开发的一套分布式内存对象缓存系统,用于在动态系统中减少数据库负载,提升性能。关于这个东西,相信很多人都用过,本文意在通过对memcached的实现及代码分析,获得对这个出色的开源软件更深入的了解,并可以根据我们的需要对其进行更进一步的优化。末了将通过对BSM_Memcache扩展的分析,加深对memcached的使用方式理解。<br />本文的部分内容可能需要比较好的数学基础作为辅助。<br />◎Memc
2011-05-04 12:58:00
1647
原创 SNA架构的几种实现方式
<br />以往集群架构都采用Session共享模式进行设计,而后PHP等方面提出了SNA架构,主张Session不共享。SNA架构思想,无论对企业应用还是大型互联网站,极大提高了web应用的吞吐量和性能。 : O" g5 Z% P( [ ^<br /> 一般SNA架构以集成分布式Cache例如 memcached 的方案居多,此处姑且称为 Cache模式。 <br /> <br />1 u7 U6 c! o. x. A( `<br /> 我结合公司电信项目的情况,以及思考,总结另一种方案,供参考
2011-04-27 14:15:00
1280
转载 Cassandra data model
<br />Cassandra 数据模型概述<br />关于数据模型的基本概念先参考 http://wiki.apache.org/cassandra/DataModel 。 注意:这篇文章中关于 Column Families 和 Rows 的描述是不准确的,而且缺少 column family store (CFS) 这一重要概念。 下面对 Column Families 做进一步的说明。Column-family 数据模型<br />为了简化,我们先忽略 SuperColumn。<br />在 Cas
2011-04-26 14:23:00
1981
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人