Java VM은 데몬 처럼 항상 작동이 가능한가요?
글쓴이: highvolt / 작성시간: 일, 2004/12/05 - 7:17오후
자바를 이용하여 초보적 수준에 프로젝트를 수행하고 있습니다.
자바를 사용하면.. 역시.. 제가 느끼기에 실행 속도가 좀 느리다..라는것입니다.
특히 스윙을 이용하여 프로그램을 짤때.. glib 를 사용하여 만든것 보다는
많이 느립니다.
더 정확하게 말하면.. 처음..프로그램이 메모리에 로드되고. 윈도우가 뜨는데
까지 걸리는 시간이 많더군요..
제가 알기로 자바 프로그램이 실행 될려면 VM 이 실행되고..그위에
자바 프로그램이 돌아가는것 같습니다. 그리고 프로그램이 종료되면
VM 도 종료되는것 같습니다.
만약에 VM 을 그냥 계속해서 데몬 처럼 돌리고..
그 위에 자바 어플리케이션을 돌린다면 초기 실행 속도가 빨라지지 않을까요?
현재 이런 방식이 불가능 한가요?
아니면 제가 잘 못 이해 하고 있는건가요?
고수님의 조언을 부탁합니다.
Forums:
어플리케이션으로 작성하면 가상머신이 항상 떠 있을수는 없구요어플리
어플리케이션으로 작성하면 가상머신이 항상 떠 있을수는 없구요
어플리케이션이 내려가면 가상머신도 내려갈 겁니다.
비슷한 형태로 작성은 가능하긴 한데...
자바 어플리케이션 자체가 자바 클래스를 동적 로딩할 수 있거든요.
1. 어플리케이션 하나 만들고 -->(하는일은 클래스 명을 받아서 동적 로딩함)
2. 동적 로딩되는 클래스들을 만들어서 하시면 될듯 싶네요.
Class 객체의
forName()
newInstance()등등의 API를 찬찬히 뜯어봐 보세요.
Java 6 에서는 질문하신 분께서 생각하시는 system shared
Java 6 에서는 질문하신 분께서 생각하시는 system shared vm이
지원된다고 합니다.
현재로서는 윗 분 말씀처럼 동적 클래스 로딩을 사용한 꼼수 정도 밖에는 안될 것 같네요..
흐음.. 저는 이번 타이거(자바5) 때 저 기능을 지원해서 어플리케이션의
흐음.. 저는 이번 타이거(자바5) 때 저 기능을 지원해서 어플리케이션의 속도가 빨라진다고 들었었는데, 실제로 그런것 같진 않네요. 다시 6 버젼으로 미뤄진건가요?
-----------------------------------------------------------------------
GPL 오픈소스 윈도우용 이미지 뷰어 ZViewer - http://zviewer.wimy.com
블로그 : http://blog.wimy.com
답변감사합니다.
답변 감사합니다.
동적 클래스 로딩에 관한 좋은 링크 있으면 알려주시길 부탁드립니다.
스윙을 써서 어플리케이션의 기동이 느리다고 하는데, 동적클래스 로딩으로
스윙을 써서 어플리케이션의 기동이 느리다고 하는데, 동적클래스 로딩으로 해결을 할 수 있나요?
어떤 어플인지 모르는 상태에서 조언한다면, 저 같으면 swt를 쓰라고 권하겠습니다.
어플에 따라서는 항상 켜놓고, 쓰레드를 하나 빼서 CLI를 구성하거나, config화일 모니터링 하는 방법으로 프로그램의 재시작없이, 메인 프로세스를 조절할 수도 있죠. 즉, 디자인하기 나름이라는... 어떤 프로그램을 작성하려고 하는지를 알려주시면 답변을 드리는 입장에서도 좀 더 정확하고 상세히 답을 드릴 수 있겠군요.
단지, 자바의 concurrent 프로그래밍에 대해 알고 싶으신 거라면, Doug Lea책을 보시길 권합니다. 예제는 인터넷 상에서도 많이 볼 수 있습니다.
----
I paint objects as I think them, not as I see them.
atie's minipage
한 개의 JVM 으로 여러 Java 어플리케이션을 실행하는 시스템에 대한
한 개의 JVM 으로 여러 Java 어플리케이션을 실행하는 시스템에 대한 기사가 올라와 았군요.
JDistro 랍니다.
http://www.onjava.com/pub/a/onjava/2004/11/24/jdistro.html
http://kwon37xi.egloos.com
댓글 달기