七零八碎的JRE

作为开源软件的一个重要组成部分的Java应用,其实Litrin一直很少在本站提及。作为大部分Java应用来说,似乎从底子上就不具备其他开源软件的精神——低耦合、少依赖、短小精悍。还有一方面是尽管项目代码是开源了,但大多数的JRE(Java run time environment) 的核心技术还是锁在几家大头的保险柜里。直到有了OpenJDK……

继续阅读“七零八碎的JRE”

推荐阅读:
似乎每次开头都要讲述一下计算机
5月中旬,我参加了在加利福尼亚
长久以来,我们对计算机资源的理

Hadoop的单机部署

 

要说最近最热的云计算,不得不提Hadoop。这个项目就是为集群运算而生的。依赖于它的项目n多,个人感觉hadoop已经逐渐成为一个“基于Java的分布式运算中间件”。

这里安装的hadoop为ver 0.21.0版本,包含了HDFS分布式文件系统。平台为老一套的Ubuntu 1104 server for amd64。

既然是Java Base的,首先要准备jdk环境。默认1104已经把java从apt中剔除了——跟oracle收购sun不无关系,尽管openjdk还在,我还是建议安装sun-jdk。具体实现如下:

继续阅读“Hadoop的单机部署”

推荐阅读:
5月中旬,我参加了在加利福尼亚
之前发过一个帖子介绍了RDT在
继续在NUMA和性能差异的路上

Project Looking Glass

又快到了微软升级操作系统的时间了,MS 这次推出的Vista始终不忘把3D桌面,半透明效果摆在宣传的首要位置。看来似乎3D版本的桌面管理系统已经成了大势所趋。

“MS有的开源也会有!”这是不争的事实,看到了Sun的 Looking Glass项目就正是这么一个项目。
该系统是基于JAVA的 技术——Sun只知道搞这一套,鉴于JAVA的平台无关性,该系统现在已经同时具有windows Linux (Ubuntu)和自家的Solaris系统的支持。不过感觉上相比vista的桌面还是粗糙了一点。Linux 用户首先安装显卡的驱动是少不了的了——其他而言没什么实现难度。

安装之后你首先第一个反应是:cool!第二个反应是:怎么操作? 的确,目前为止,这只是一个Demo,名副其实的Looking Glass。

推荐阅读:
作为开源软件的一个重要组成部分
  要说最近最热的云

Linux下Java程序乱码问题的解决

在Ubuntu下用Netbeans,界面上全是乱码,没有办法使用。感觉是自带的jre上根本没有中文的字体。NB这类的Java程序只会使用JRE自带的字体。
研究了半天,找出了解决办法,搞定!

找到JRE目录的lib/fonts/,拷贝或者链接一个字体文件过来。

ln -s /usr/share/fonts/truetype/arphic/simsun.ttf  ./
为了保险起见,最好还要建立一个fallbak

mkdir fallback

再做一个链接进来,做到双保险。

ln -s /usr/share/fonts/truetype/arphic/simsun.ttf ./fallback/

重新开启netbeans,界面上的中文出来了。

推荐阅读:
作为开源软件的一个重要组成部分
  要说最近最热的云
又快到了微软升级操作系统的时间

FreeBSD下整合Apache和Tomcat

首先,建议大家检查 /etc/rc.conf,看看有没有开启Linux二进制兼容模式!

代码:
  linux_enable="YES"

安装之前,需要你安装JDK – Java Develop Kit,对应的需求如下:

  • Tomcat 4.x.x 以下版本 – JDK 1.3.X ~ JDK1.4.X
  • Tomcat 5.0.x 版本 – JDK 1.4.X or upper
  • Tomcat 5.5.x 版本 – JDK 5.0

自从发布了JDK的官方For FreeBSD版本后,安装JDK变得容易了许多。

下面开始进行….首先,请针对所需要安装的ports进行cvsup !

(1)安装Apache Web Server

代码:
  # cd /usr/ports/www/apache13/
  # make
  # make install


完成后,请在 /etc/rc.conf 加入如下内容:

代码:
  apache_enable="YES"

(2)安装Apache Tomcat

代码:
  # cd /usr/ports/www/jakarta-tomcat5/
  # make
  # make install


安装完成后,请确认是存在/usr/local/bin/tomcat50ctl!并确认server.xml是有开启AJP1.3的:

代码:
  <Connector port="8009" protocol="AJP/1.3" protocolHandlerClassName="org.apache.jk.server.JkCoyoteHandler" redirectPort="8443">

(3)配置一些环境变量

图简单可以把它们放在/etc/rc.conf中!

代码:
  export JAVA_HOME=/usr/local/jdk1.5.0
  export CATALINA_HOME=/usr/local/jakarta-tomcat5.0
  export CLASSPATH=.:$JAVA_HOME/jre/lib/rt.jar:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar

