2010년 1월 21일 목요일

A COBOL Programmer

삶에 자극을 주기 위해서 COBOL이나 배워볼까 하고 돌아다니다가 발견한 어느 노익장의 글. 인상적이라 퍼오다.

 

I'm a COBOL programmer.  I'm 58 years old and most of my work colleagues are only about 10 years or so younger, and I've been around since computers had valves. The main trick to understanding COBOL programmers is not to inadvertently make 'MicroSoft' requests.
By this I mean that if I am asked to write a program to read tens of millions of records I'm happy. If you ask that unwanted data be eliminated by a whole list of what will become complex SQL clauses, I'm still happy. If the results are to be grouped by hundreds of variables and then sorted, I'm still a little bit happy. But if you then say that you want the results in a spreadsheet - I WILL curse at you and tell you not very politely to put the results in a spreadsheet yourself.

 

from  http://stackoverflow.com/questions/960252/how-to-learn-cobol

2010년 1월 20일 수요일

백신에 대한 잡담(퍼온글)





출처: http://tinyurl.com/yd2qahp
----------------------------------------------------------------------------------------------
서버에서 백신은 참으로 골치 아픈 존재입니다. 생각보다 많은 고민이 드는 제품입니다. 백신은 어쩌면 서버에 가장 친숙한 보안 제품일지 모릅니다.
하지만, 어쩌면 너무나 가깝기 때문에 너무나 큰 영향력을 미칠 수 있다는 사실을 잘 이해하고 있지 못하는 제품이기도 합니다.
그래서 그런지 다른 보안 제품에 비해서 백신은 민감하다보니 당시의 관리자의 성격을 가장 잘 대변하는 제품이라는 생각이 들기도 합니다. 보통 현장에서 잠시 대화를 하다보면 백신과 관련된 재미있는 이야기들이 많이 나오죠.
한번 가볍게 그 이야기들을 해볼까 합니다.
A 업체 이야기
서버에 백신이 국산과 외산 백신이 각각 설치되어 있었습니다. 이것이 너무 궁금해서 물어봤더니 담당자가 다음과 같이 이야기를 하더군요
A업체 담당자 : 국내 백신은 국내에서 발생한 바이러스를 잡고, 외산은 외국에서 발생한 바이러스를 잡고....
(백신은 백신이라는 같은 영역에서 동작하는거 아니었나요? 각기 타협하는 백신의 세계?)

B 업체 이야기
서버의 성능이 너무 많이 떨어진다고 연락이 왔습니다. 접속해보니 무겁기로 유명한 백신이 설치되어 있더군요.
백신 정지 후 매우 빠른 속도로 동작하는 모습을 구경할 수 있었습니다. 이후 이곳은 백신을 쓰기 위하여 서버를 업그레이드하였습니다.

C 업체 이야기
MS-SQL 서버가 설치된 서버였습니다. 30분이 지나도 쿼리가 끝나지 않길래....
설치된 백신의 실시간 감시를 껏더니 2초만에 쿼리가 완료되었습니다.

D 업체 이야기
메일서버에서 메일이 전송되지 않는다는 연락이 왔습니다. 실시간 감시를 꺼도 별로 나아지지 않는다고 합니다.
그래서.... 백신에서 제공되는 방화벽을 꺼주었습니다.

E 업체 이야기
메일 서비스가 자꾸 죽는다는 연락이 왔습니다. 설치된 메일 서비스는 일반 파일기반의 메일 솔루션이었고, 설치된 백신은 익스체인지용이었습니다.

F 업체 이야기
두 관리자 사이에 a백신이 좋다, b백신이 좋다 싸움이 붙었습니다.
외국의 리뷰에서는 a백신이 더 좋게 나온 상태였지만 b백신을 믿는 관리자의 믿음은 절대로 굳건했습니다.
관리자b : 한 서버에 설치해봐. a백신은 아무것도 잡지 못하고 b백신이 다 잡는다니까...

