专注于Web技术的研究

oracle,linux,java,open source,c#,搜索引擎

博客园 首页 新随笔 联系 订阅 管理

随笔分类 -  设计方案

摘要:通过应用程序的连接器(Connector)进行性能控制的的参数是创建的处理请求的线程数。Tomcat使用线程池加速响应速度来处理请求。在Java中线程是程序运行时的路径,是在一个程序中与其它控制线程无关的、能够独立运行的代码段。它们共享相同的地址空间。多线程帮助程序员写出CPU最大利用率的高效程序,使空闲时间保持最低,从而接受更多的请求。 阅读全文
posted @ 2010-05-21 10:06 一条辉 阅读(1525) 评论(0) 推荐(0)

摘要:二、Java虚拟机调优 应该选择SUN的JVM,在满足项目需要的前提下,尽量选用版本较高的JVM,一般来说高版本产品在速度和效率上比低版本会有改进。 JDK1.4比JDK1.3性能提高了近10%-20%,JDK1.5比JDK1.4性能提高25%-75%。 因此对性能要求较高的情况推荐使用 JDK1.6。 【适用场景】 任何项目。 阅读全文
posted @ 2010-05-21 10:04 一条辉 阅读(1026) 评论(0) 推荐(1)

摘要:Hash 算法的一个衡量指标是单调性( Monotonicity ),定义如下: 单调性是指如果已经有一些内容通过哈希分派到了相应的缓冲中,又有新的缓冲加入到系统中。哈希的结果应能够保证原有已分配的内容可以被映射到新的缓冲中去,而不会被映射到旧的缓冲集合中的其他缓冲区。 容易看到,上面的简单 hash 算法 hash(object)%N 难以满足单调性要求。 阅读全文
posted @ 2010-03-24 17:56 一条辉 阅读(713) 评论(0) 推荐(0)

摘要:Cassandra 项目是Facebook在2008年开源出来的,随后Facebook自己使用Cassandra的另外一个不开源的分支,而开源出来的 Cassandra主要被Amazon的Dynamite团队来维护,并且Cassandra被认为是Dynamite2.0版本。目前除了Facebook之外,twitter和digg.com都在使用Cassandra。Cassandra的主要特点就是它不是一个数据库,而是由一堆数据库节点共同构成的一个分布式网络服务,对Cassandra的一个写操作,会被复制到其他节点上去,对Cassandra的读操作,也会被路由到某个节点上面去读取。对于一个Cassandra群集来说,扩展性能是比较简单的事情,只管在群集里面添加节点就可以了。我看到有文章说Facebook的Cassandra群集有超过100台服务器构成的数据库群集。Cassandra也支持比较丰富的数据结构和功能强大的查询语言,和MongoDB比较类似,查询功能比MongoDB稍弱一些,twitter的平台架构部门领导Evan Weaver写了一篇文章介绍Cassandra:http://b 阅读全文
posted @ 2010-03-24 17:54 一条辉 阅读(3660) 评论(1) 推荐(0)

摘要:前言 在我们的日常web应用开发当中memcached可以算作是当今的标准开发配置了。相信memcache的基本原理大家也都了解过了,memcache虽然是分布式的应用服务,但分布的原则是由client端的api来决定的,api根据存储用的key以及已知的服务器列表,根据key的hash计算将指定的key存储到对应的服务器列表上。 基本的原理以及分布 在这里我们通常使用的方法是根据 key的hash值%服务器数取余数 的方法来决定当前这个key的内容发往哪一个服务器的。这里会涉及到一个hash算法的分布问题,哈希的原理用一句话解释就是两个集合间的映射关系函数,在我们通常的应用中基本上可以理解为 在集合A(任意字母数字等组合,此处为存储用的key)里的一条记录去查找集合B(如0-2^32)中的对应记录。(题外话:md5的碰撞或者说冲突其实就是发生在这里,也就是说多个A的记录映射到了同一个B的记录) 阅读全文
posted @ 2010-03-24 16:18 一条辉 阅读(18949) 评论(0) 推荐(5)

摘要:本网站是从一个小站成长起来的,因为流量的加大,所有Web的应用在部署上采用了集群的方式。原来用户信息是保存在Session中,但如果采用硬件设置来支持服务器sticky总是比较麻烦,而且带来性能损失。为了解决Session在集群环境中不能跨服务器的尴尬,就有了这个解决方案。 阅读全文
posted @ 2008-04-03 13:06 一条辉 阅读(6181) 评论(7) 推荐(0)

摘要:网站认证码设计原则:高效,安全,偶合性弱,能方便嵌入web的任何应用中去。实现方法:Javascript + Java Servlet + Oracle。前台JS,结合Servlet生成认证码,数据管理存储在Oracle数据库表中。 阅读全文
posted @ 2008-04-01 18:29 一条辉 阅读(3640) 评论(13) 推荐(0)