(4)阶段性测试

看看Tomcat是否正常:

代码:
  # cd /usr/local/jakarta-tomcat5.0/bin/
  # ./startup.sh


应该看到如下的内容,并请你用Web浏览器测试Tomcat!

代码:
  Using CATALINA_BASE:   /usr/local/jakarta-tomcat5.0
  Using CATALINA_HOME:   /usr/local/jakarta-tomcat5.0
  Using CATALINA_TMPDIR:   /usr/local/jakarta-tomcat5.0/temp
  Using JAVA_HOME:   /usr/local/jdk1.5.0

(5)开始进行整合Apache & Tomcat

首先安装mod_jk:

代码:
  # cd /usr/ports/www/mod_jk
  # make
  # make install


完成后,请修改/usr/local/etc/apache/httpd.conf,找到下面2行,把行首的注释符号#去掉!

代码:
  LoadModule jk_module  libexec/apache/mod_jk.so
  AddModule  mod_jk.c


新增下面的配置内容:

代码:
  Include /usr/local/etc/apache/mod_jk.conf


修改/usr/local/etc/apache/mod_jk.conf的内容:

代码:
   <IfModule mod_jk.c>
       JkWorkersFile /usr/local/etc/apache/workers.properties
       JkLogFile  /var/log/mod_jk.log
       JkLogLevel warn
       JkMount /*.jsp default
       JkMount /servlet/* default
       JkMount /examples/* default
   </IfModule>


接下来,需要修改/usr/local/etc/apache/workers.properties (注意2个文件中的default只是一个代号!):

代码:
  workers.tomcat_home=/usr/local/jakarta-tomcat5.0
  workers.java_home=$JAVA_HOME
  ps=/
  worker.list=default
  worker.default.port=8009
  worker.default.host=localhost
  worker.default.type=ajp13
  worker.default.lbfactor=1

好,到这里配置基本上完成了,接下来开始祈祷并运行吧!

代码:
  # touch /var/log/mod_jk.log
  # /usr/local/bin/tomcat50ctl start
  # /usr/local/sbin/apachectl start

写一个测试的test.jsp放到/usr/local/jakarta-tomcat5.0/webapps/ROOT/,用 http://localhost/test.jsp 看看!

更多信息,请参考:ApacheTomcat.com FlashGuides

推荐阅读:
评价一个网站的“大小”,处于视
碰到这样一种情况:在使用新浪微
种种原因,站长已经很久没有关注

Apache 2.0.54 + Tomcat 5.5.12 完全配置

首先确定各软件的版本,我发现开源的软件的版本超级复杂,超级多。采用的标准是用最新的好。千万不要被网上的说哪个版本稳定之类的话所相信,我的思路是对于开源的东东采用新的版本为佳。

当前最新的版本:
Apache :2.0.54  源码
Tomcat :5.5.12  不是源码形式

jakarta-tomcat-connectors-1.2.15   源码
不要用jakarta-tomcat-connectors 2.0,这个版本已经不再继续开发了。

装好apache
装好tomcat
安装tomcat 非常容易 直接解压
放到 /usr/local/tomcat

在/usr/local/tomcat/bin/Catalina.sh
加入JAVA_HOME=/usr/local/jdk
这一条

就开始安装jakarta-tomcat-connectors-1.2.15了
1.        解压jakarta-tomcat-connectors-1.2.15-src.tar.gz

2.        cd www/mod_jk/jk/native
./buildconf.sh
./configure –with-apxs=/www/bin/apxs  #apache的安装目录下的bin目录的apxs
make
cp apache-2.0/mod_jk.so /www/modules/ 下

3.改httpd.conf文件
LoadModule jk_module modules/mod_jk.so
JkWorkersFile "/www/conf/workers.properties"
JkLogFile "/var/log/mod_jk2.log"
JkLogStampFormat "[%a %b %d %H:%M:%S %Y]"
JkRequestLogFormat "%w %V %T"
JkLogLevel debug  # Set the jk log level [debug/error/info]
JkMount /*.jsp worker1  #worker1仅仅是一个标示符
#JkMount /helloapp/* worker1

4.新建文件/www/conf/workers.properties  #注意和上面的路径一致
worker.list=worker1
worker.worker1.port=8009
worker.worker1.host=localhost
worker.worker1.type=ajp13

worker.worker1.lbfactor=50
worker.worker1.cachesize=10
worker.worker1.cache_timeout=600
worker.worker1.socket_keepalive=1
worker.worker1.socket_timeout=300

推荐阅读:
评价一个网站的“大小”,处于视
碰到这样一种情况:在使用新浪微
种种原因,站长已经很久没有关注