- 浏览: 21317 次
- 性别:
- 来自: 北京
最新评论
文章列表
loadrunner 27796 这个问题困扰了很久:
在一次性能测试过程中,使用http协议的多用户向服务器发送请求。设置了持续时间,出现错误为:Action.c(8): Error -27796: Failed to connect to server "server:port": [10060] Connection timed out.
原因:并非客户端性能好,而是服务端性能好,发出压力太快,所以把tcp/ip的连接或端口占满(XP系统默认开10个连接)
解决方法:
cpTimedWaitDelay
MaxUserPort
1, ...
JBehave is a framework for Behaviour-Driven Development (BDD). BDD is an evolution of test-driven development (TDD) and acceptance-test driven design, and is intended to make these practices more accessible and intuitive to newcomers and experts alike. It shifts the vocabulary from being test-base ...
java多线程之CyclicBarrier使用
- 博客分类:
- Java
应用场景 在某种需求中,比如一个大型的任务,常常需要分配好多子任务去执行,只有当所有子任务都执行完成时候,才能执行主任务,这时候,就可以选择CyclicBarrier了。例(选手赛跑)
package com.client;
import java.util.Random;
import java.util.concurrent.BrokenBarrierException;
import java.util.concurrent.CyclicBarrier;
import java.util.concurrent.ExecutorService;
import j ...
CountDownLatch的使用
应用场景:适用于需要等待某个条件达到要求后才能做后面的事情;同时当线程都完成后也会触发事件,以便进行后面的操作。例(游戏中需要等待五个人同时就续后才能开始)
// 模拟了100米赛跑,10名选手已经准备就绪,只等裁判一声令下。当所有人都到达终点时,比赛结束。
public static void main(String[] args) throws InterruptedException {
// 开始的倒数锁
final CountDownLatch begin = new Co ...
常用插件地址:
1、svn http://subclipse.tigris.org/update_1.6.x
2、maven http://sourceforge.net/projects/maveneclipse/files/update-site/
3、log4e - http://log4e.jayefem.de/update
4、findbugs - http://findbugs.cs.umd.edu/eclipse
5、
单机程序向分布式的问题之一-Session保持
- 博客分类:
- Java
当从单机程序部署到多台分布式服务式,经常会遇过这些问题:
1、session不能保持;由于是多台服务器再加上有负载均衡,所以页面里的每个请求,没准会分配到哪个服务器上。
解决方案:
1、最简单的办法:利用nginx的ip_hash分配方式,使用同一IP请分配到固定的服务器。
但是这种办法有多种限制,类如nginx必须是最前端的,前面不能有lvs之类的,否则获取来的IP只能是同一个达不到负载均衡的目的。再则公司网段的内网机器也是不可以的,因为这些机器的出口有可能是一个外网IP,或者固定几个IP。这样也达不到目的。
2、采用nginx的扩展;nginx ...
一致性hash在memcache中的路由应用
- 博客分类:
- Java
memcache主要由:路由模块、通信模块、接口等等够成。
一、普通hash映射的应用
人称通常称这种算法为“余数hash”、或者“取模hash”。只考虑hash的应用,不考虑具体hash算法的实现。具体hash算法实现,参考http://baike.baidu.com/view/273836.htm
应用场景:
比如你有 3 个 cache 服务器(后面简称 cache ),那么如何将一个对象 object 映射到 3 个 cache 上呢,你很可能会采用类似下面的通用方法计算 object 的 hash 值,然后均匀的映射到到
postgres 命令行基本操作
- 博客分类:
- postgres
1、查看当前用户已有数据库su postgrespsql -l2、连接数据库dbpsql db3、查看当前库下所有的表\d4、查看当前表的结构\d tablename5、查看当前编码格式\encodingshow encoding6、设置当前编码格式\encoding 'utf-8'
7、分页查询语句select * from xxx where a>b limit 10 offset 0;
netty由JBOSS提供的一个开源框架。主要实现异步、事件驱动的网络应用程序。说简单的,我们用netty开发最常的就是是开发基于tcp/ip或udp层的程序。(公司内容调用,比如bus系统需要用调search或导航程序等 )。对外提供的接口应用,一般就基于http协议或https协议即可。
主要特点:
一、NIO ,非阻塞式IO,我们可以用原生的JDK提供的NIO包开发一个基于NIO模式的socket服务端和客户端程序,但成本较高,还可能由于技术水平等各种原因,导致bug频出,因此,利用第三方的开源封装包,非常“物美价廉”了。
二、长连接,只需要在客户端和服务端开启keepali ...
http://www.oracle.com/webfolder/technetwork/tutorials/obe/java/G1GettingStarted/index.html
Concurrent Mark Sweept CMS
启用方式:-XX:+UseConcMarkSweepGC,表示年老代使用此机制收回
基础算法:标记-清除
回收过程:
1、初始标记(STW stop the world),扫描能够和“根对象”直接关系的对象,并作标记。时间快;
2、并发标记
3、并发预清理,处理“并发标记”的对象(可能会有一些新的对象晋升到老年代),减少下一阶段(S ...
一、生态系统
这一切,都起源自Web数据爆炸时代的来临
数据抓取系统 - Nutch
海量数据怎么存,当然是用分布式文件系统 - HDFS
数据怎么用呢,分析,处理
MapReduce框架,让你编写代码来实现对大数据的分析工作
非结构化数据(日志)收集处理 - fuse,webdav, chukwa, flume, Scribe
在使用jdk1.7后发现,部分使用排序的列表变了。然后就可劲的找原因。最后发现:
首先进入Collection.sort方法
public static <T extends Comparable<? super T>> void sort(List<T> list) {
Object[] a = list.toArray();
Arrays.sort(a);
ListIterator<T> i = list.listIterator();
for ...
lucene 查询器Query
1、TermQuery 匹配文档包含的一个词(term).它可以跟其它词条进行组合,然后用BooleanQuery和包装
Term term = new Term("keyword","饭店");
Term term2 = new Term("keyword","大");
Query query1 = new T ...
有次在一个项目中有人提出了一种基于LBS业务的搜索的技术,lucene spatial搜索。随后在网上进行了大搜索。只搜索出一些lucene3代的小例子。现在lucene已经发到4.6了,3代明显太落后了。所以,进行lucene4 spatial的例子搜索,很不幸:使用的人太少了,没有一个例子。就连官网上也没有太多的说明。
由于没有仔细观看官网关于spatial模块的说明,未发现有用东西。一次不经意找到一行。位于API_Javadocs中spatial search的index.html上“For some sample code showing how to use the ...