티스토리 툴바

BLOG main image
7,806 Visitors up to today!
Today 1 hit, Yesterday 2 hit
daisy rss
tistory 티스토리 가입하기!
2007/06/05 19:56
1. java 1.5 이상에서의 방법

javax 패키지에 바로 올라왔다....

javax.management

javax.management.loading
javax.management.modelmbean
javax.management.monitor
javax.management.openmbean
javax.management.relation
javax.management.remote
javax.management.remote.rmi
javax.management.timer

2. http://jakarta.apache.org/bcel/
The Byte Code Engineering Library is intended to give users a convenient possibility to analyze, create, and manipulate (binary) Java class files (those ending with .class).
클래스를 로딩할때, 후킹해서, 생성 시작점 등에 코드를 박아 넣는다. 그리고, 다시 클래스 콤파일해서 클래스 로딩..
장점은, java 안에서만 돌기 때문에 event 를 잃어버릴 염려가 없고, 매우 빠르다.(사실 느리지.. 하지만, 생성 시작점 등에 박힌 코드의 퍼포먼스에 달렸겠지)

3. http://java.sun.com/j2se/1.4.2/docs/guide/jvmpi/jvmpi.html
이거는 jni 처럼, java 의 spec 에 맞춰서 C 코드를 짜고 java 프로그램 실행시에 실행 코멘드로 넣어서, jni 쪽에서 받아서 로깅할 수 있도록 하는 방식이다.. 모든 event 마다 jni 쪽으로 날려주기 때문에, 실제 서비스에서는 쓸 수 없고, 테스트 환경에서 쓸만 하다..
2007/06/01 17:19

Thread heap 상태는 모두 저번에 알려드린 SIGQUIT( kill -3 pid )에 의한 thread dump에서 볼 수 있습니다.

IBM AIXHP-UX의 경우, thread dumpheap dump가 함께 나오는건 알고 있는데 FreeBSD는 모르겠습니다.

 

그 외의 java 실행상태 모니터링은… 1.4 이전과 1.5(5.0) 이후가 다른데요..

Jvmgc상태는 실행 시의 java –verbose:gc 옵션으로 볼 수 있지만,

좀 더 자세한 정보는 JVMPI(JVM Profiler Interface)jvm의 이벤트를 받는 프로그램을 구현하거나,

간단하게는 hprof라는 런타임 툴을 이용해… cpu sampling을 해본다든지 할 수 있습니다.

 

자세한 내용은.. jdk 1.4 이하는 JVMPI,

           JVMPI

http://java.sun.com/j2se/1.4.2/docs/guide/jvmpi/index.html

 

1.5(5.0) 이후는 아래 링크를 참조하세요.

           J2SE 5.0 Trouble-Shooting and Diagnostic Guide

2007/05/31 18:15

//<URLTest.java>

import java.net.*;
import java.io.*;

class URLTest {
        public static void main(String args[]) {
                try {
                        URL home  = new  URL("http://orange.hnc.net:80/~yoonforh/applets/index.html#dir"); 
// URL 생성
                                DataInputStream dis;
                                String line;
                                System.out.println("Port # : "+String.valueOf(home.getPort()));
                                System.out.println("Protocol : "+home.getProtocol());
                                System.out.println("Host : "+home.getHost());
                                System.out.println("File : "+home.getFile());
                                System.out.println("Ref : "+home.getRef());
                        // 지정된 URL로부터 입력 스트림을 연다.
                        dis = new DataInputStream(home.openStream());
                        while ((line = dis.readLine()) != null) {
                        // 입력이 null일 때까지 계속해서 읽어서 표준 출력으로 출력한다.
                                System.out.println(line);
                        }
                        dis.close();  // 입력 스트림을 닫는다.
                } catch (MalformedURLException e) {
                        System.out.println("MalformedURLException: " + e);
                } catch (IOException e) {
                        System.out.println("IOException: " + e);
                }
        }
}

2007/05/31 16:44
if( !isSSL )
{
 URL url = new URL( domain );
 host = url.getHost();
 port = url.getPort();
 if( port == -1 ) port = 80;
 sok = new Socket( host , port );
}
else
{
 java.security.Security.addProvider(new com.sun.net.ssl.internal.ssl.Provider());
 System.setProperty("java.protocol.handler.pkgs", "com.sun.net.ssl.internal.www.protocol");
 SSLSocketFactory factory = (SSLSocketFactory)SSLSocketFactory.getDefault();
 host = domain.substring(8);
 sok = (SSLSocket)factory.createSocket( host , sslPort);
}
if( tout > 0 ) sok.setSoTimeout( tout );
 
