存档

文章标签 ‘java’

Comet 10w + 连接打开测试

2010年7月9日
80 views 没有评论

Comet是一个时髦词语,象ajax一样,非常Cool。Comet的主要作用是,服务器可以把新数据主动传送给客户端。 

我认为,Comet将是下一波互联网应用更新潮的主流.象google wave使用Comet一样,实现实时更新. 

Plurkr 的增长速度非常快,我们正在成为最大的Python网站之一,我们的每天都有10w+的在线用户。
我们大约用了一个星期寻找不同的解决方案.

阅读全文…

java , , ,

了解Class loader

2010年3月31日
46 views 没有评论

Java ClassLoader 是一个重要的、但又常常被人忽略的 Java 运行时系统组件。它是负责在运行时查找和装入类文件的类。创建自己的 ClassLoader 可以以实用且有趣的方式定制 JVM,这样可以让您彻底重新定义如何将类文件引入系统。

本教程概述了 Java ClassLoader,并指导您构造在装入代码之前自动编译代码的示例 ClassLoader。您将完全了解 ClassLoader 的功能以及创建自己的 ClassLoader 需要执行的操作。

阅读全文…

java , ,

Java数组实现循环队列

2010年3月29日
45 views 没有评论

Java数组实现循环队列,队尾指针为rear,队首指针为front,队尾入队,队首出队,数组空间循环利用。


view plaincopy to clipboardprint?
/** 
 * QueueArray.java 
 */ 
package cn.edu.uibe.oop;  
/** 
 * 数组实现的循环队列 
 * @author TongQiang 
 */ 
public class QueueArray {  
    Object[] a; //对象数组,队列最多存储a.length-1个对象  
    int front;  //队首下标  
    int rear;   //队尾下标  
    public QueueArray(){  
        this(10); //调用其它构造方法  
    }  
    public QueueArray(int size){  
        a = new Object[size];  
        front = 0;  
        rear =0;  
    }  
    /** 
     * 将一个对象追加到队列尾部 
     * @param obj 对象 
     * @return 队列满时返回false,否则返回true 
     */ 
    public boolean enqueue(Object obj){  
        if((rear+1)%a.length==front){  
            return false;  
        }  
        a[rear]=obj;  
        rear = (rear+1)%a.length;  
        return true;  
    }  
    /** 
     * 队列头部的第一个对象出队 
     * @return 出队的对象,队列空时返回null 
     */ 
    public Object dequeue(){  
        if(rear==front){  
            return null;  
        }  
        Object obj = a[front];  
        front = (front+1)%a.length;  
        return obj;  
    }  
    public static void main(String[] args) {  
        QueueArray q = new QueueArray(4);  
        System.out.println(q.enqueue(“张三”));  
        System.out.println(q.enqueue(“李斯”));  
        System.out.println(q.enqueue(“赵五”));  
        System.out.println(q.enqueue(“王一”));//无法入队列,队列满  
        for(int i=0;i<4;i++){  
            System.out.println(q.dequeue());  
        }  
    }  

阅读全文…

java , ,

Java如何获得文件编码格式

2010年3月26日
154 views 没有评论
在程序中,文本文件经常用来存储标准的ASCII码文本,比如英文、加减乘除等号这些运算符号。文本文件也可能用于存储一些其他非ASCII字符,如基于GBK的简体中文,基于BIG5的繁体中文等等。在存储这些字符时需要正确指定文件的编码格式;而在读取这些文本文件时,有时候就需要自动判定文件的编码格式。
阅读全文…

java ,

cassandra 学习笔记(5)

2010年3月15日
207 views 没有评论

1)columnFamily下一个column和多个column的读取区别
2)columnfamily 和superColumnFamily的读取区别

测试机数量:两台,jvm最大使用内存都开到1.3G。

起始key: 1356278962 ;

改变组:
product_name1    :    “是一个非常可靠的大规模分布式存储系统”
product_name2    :    “中国惨败伊朗丢亚锦赛冠军创34年参赛最耻辱一败”

阅读全文…

数据库 , , ,

cassandra 学习笔记(4)

2010年3月15日
203 views 没有评论

(一)依赖:cassandra.jar

             libthrift.jar

(二)连接:

    //该方法将返回一个Cassandra.Client实例,该实例包含和server端指定节点会话的API

  1.  
  2.      public Cassandra.Client getClient()
  3.     {
  4.         //192.168.0.169为想连接到的某个节点的ip,9160为端口
阅读全文…

数据库 , , ,

cassandra 学习笔记(3)

2010年3月15日
177 views 没有评论

当某个end point拿到一个key(比如”王老六”)并想取出他的相关信息的时候,这个节点是怎么知道这个key的相关信息是存放在哪些节点中的呢?
以下将用从客户端拿到的”get_clomun”请求为例,进行说明:

      “get_column”的相关信息会在CassandraServer的get_column(String tablename, String key, String columnPath)方法中被封装成一个readCommand实例,该对象简单包含了请求信息,另外也提供了一些别的方法。

阅读全文…

数据库 , , ,

cassandra 学习笔记(2)

2010年3月15日
293 views 没有评论

源码中对节点的如下称呼应该是等价的: end point , node ,  machine , datacenter , host。

    cassandra节点的启动main()在类org.apache.cassandra.service.CassandraDaemon中,细节在 setup()中。过程中会start一个CassandraServer的实例peerStorageServer。 peerStorageServer在建立的时候,内部会实例化一个 StorageService实例,在该StorageService实例初始化的过程中,该节点的所有功能服务会被配置激活,这些操作是在 StorageService的默认构造器中完成的。

阅读全文…

数据库 , , ,

cassandra 学习笔记(1)

2010年3月15日
390 views 没有评论

1). cassandra任何一个节点都可以被客户端访问。

2). 对cassandra某个节点的访问是通过调用org.apache.cassandra.service.Cassandra的内部类Client的相应接口实现的。

3). 2)中的Cassandra这个类包含了很多内部类和一个接口(Iface)。其中的Client和Processor两个内部类都是对Iface的实现,这保证了他们的内部的所有方法是一一对应的。

阅读全文…

我的日记 , , ,

基于OS信号实现Java异步通知

2010年3月12日
58 views 没有评论

 

本文将结合操作系统的信号机制,来尝试实现一个简单的,不依赖功能环境的Java异步通知功能。
没有特殊说明,本文所有的示例,都是基于Linux。

信号简介

信号是在软件层次上对中断机制的一种模拟,在原理上,一个进程收到一个信号与处理器收到一个中断请求可以说是一样的。
通俗来讲,信号就是进程间的一种异步通信机制。

阅读全文…

java , ,