ROVM 의 정체성은?

Posted: March 20th, 2006 | Author: weongyo | Filed under: ROVM |

아파치는 언제부터 개발되었는지 모르겠으나 내부 구조는 매우 잘 구현된 소스 코드이다. 소스 코드를 보면 알 수 있다. 모듈 부분을 보면 알수 있다. 이 사람들이 얼마나 구조를 유연하게 만들려고 노력을 하였는지 말이다.

ROVM 의 기본 구조는 아파치 서버 구조를 택하고 있다. 왜냐하면 Network 통신에 대한 개발이 많이 익숙하지 않은 나에겐 최고의 reference 이기 때문이다. 하지만 아파치 구조의 장점을 전혀 살리지 못하고 있는 것이 현실이다. 물론 ROVM 이 Apache 와 똑같이 되기를 원하지도 않으며, 똑같기를 원했다면 apache 모듈 형태로 ROVM 을 개발했을 것이다. (실제로 apache module 로 개발한 적도 있다. 물론 나 자신이 만족을 못해 그 코드를 버렸고 다음에 나온 것이 ROVM 이다.)

드디어 ROVM 의 OpenSSL 인증 및 설정 파일 기능, 인증 기능이 오늘 모두 삽입되어 마무리 되게 되었다. 하지만 돌이켜 보면 Apache Portable Runtime 라이브러리의 역활과 기존 Apache 의 SSL 모듈, 설정 기능들이 대부분 흡수되는 형식으로 프로그램이 짜여져 버렸다. (세상에서 제일 싫어하는 건 남이 짜놓은 코드가 인터넷에 있는데, 그걸 사용하지 않고 내가 다시 짜는 것이다. 내가 Apache 설정 기능 및 SSL 모듈들을 짜놓은 사람들보다 똑똑하고 경험이 많다면 다시 짜는 것이 맞겠지만 그 사람들보다 똑똑하다고 생각되지 않고 그냥 평범한 사람이라고 나 자신은 생각한다. 공부 목적으로 스스로 짜라면? 흥이다.)

Apache 와 비슷하지만 Apache 가 아닌.. APR 라이브러리와 APR-Util 라이브러리를 내부적으로 사용하면서 Apache 가 아닌 프로그램이 되었다. 정체성에 대한 혼란이 올 수 있는 시기라고 생각한다.

어디서 ROVM 만의 정체성을 찾아야 할까? Apache 는 HTTP 프로토콜을 처리하기 위해 존재하며, ROVM 은 ROVM 프로토콜을 지원하기 위해 존재한다. HTTP 프로토콜을 처리하기 전까지의 Apache 껍데기는 안정적이며 잘 설계되었으며 많은 System 에 이식될 수 있고 좋은 MPM 모듈을 갖추고 있는 매우 좋은 영양소이다. 즉, 이런 특징을 가지는 네트워크 통신 데몬을 만들고자 하는 사람에겐 천국이란 말이다.

ROVM 은 Apache 껍데기만 현재 삼키고 있다. 어디서 부터 껍데기의 시작이고 끝인지 현재 불분명하여 정체성의 문제를 격고 있다고 생각한다. 남의 좋은 점은 흡수하고 나 자신의 장점을 계속 발전시켜 간다면 언젠가 정체성의 해결은 둘째치고 다른 사람들에게 도움이 될 수 있는 프로그램으로 발전해 나갈 것이다. (사실 현재로썬 모든 기능의 구현이 정체성보다 우선되는 문제이다.)

그런 날이 오기를 기대하면 오늘도 컴퓨터 앞에서 잡생각 + 프로그래밍 생각을 하고 있다.


TrackBack URL

No comments yet.

Leave a comment