분류 전체보기 1291

깨진 창문 이론

요즘 어찌어찌 하다 보니 앤드류 헌트의 펜이 되어버렸다. Pragmatic 시리즈의 저자인데, 요즘 유행하는 Agile 방법론등의 시초가 되는 실용주의 방법론을 외치는 사람이다. 형상 관리, 빌드 자동화 책을 보다가 어찌어찌 해서 실용주의 프로그래머라는 책을 읽었는데. 재미있는 글이 하나 있어서 기록해 놓는다. 이른바 "깨진 창문 이론" 깨진 창문 이론이란, 도시에 있는 한 건물에 창문이 하나 깨지게 되면, 그로 인해서 주변이 지저분해지고 낙서도 많아지고 결국에는 그 지역이 할렘화 된다는 이야기이다. 즉 작은 문제 하나를 방치해 놓으면 모르는 사이에 그것들이 점점 커져서 나중에는 대치할 수 없는 문제가 된다는 이야기다. 소프트웨어 개발이나 인생 살이도 다른게 하나 없는것 같다. 사소한 BUG하나가 나중에..

2007 BEA Dev days 강의 자료

안녕하세요? 어제 DevDays에 참가하셨던 분들 중에서 강의자료가 필요하신분들을 위해서 내용을 첨부합니다. 원래 이 강의 내용들은 JCO 주최 Java Conference에서 2회에 걸쳐서 강의되었고 이미 여러 문서들이 인터넷을 통해서 배포 되어있었기 때문에 내용이 익숙하신 분들이 많을것 같습니다. 얼마전에 다시 BEA로 돌아오느냐고 신선한 주제를 마련하지 못했네요.. 다음 컨퍼런스에서는 좀더 신선한 주제로 찾아뵙도록 하겠습니다. 감사합니다.

성능과 튜닝 2007.10.26

SSL 과정

1. 클라이언트가 서버에 접속하면 서버인증서(서버의 공개키를 인증기관이 전자서명으로 인증한 것) 를 전송받습니다. (이때, 클라이언트 인증을 필요로 할 경우 클라이언트의 인증서를 전송하게 됩니다.) 2. 클라이언트는 받은 서버 인증서를 분석하여 신뢰할 수 있는 인증서인지를 검토한 후, 서버의 공개키를 추출합니다. 3. 클라이언트가 세션키로 사용할 임의의 메세지를 서버의 공개키로 암호화하여 서버에 전송합니다. 4. 서버에서는 자신의 비밀키로 세션키를 복호화하여 그 키를 사용하여 대칭키 암호방식으로 메시지를 암호화하여 클라이언트와 통신하게 되며 이것은 "https"라는 별도의 프로토콜을 사용하게 됩니다. 즉 공개키를 서버가 클라이언트로 내려보내면 클라이언트에서 세션키를 암호화해서 서버에 보내서 세션을 만든다..

카테고리 없음 2007.10.19

WLW 10.1 (Flex 지원)

내가 BEA를 떠날 수 없는 이유중에 하나는 BEA는 항상 정말 재미있는 기술들을 만들어낸다는 것이다. 이런게 필요하지 않을까 생각하고 있으면 몇달후에, 그 제품들을 떡하니 가져다 놓는다. 그리고 공부할 수 밖에 없는 상황으로 만들어 버린다. 이번에는 WebLogic 개발 환경은 WebLogic Workshop 에 Flex Builder가 포함되어 버렸다. 기존 WLW에서 Opensource (JSTL,Struts,Hibernate,JDO,Spring,Beehive)를 지원한데 이어서 또 다른 획기적인 일이다. 이제 Eclipse 안에서만 개발을 하면 모든 Java AP개발을 끝이 날 듯 싶다.

ALM 2007.10.09

Out Of Memory에 대한 대처 방안

OOM은 Java AP의 아주 골치 아픈 오류이기도 하면서 가장 추적하기 어려운 문제이기도 하다. 1. 추적에 대한 가장 전통적인 방법은 IBM AIX JVM의 Heap Dump를 사용하는 방식이었다. 2. 현재는 HP JVM에서 Heap Dump를 generate해주고, 이를 AMI2나, JMeter를 사용해서 분석이 가능하며 3. JVM 1.5,1.6서는 Sun에서도 Heap Dump 추출이 가능하고 jhat이라는 유틸리티로 분석이 가능하다. 또는 jmap이라는 (pmap)과 같은 유틸리티를 사용해서 heap dump를 추출할 수 도 있다. * 1.6에 포함된 JHat http://java.sun.com/javase/6/docs/technotes/tools/share/jhat.html * JHat 프..

JVM 튜닝 옵션 정리

JVM 튜닝 옵션 총정리 == http://blogs.sun.com/watt/resource/jvm-options-list.html == 정말 많다... GC튜닝은 좀더 자동화되고 세세화된 튜닝이 가능한것 같고, 눈에 띄는것은 컴파일에 대한 튜닝이 좀 더 추가되었고, 모니터링 기능이 정말 강화되었다. jconsole은 실시간으로 메모리 상태 뿐만 아니라, Thread 상태 까지 모니터링 할 수 있고 pmap과 비슷하게, 메모리 맵을 볼 수 있는 유틸리티도 있어서 Out Of Memory 상황을 분석하는데 많은 도움이 될것 같다.

시간 활용 방법

다시 BEA 로 컴백한후, 최대 이슈는 출퇴근 시간과 체력에 대한 관리와 시간 관리.. 수지에서 여의도로 출근하다보니, 출퇴근 시간이 보통이 아니다. 어제는 출근하는데 2시간 이상이나 걸렸으니, 오늘은 같은 동네에 사는 J차장님이 좀더 빠른 길을 알려주신 덕분에 1시간내에 사무실에 들어올 수 있었다. 퇴근은 8시 전후에 해야지 1시간 30분이내에 집에 도착할 수 있는데 덕분에 잉여 시간이 엄청 많이 생겨버렸다. 출퇴근시 차안에서 보내는 2시간 30분 아침에 일찍 퇴근해서 사무실에서 1시간, 저녁 식사후 퇴근전까지 대략 1시간.. 하루에 총 4시간 30분의 잉여 시간이 발생한것이다. 5일이면 대략 22시간 가량된다. 5일중 하루가 모두 출퇴근에 관련된 시간으로 소비된다는 말씀... 이 시간을 어떻게 관리해..

사는 이야기 2007.10.02