G 업체 이야기
모든 서버에 상당히 비싼 서버 백신이 모두 설치되어 있었습니다. 서버 라이센스도 갖고 있지 않을 것 같은 회사였습니다.
혹시나 싶어서 트레이에 있는 백신에 마우스를 올려놓았더니...
엔진 날짜가 2006년이었습니다. (2008년에 만난 업체입니다)

H 업체 이야기
백신이 문제가 많음을 깨달은 관리자분께서 서버에 설치된 백신을 제거하였습니다.
이후 이곳은 통합하겠다는 목적으로 액티브 디렉터리를 설치하면서 서버 재설치와 함께 전 사원의 PC를 재설치 하였습니다.

I 업체 이야기
서버에 백신이 무려 3개나 설치되어 있었습니다. 그럼에도 불구하고 매우 빠른 속도를 보여줬습니다.
서버 사양이 그다지 좋은 것도 아닌데 말이죠. 호기심이 들어서 봤더니 백신 설정에는 실시간 감시와 스케줄 감시가 모두 꺼 있었습니다.

J 업체 이야기
새로운 백신이 나왔음에도 불구하고 옛날 버전의 백신을 사용하고 계시는겁니다. 알고봤더니 크랙을 못구해서.. 라고 하시더군요.
이후 J 업체는 불법 소프트웨어 단속에 걸려서 모두 백신을 구입하셨다는 설을 나중에 들었습니다.
(※참고. 불법소프트웨어 단속으로 걸리면 에누리 없이 가장 높은 정가로 해당 제품을 구매해야 합니다)

2010년 1월 13일 수요일

Windows 2000: No support since 2010-07-13

- from http://support.microsoft.com -

 

2000년 10월 (지금은 사라진) 어느 포털 사이트에 입사한 다음, 열심히 가지고 놀았던 제품이 "Windows 2000” 이다.  꽤 열심히 공부하면서 Microsoft world 에 대해서 친숙하게 만들어 준 추억의 제품이다.

IDC란 곳에 처음 들어가서 케이블링도 하고, 서버들 구경하던 시절이 엊그제 같으나, 지금의 Windows Server 2008 R2 를 보면 정말 많이 진화했다고 생각된다. 

우리들 IT Pro. 들도 계속 진화합시다!!!

아직도 Windows 2000 (Professional, Server, Advanced Server, Datacenter Server)를 사용하고 있다면 아래의 사이트를 방문하세요.

2009년 12월 24일 목요일

What am I doing in 2009?

 

 

2009.4Q. 저는 SFoon.com  프로젝트에 참가했습니다.   SFoon.com 에는 제가 구현하고 싶었던 IT 인프라의 실험적 요소들을 많이 갖추고 있습니다. 좀 더 정리가 되면 많은 분들과 공유하고 싶습니다.

sfoon.com/giseongeom

모두 Merry Christmas & Happy New Year!!~

2008년 10월 29일 수요일

MS SQL Server 2005 interoperation problem with Linux client


