안녕하세요..
델파이로 만들어진 서버와 클라이언트가 있습니다. 서버 <-> 클라이언트 통신은 TCP socket 으로 통신합니다.
이넘의 클라이언트를 웹으로 전환하려니 여러가지 생각할게 많이 있네요.
일단은 서버상태를 가져오는것부터 시작하려합니다.
PHP의 소켓으로 서버의 현황정보 서버소켓에 접속하는것 까지는 하겠는데 그다음이 문제..
1. 프로토콜상 기본적으로 패킷암호화를 하게 되어있습니다..
-> 암호화 루틴을 PHP 함수로 만들어 웹서버에서 직접 돌린다면..
만약에 웹서버가 해킹당해 FTP가 열리면 패킷암호화 루틴이 그대로 노출될수 있다는 위험성이 있을것 같습니다.
-> 현황처리부분을 부분적으로 패킷암호화 하지않고 패스트루 시킨다면..
역시 프로토콜 과 포트가 노출되면은 서버공격의 위험성이 있습니다.
서버현황 전송부분이 부하가 얼마 안걸린다지만 악의적으로 공격받게된다면은 안심할수 없죠..
프로토콜부분에 관해서 아직 비공개이지만 앞으로 여러 가지 이유로 외부에 공개될수도 있습니다.
-> CGI 모듈을 만들어 돌리면은..
되도록이면 웹서버 자체내에서 해결하려고 합니다..
2. 데이터 변환문제..
-> 정보를 가져오는 record 구조체에 Tdatetime 등 몇가지 델파이만의 변수형식이 있습니다..
이부분은 PHP 함수로 변환하는 방법밖에 없을까요.. 단 서버구성원은 건드리지 않습니다. 제가 원하지 않습니다.
추상적인 고민..
SOAP 을 이용해 웹서비스로 운영도 생각중입니다.. 허나 보안상 비공개로 운영되어야 하는만큼 개방성을 최대한으로 줄이려고 합니다.. 그냥 PHP socket 으로 하드코딩 해버릴까요.. 그렇다보면은 외부업체와의 정보교환 (**구체적으로 인가된 접속자에 한해서 웹형태??(heml? XML?)로 회원정보를 전송하는..??**)하려면은 남들이 어렵지않게 접근성도 구현해야 하는데.. 아직 갈피를 못잡고 있습니다..
생각같아선 그냥 프로토콜이 이러이러하게 되어있으니 이렇게 접속해서 가져가라~ 하고싶지만.. 현실이 안도와줍니다.
|
제가 아는 한에서는, php는 언어 자체면에서는 대단히 유연하고 편리한 웹개발 언어이지만, 확장성이 경쟁 기술인 asp나 jsp보다 떨어집니다.
보안상 혹은 성능상의 문제로 웹 스크립트 소스를 쓰기 곤란한 부분이 있을 때, asp에서는 액티브 객체 dll로 만들어 호출하고, jsp에서는 자바빈을 호출합니다. 둘다 바이너리죠. 그런데 php에서는 이런 확장/연동 방법이 좀 곤란한 걸로 알고 있습니다.
php가 재미있고 쉽다고는 해도, 역시 보안상의 문제가 크다면 asp나 jsp, 혹은 cgi/isapi 중에서 선택하는 방법밖에 없을 거 같습니다.
현실적으로는... 저는 asp가 최악의 웹 스크립트라고 생각하지만, 그래도 델파이로 만든 액티브 객체 dll과 직접 연동할 수 있으므로 역시 asp가 최소한의 노력으로 원하는 결과를 얻을 수 있는 방법일 겁니다.