// sok.setTcpNoDelay( true );
in = new BufferedInputStream( sok.getInputStream(), 2048 );
out = new PrintWriter( sok.getOutputStream(),true );
2007/05/21 22:55
열라 좋다.. 흐흐 이젠 amp_setup 을 깔고 웹플을 해봐야 겠다..
2007/05/21 16:10

윈도 XP
시디키 ; 2KJ6K-BPRYY-6DQYR-C6HB6-FWD26

2007/05/17 01:11
http://www.icewalkers.com/Linux/Software/523090/Navicat-(MySQL-client)-for-Mac-OS-X.html

http://dev.mysql.com/downloads/gui-tools/5.0.html
2007/05/16 03:14
LoadModule php4_module        libexec/httpd/libphp4.so
 AddType application/x-httpd-php .php .html


[hakmink@hagmin-gimyi-keompyuteo Documents]$ sudo apachectl restart
/usr/sbin/apachectl restart: httpd restarted


[hakmink@hagmin-gimyi-keompyuteo httpd]$ tail -f /private/var/log/httpd/error_log
 Processing config file: /private/etc/httpd/users/hakmink.conf
[Wed May 16 03:11:28 2007] [notice] Apache/1.3.33 (Darwin) configured -- resuming normal operations
[Wed May 16 03:11:28 2007] [notice] Accept mutex: flock (Default: flock)
[Wed May 16 03:13:31 2007] [notice] caught SIGTERM, shutting down
[Wed May 16 03:13:31 2007] [error] Cannot remove module mod_php4.c: not found in module list
[Wed May 16 03:13:44 2007] [error] Cannot remove module mod_php4.c: not found in module list
Processing config directory: /private/etc/httpd/users/*.conf
 Processing config file: /private/etc/httpd/users/hakmink.conf
[Wed May 16 03:13:44 2007] [notice] Apache/1.3.33 (Darwin) configured -- resuming normal operations
[Wed May 16 03:13:44 2007] [notice] Accept mutex: flock (Default: flock)

에러가 나서,,
httpd.conf 파일에 full path 를 적어줘야만 했다.. 음.. 왜 그럴까?
libexec/httpd/libphp4.so
LoadModule php4_module          /usr/libexec/httpd/libphp4.so


------
en1: flags=8863<UP,BROADCAST,SMART,RUNNING,SIMPLEX,MULTICAST> mtu 1500
        inet6 fe80::217:f2ff:feeb:fb4a%en1 prefixlen 64 scopeid 0x5
        inet 192.168.0.10 netmask 0xffffff00 broadcast 192.168.0.255
        ether 00:17:f2:eb:fb:4a
        media: autoselect status: active
        supported media: autoselect
---
http://192.168.0.10/a.php
2007/05/16 03:00
[hakmink@hagmin-gimyi-keompyuteo sbin]$ sudo apachectl start
Password:
Processing config directory: /private/etc/httpd/users/*.conf
 Processing config file: /private/etc/httpd/users/hakmink.conf
/usr/sbin/apachectl start: httpd started
[hakmink@hagmin-gimyi-keompyuteo sbin]$ pwd
/usr/sbin
[hakmink@hagmin-gimyi-keompyuteo sbin]$


http://localhost/

히히 잘 뜨네.. ^^

[hakmink@hagmin-gimyi-keompyuteo sbin]$ sudo ps -ax|grep httpd
  311  ??  Ss     0:00.03 /usr/sbin/httpd
  312  ??  S      0:00.01 /usr/sbin/httpd
  313  ??  S      0:00.00 /usr/sbin/httpd
  321  p1  S+     0:00.00 grep httpd

vi /private/etc/httpd/users/hakmink.conf
<Directory "/Users/hakmink/Sites/">
    Options Indexes MultiViews
    AllowOverride None
    Order allow,deny
    Allow from all
</Directory>


http://localhost/a.php
cd /etc/httpd/
vi httpd.conf
find DocumentRoot ==> /Library/WebServer/Documents
이 폴더에 a.php 를 넣어야 됨..

근데,, a.php 동작안함.. 즉, php 가 mod 로 띄워지지 않은 상태..


2007/05/10 12:10
http://www.barebones.com/products/textwrangler/index.shtml

이게 가장 좋았다.
1. 한글이 된다
2. FTP 가 내장되어 있다
3. 키워드 하이라이트가 보기 좋다

아쉬운 점
1. textmate 처럼, indent 가 자동으로 변환되지 못한다.
2. 함수에 대한 자동완성 기능이 없다.

prev"" #1 #2 #3 next