'etc > old' 카테고리의 다른 글
웹 서버 설치 (Apache 2.2 + Tomcat 6.0 + Mysql + Svn) (0) | 2008.11.05 |
---|---|
STRUTS2 - Login with Session (1) | 2008.11.04 |
Context 와 ThreadLocal (0) | 2008.10.27 |
Tender Love (0) | 2008.10.21 |
MP3 플레이어 만들기 (0) | 2008.10.19 |
웹 서버 설치 (Apache 2.2 + Tomcat 6.0 + Mysql + Svn) (0) | 2008.11.05 |
---|---|
STRUTS2 - Login with Session (1) | 2008.11.04 |
Context 와 ThreadLocal (0) | 2008.10.27 |
Tender Love (0) | 2008.10.21 |
MP3 플레이어 만들기 (0) | 2008.10.19 |
위와 같이 일반적인 Class와 동일하게 객체를 생성하고 값을 설정하고 읽어온다.
다만 내부적으로 Thread.currentThread()라는 함수로 현재 Thread 객체를 찾아와서 객체를 기준으로 Map에서 값을 읽어오도록 구현이 되어 있다. J2SE 1.4.1의 ThreadLocal의 get()과 set()을 살펴보면 아래와 같다.
여기서 중요한 부분은 Thread.currentThread()를 이용하는 부분이다. 사실 Thread.currentThread() 함수를 이용하면 ThradLocal을 어렵지 않게 직접 구현할 수도 있다.
그러면 이러한 ThreadLocal을 이용해서 디버그 flag를 저장하고 읽어오는 함수를 구현해 보자.
그러면 이 함수를 이용해서 로깅을 하는 함수를 구현해 보자. 로깅은 단순하게 System.out.println을 이용하겠다.
테스트 시나리오에서 A.jsp라는 페이지에서 BizTask.getInfo()를 호출하고 BizTask.getInfo()에서는 DAO.select()라는 class를 호출한다고 가정하겠다. 이경우 A.jsp와 두개의 Class에서 출력되는 로그를 한번에 Enable/Disable하기 위해서 위에서 만든 Logger와 DebugContext를 이용해 보겠다.
A.jsp는 아래와 같다
BizTask.java는 아래와 같다.
DAO.java는 아래와 같다.
A.jsp?bebug=true 라는 주소로 호출하면 아래와 같은 로그가 나오게 된다.
A.jsp아래쪽에 있는 로그 테스트 라는 부분은 이미 Context에서 debug플래그가 제거되었기 때문에 출력되지 않는다. 또한 A.jsp?debug=false로 호출하면 아무런 로그도 출력되지 않는다.
이렇게 해서 Context를 구현하는 핵심 방법인 ThreadLoca을 알아보고 ThreadLocal을 이용해서 특정 Thread만 debug flag를 활성화 시키는 방법을 알아보았다.
아마 코딩 경험이 있으신 분들은눈치 채었겠지만 ThreadLocal을 이용하는 방법은 참 다양하다.
예를 들어 JDBC Connection을 개발자가 반환하는 것이 아니라 응용프로그램이 종료될 때 일괄로 반환해 주는 기능을 많은 Framework에서 제공하는데 이러한 기능도 ThreadLocal을 이용한다.
STRUTS2 - Login with Session (1) | 2008.11.04 |
---|---|
Struts2 - Login Test with Validator (0) | 2008.11.04 |
Tender Love (0) | 2008.10.21 |
MP3 플레이어 만들기 (0) | 2008.10.19 |
MECE(Mutually Exclusively, Collectively Exhaustive) (0) | 2008.10.13 |
Struts2 - Login Test with Validator (0) | 2008.11.04 |
---|---|
Context 와 ThreadLocal (0) | 2008.10.27 |
MP3 플레이어 만들기 (0) | 2008.10.19 |
MECE(Mutually Exclusively, Collectively Exhaustive) (0) | 2008.10.13 |
SMTP 설정 및 메일 BEAN 만들기 (1) | 2008.10.02 |
사운드 관련 BASE Source
사운드 버퍼를 사용한 경우
Context 와 ThreadLocal (0) | 2008.10.27 |
---|---|
Tender Love (0) | 2008.10.21 |
MECE(Mutually Exclusively, Collectively Exhaustive) (0) | 2008.10.13 |
SMTP 설정 및 메일 BEAN 만들기 (1) | 2008.10.02 |
FMS3에서 신호처리 방식 (0) | 2008.10.01 |
MECE원칙은 설명이 필요하다.
맥킨지 컨설팅에서 결론을 제시할 때에 사용하는 원칙으로 우리가 프레젠테이션 자료를 만들 때 아주 유용한 원칙이 된다.
우선 프레젠테이션 내용의 요점을 정리해야 한다. 요점을 2 ~ 3가지로 압축하려고 한다면,어떻게 2~3가지로 간추릴 수가 있을까. 또한 정리된 요점이 제대로 된 요점 정리인지 아닌지 어떻게 판단할 수 있을까? 이때 사용되는 방법이 MECE원칙이다.
요점은 그 요소간에 서로 배타적이면서 한편으로 전체를 포괄해야 한다. 배타적이라는 말은 수학에서 교집합이 생기면 안 된다는 뜻이고, 전체를 포괄한다는 말은 그 요소를 합하면 즉 합집합이 전체가 되어야 한다는 말이다.
예를 들어보면,
어떻게 하면 건강하게 살 수 있을까? 먼저 이에 대한 답을 나열해 보자.
- 일찍 자고 일찍 일어나기
- 매일 일정시간 운동하기
- 편식하지 않기
- 담배와 술 안 하기
- 스트레스 받지 않기
- 과로하지 않기
- 기타 등등
이를 축약해야 하는데 어떻게 하면 될까?
먼저 여러 요소를 검토하여 공통점이 있는 것이 무엇인지를 찾아야 한다. 그래서 그 공통점이 있는 요소는 하나의 카테고리로 묶는다. 각 카테고리를 비교하여 서로 전혀 공통점이 없는 것이 확인 되면 하나의 독립된 요소로 분리시킨다. 이런 작업을 통하여 축약된 소들 사이에 배타적이면서 전체를 총괄하는지를 살피면 되는 것이다.
위의 예는 비교적 쉽게 축약할 수 있다.
즉 해야 할 것과 하지 않아야 할 것 두 가지로 축약할 수 있다. 해야 할 것과 하지 않아야 할 것으로 축약하면 상호 배타적이면서 전체를 포괄할 수 있는 개념이 되기 대문이다.
건강하게 살기 위하여
첫째 해야 할 것은
- 일찍 자고 일찍 일어나기
- 매일 일정시간 운동하기
둘째 하지 않아야 할 것들은
- 편식
- 담배와 술
- 스트레스
이렇게 정리하면 된다.
만약 3가지로 요점 정리한다면
(1) 바른 습관 들이기
- 일찍 자고 일찍 일어나자
- 편식하는 습관을 버리자
- 담배와 술을 끊자
(2) 정신건강이 중요
- 스트레스를 받지 않기 위해 긍정적으로 살자
(3) 적절한 휴식이 중요
- 과로하지 말자
이렇게 정리하면 된다. 요점 정리를 할 때 상호 배타적이면서 전체를 포괄해야 완벽한 요점 정리라는 점을 기억하자.
Tender Love (0) | 2008.10.21 |
---|---|
MP3 플레이어 만들기 (0) | 2008.10.19 |
SMTP 설정 및 메일 BEAN 만들기 (1) | 2008.10.02 |
FMS3에서 신호처리 방식 (0) | 2008.10.01 |
FMS3 - 간단한 접속 테스트 (0) | 2008.09.30 |
MP3 플레이어 만들기 (0) | 2008.10.19 |
---|---|
MECE(Mutually Exclusively, Collectively Exhaustive) (0) | 2008.10.13 |
FMS3에서 신호처리 방식 (0) | 2008.10.01 |
FMS3 - 간단한 접속 테스트 (0) | 2008.09.30 |
FMS3 (FLASH MEDIA SERVER) 설치하기 (0) | 2008.09.30 |
FMS3에서 신호처리 방식
1. 스트리밍
=> 각각의 접속자에대하여 일정양의 대역폭을 할당함.(즉 접속자 늘면 대역폭 FULL=> 시청불가)
=> GOOD : 필요한 만큼만 대역폭이 소모됨.
=> BAD : 많은 사람 접속시 대역폭 증설의 문제가 생김
2. 브로드케스팅
=> 특정 접속위치로 접속한 사람은 모두다 시청가능(TV보는것과 같음 11번 틀면 11번만 나옴)
=> 좀더 쉽게 개울가에서 돌맹이 던지면 원형 파장이 발생하는데... 같은 위치에 있는 사람이라면..
))) 이런식으로 파장이 오는것을 느낄 수 있음
=> GOOD : 다수의 사람이 볼때 유리
=> BAD : 특정 접속주소로 접속해야 됨.
음... 쫌 틀린점도 있으므로 자세한건.. NAVER검색 -_-/ 대략적 개념만 탑제함 좋을려만...
MECE(Mutually Exclusively, Collectively Exhaustive) (0) | 2008.10.13 |
---|---|
SMTP 설정 및 메일 BEAN 만들기 (1) | 2008.10.02 |
FMS3 - 간단한 접속 테스트 (0) | 2008.09.30 |
FMS3 (FLASH MEDIA SERVER) 설치하기 (0) | 2008.09.30 |
시바토라 - ED SONG (0) | 2008.09.11 |
FMS3에서는 RTMP (Real-Time Messaging Protocol) 실시간 메시징 서비스를 사용하고 최신버전에서는 E(암호화)가 추가된 RTMPE (E for Encryption)를 사용하고. 두 프로토콜의 속도 차이를 보면 RTMP가 RTMPE보다 약간 빠르지만 뭐 보안이 추가 되었으니.... RTMPE를 사용하는것이 더 보안을 위해 좋다고 하네여 ^^
1. FMS3Connect.as를 만든다음 아래와 같이 코딩한다.
2. FMS3Connect.fla 파일을 만든 이후 Document Class를 FMS3Connect 로 설정한다.
3. C:\Program Files\Adobe\Flash Media Server 3\applications 폴더 아래 test라는 폴더를 만든다.
4. FMS3Connect.fla 를 실행하여 아래와 같은 그림을 봤다면 정상적으로 접속 테스트가 완료
SMTP 설정 및 메일 BEAN 만들기 (1) | 2008.10.02 |
---|---|
FMS3에서 신호처리 방식 (0) | 2008.10.01 |
FMS3 (FLASH MEDIA SERVER) 설치하기 (0) | 2008.09.30 |
시바토라 - ED SONG (0) | 2008.09.11 |
My Sql 기본적인 명령어 (0) | 2008.09.08 |
FMS3에서 신호처리 방식 (0) | 2008.10.01 |
---|---|
FMS3 - 간단한 접속 테스트 (0) | 2008.09.30 |
시바토라 - ED SONG (0) | 2008.09.11 |
My Sql 기본적인 명령어 (0) | 2008.09.08 |
For In (0) | 2008.08.12 |
FMS3 - 간단한 접속 테스트 (0) | 2008.09.30 |
---|---|
FMS3 (FLASH MEDIA SERVER) 설치하기 (0) | 2008.09.30 |
My Sql 기본적인 명령어 (0) | 2008.09.08 |
For In (0) | 2008.08.12 |
onfocus 등의 호출시점 => 매우 중요함. (0) | 2008.07.05 |