MS SQL Server 2005와 Linux client (WAS로  Tomcat 실행) 연결 문제 때문에 몇 시간을 허비했는데, 간신히 해결했습니다.  시스템 환경 정보는 다음과 같습니다.
  1. DBMS Server:
    1. MS SQL Server 2005 Ent. with SP2 (x64)  on Windows Server 2003 std. with SP2 (x64)
    2. Hardware: Smart Start HP DL 580G5
  2. DBMS Client:  (Linux)
    1. Tomcat 6.0.18 on Cent OS Linux 5.1 (x64)
    2. Kernel: 배포본에 포함된 버전을 그대로 사용 (2.6.18-53.el5 #1 SMP)
    3. Microsoft SQL Server 2005 JDBC Driver 1.2 (Unix version)
    4. Hardware: HP DL360G5
  3. DBMS Client: (Windows)
    1. Windows Server 2003 std. with SP2 (x64)
    2. Hardware: HP DL360G5

증상은 아주 재미있습니다.
  1. 1. Tomcat 을 startup  --> SQL Connection 테스트 웹 페이지를 호출합니다.  여기까지 잘 됩니다.
  2. 다른 사용자는 접속하지 못합니다. (테스트 사이트이므로)
  3. 1분 정도 기다렸다가 다시 테스트 웹 페이지를 호출합니다.  -> 동작하지 않습니다
  4. SQL Server Mgmt. Studio에서 SP_WHO2 sp를 이용해서 체크하면, Linux client 에서 Connection이 사라진 것을 확인할 수 있습니다.  why? (Tomcat은 아무런 문제없이 실행 중인데.....)
  5. 다른 Windows client 에서 접속하는 Connection은 이상없이 잘 유지되고 있습니다.
  6. 이제 Tomcat (WAS)의 Connection Pool , JDBC 설정의 문제인가 싶어서 열심히 googling 합니다..
  7. ......  Google, Google, Google, Google, Google, Google ......
  8. ........문제는  여전히 해결되지 않고 너무 졸리고 피곤합니다 :-(
  9. 지쳐서 다른 Windows Machine에다가 JDK/Tomcat을 올려서 테스트. 
  10. 같은 소스인데, 잘 동작합니다!!!!!!
  11. 개발자는 Linux O/S 문제니까 어서 Windows로 재설치해서 해결하자고 무언의 압박을 줍니다. (Platform에 독립적인 Java의 강점을 살려서...)
  12. 이제 당신은 .... ?????

이제 왜 Windows Client만 잘 되는지 의심이 생깁니다.  SQL Server 2005 에서 Orphaned Connection을 정리하는 KeepAlive 기능에 대해 설명한 내용이 눈에 들어옵니다.
  1. KeepAlive의 기본값은 30초 (30,000 miliseconds)
  2. 체크 간격은  1초 (KeepAliveInterval)
  3. 최대 5번(TcpMaxDataRetransmissions) 정도 체크
  4. 정리하면 대략 35초에 1회씩 idle 상태의 SQL Connection 점검합니다.  일반적인 Windows Client 라면  acknowledge 응답을 통해서 연결이 계속 유지됩니다. (예: Game 서버)
  5. SQL Server 에서 Keep Alive 값을 변경해 봅니다.... 끊어지던 간격이 달라지는 것을 확인할 수 있습니다.
  6. 일단 KeepAlive가 영향을 주는 부분 같습니다. 그런데, 이걸 장시간 (예: 3600초 = 1시간) 설정하는 것은 역시 꽁수(workaround)입니다. 우아하지 않습니다 ~~
  7. 시스템의 TCP/IP 레지스트리 항목을 보면서,  Linux와 Windows 시스템 간의 궁합에 대해 사뭇 비판적으로 접근하게 됩니다........


해결책
  • 크게 고민하지 않고, 바로 테스트를 했습니다. 
  • Win2k3 SP2부터 추가된 SNP 기능 (RSS, TCP Offload)를 비활성화시켰습니다.
  • 문제가 해결되고, 정상 동작함을 확인했습니다.   그래서, SQL Server의 Keep Alive 설정은 Default 유지.
  • DBA도 행복하고, OS를 재설치하지 않게 된 SA도 행복해졌습니다.

결론

  • SQL 2005의 Keep Alive 기능은 Windows Client에 대해서만 훌륭하게 작동하는 것 같다.
  • Windows Server 2003 서버와 Linux 서버의 Tcp/IP Socket 문제가 생길 때,  꼭 SNP/RSS/TCP Offload  관련 레지스트리를 비활성화 해보자.
  • Platrom이 짬뽕인 환경은 아무튼 좀 짜증난다. 가급적 일관성 있게 유지하자.

관련자료
  1. SQL Protocols: Understand special TCP-IP property “Keep Alive” in SQL Server 2005
    http://blogs.msdn.com/sql_protocols/archive/2006/03/09/546852.aspx
  2. Windows 2003 SP2 설치후 네트워크가 되지 않는 문제
    http://blogs.technet.com/sankim/archive/2007/05/30/windows-2003-sp2.aspx