JavaRush /Java Blog /Random-KO /애플리케이션 서버 및 Tomcat 개요
eGarmin
레벨 41

애플리케이션 서버 및 Tomcat 개요

Random-KO 그룹에 게시되었습니다
친애하는 자바라시안 여러분, 이 기사에서 제가 무엇을 고려하고 싶습니까? 나는 적어도 무료이고 소스 코드를 사용할 수 있기 때문에 주목할 가치가 있는 애플리케이션 서버 부분에 대해 간략하게 개요를 작성하고 싶습니다. 나는 귀하의 시스템이 나와 유사하다고 가정합니다. Windows 7 64비트가 있고 JDK 1.7과 JDK 1.8도 있는데 JAVA_HOME 환경 변수는 후자를 참조합니다. 제 경우에는 JAVA_HOME 경로가 C:\Program Files\Java\jdk1.8.0_31이라는 뜻입니다. 애플리케이션 서버 및 Tomcat 개요 - 1따라서 아래에 설명된 내용을 반복할 때 "왜 나에게 효과가 없었나요? 내가 뭔가 잘못하고 있는 것일까요?"와 같은 질문이 최대한 적어지도록 하기 위해 내가 내 작업에서 수행한 모든 작업을 설명하려고 노력할 것입니다. 기계. 시작하다…

캐스팅, 즉 선택

먼저 검토할 애플리케이션 서버를 선택해야 합니다. 이렇게 하려면 Wikipedia 기사 응용 프로그램 서버 비교 (영어, 다른 서버가 없기 때문에)를 참조하세요. 여러 애플리케이션 서버가 있다는 표시가 있지만 우리가 관심을 갖는 것은 오픈 소스이고 다른 한편으로는 JavaEE를 완벽하게 지원하는 서버뿐입니다. 이 테이블의 Java EE 호환성 열에는 Full Platform 유형의 행이 포함되어야 합니다 . WildFlyJBoss가 모두 포함된 이 목록에서 후자를 즉시 ​​삭제할 수 있습니다. 그것은 단지 WildFly의 이전 이름과 이전 버전일 뿐입니다 . 결과적으로 우리는 주의를 기울일 만한 다음과 같은 서버 목록을 얻습니다.
  1. Glassfish (독점은 아니지만 glassfish.java.net 커뮤니티 의 항목 이지만 Oracle 웹 사이트에서 javaEE SDK가 필요한 경우 이 애플리케이션 서버를 제공할 정도로 Oracle Corporation에서 지원합니다. 그렇지 않은 경우 다른 방법은 없어요)
  2. (Red Hat) WildFly (이전 JBoss)
  3. (아파치) 제로니모
  4. (Apache) Tomcat (이것은 단지 서블릿 컨테이너이지 애플리케이션 서버는 아니지만 프로그램이 올바르게 작성되면 반드시 작동할 수 있는 표준입니다. 다른 서버에서는 프로그램이 올바르게 작성될 수 있습니다. JavaEE, 그러나 모든 것이 작동하면 올바르지 않거나 전혀 작동하지 않을 것입니다. 나는 Geronimo에 대해 이야기하고 있는데 그 결함은 오랫동안 논의될 수 있습니다.)
이제 이 서버를 가동해 보겠습니다. 32비트 버전과 64비트 버전 중에서 선택할 수 있는 경우에는 64비트 시스템용 아카이버를 선택했습니다.

설치

설치 측면에서 모든 것이 간단하며 선택한 각 서버에 대해 설치는 단순히 아카이브의 압축을 풀면 됩니다. 예를 들어, 데스크탑에 AppServers 폴더를 만들어서 모든 것을 풀기 시작했습니다.

설정

서버가 작동할 HTTP 포트를 설정하여 서버 설정을 시작해 보겠습니다. 그런 다음 우리 자신을 서버 관리자로 등록하겠습니다. 각 서버에는 고유한 구성 기능이 있습니다. 톰캣의 경우. 압축을 푼 tomcat이 있는 폴더로 이동한 다음 conf 폴더 , server.xml 파일로 이동합니다 . 이 파일에서 숫자 8080 (기본 http 포트)을 찾아 원하는 대로 변경합니다. 저는 9713 으로 설정했습니다 . 자신을 서버 관리자로 등록하려면 동일한 폴더에 있는 tomcat-users.xml 파일을 열어야 합니다 . 그 안에 닫는 태그 </tomcat-users> 앞에 다음 태그 <user username="egarmin" 비밀번호="1" Role="manager-gui,manager-script,manager-status,manager-jmx"/ 태그를 추가하세요. > 귀하의 역할에 최대 관리 권한(역할) 수를 할당했습니다. 이를 통해 GUI와 원격 연결을 통해 애플리케이션을 배포할 수 있습니다. 이제 tomcat을 실행해 보겠습니다. 압축을 푼 tomcat이 있는 폴더로 이동한 다음 bin 폴더로 이동하여 start.bat 파일을 실행합니다 . http://localhost:9713 에서 브라우저로 이동하세요 . 모든 것이 잘 작동해야 하며 우리는 호랑이를 보게 될 것입니다. 수코양이이제 관리자 패널에 액세스할 수 있는지 확인해 보겠습니다. 이렇게 하려면 http://localhost:9713/manager 로 이동하여 선택한 로그인 이름과 비밀번호를 입력하고 액세스 권한을 얻으세요. Tomcat의 관리자만세! Tomcat이 실행 중인 콘솔을 닫으면 일시적으로 Tomcat을 비활성화할 수 있습니다. 글래스피시용. 압축을 푼 glassfish가 있는 폴더로 이동한 다음 glassfish 하위 폴더 , domains 하위 폴더 , domain1 폴더로 이동합니다 . config 폴더 로 이동하여 domain.xml 파일을 찾으세요 . 여기서는 또한 숫자 8080 (이 숫자는 일반적으로 애플리케이션 서버 및 서블릿 컨테이너의 기본 HTTP 포트임)을 찾아 원하는 대로 변경합니다. 저는 9813 으로 설정했습니다 . glassfish를 실행해 봅시다. 압축을 푼 glassfish가 있는 폴더로 이동한 다음 glassfish 하위 폴더 , bin 폴더로 이동합니다 . startserv.bat 파일을 실행하십시오 . 브라우저에 http://localhost:9813 주소를 입력합니다 . GlassFish Server 라는 제목이 표시된 추악한 페이지에서 관리 콘솔로 이동하는 링크를 찾아 클릭합니다. GlassFish에 처음 로그인다음으로 JSF 기반 관리 콘솔의 아름다운 페이지로 이동한 후 관리자 비밀번호 변경 항목을 클릭하고 관리자GlassFish의 관리자 에게 필요한 비밀번호를 입력한 다음 확인하고 저장 버튼을 클릭합니다.. 이후에 관리 콘솔에 로그인할 때 관리자 로그인 과 지정된 비밀번호를 GlassFish에서 비밀번호 변경입력해야 합니다 . 이제 Glassfish 가 실행 중인 콘솔을 닫으면 일시적으로 Glassfish를 비활성화할 수 있습니다. WildFly의 경우. 압축을 푼 wildfly 가 있는 폴더로 이동합니다 . 그런 다음 독립 실행형 폴더로 이동한 다음 구성 폴더로 이동 하고 그 안에 있는 Standalone.xml 파일로 이동합니다 . 다음으로 우리는 확립된 계획에 따라 진행합니다. 포트를 9913 으로 설정했습니다 . 서버를 시작해보자. 이를 위해 압축을 푼 wildfly 가 있는 폴더로 이동합니다 . 다음으로 bin 폴더로 이동하여 Standalone.bat 파일을 실행합니다 . 브라우저를 열고 주소 http://localhost:9913 을 입력하세요 . 관리 콘솔 링크를 클릭하여 관리 콘솔(즉, 애플리케이션 서버의 관리 패널)로 들어갑니다. 하지만 그렇지는 않았으니까... 화면이 나타납니다. 이 화면은 관리자가 생성되지 않았음을 알려주며 관리자를 생성하려면 콘솔 유틸리티 add-user.bat 를 사용해야 합니다 . 글쎄요, 필요하다면 필요합니다. bin 폴더 로 돌아가서 이 유틸리티를 실행합니다. 먼저 생성하려는 사용자 유형을 선택하라는 메시지가 표시됩니다. 항목 (a) 를 선택해야 하는데 이는 관리자가 필요하다는 의미입니다. 그런 다음 이 사용자의 이름 Username 및 비밀번호 Password 를 묻는 메시지가 표시됩니다 . 비밀번호는 비워둘 수 없지만 한 문자만 가능합니다. 물론 유틸리티는 꾸짖을 것이지만 "확실합니까?"라는 질문에 '예'라고 답하면 삼킬 것입니다. 그런 다음 비밀번호 재입력 요청을 다시 입력하여 비밀번호를 확인하세요 . 그러면 더 많은 질문이 있을 것입니다. 그러나 우리는 질문에 모두 긍정적으로 대답하고 유틸리티를 종료합니다. 위 페이지로 돌아가서 다시 시도 링크를 찾아 클릭하세요. 이제 새로 생성된 관리자의 세부 정보를 입력하면 관리자 패널로 이동할 수 있습니다. 서버가 시작된 콘솔 창을 닫아 서버를 종료했습니다. 제로니모에게. 압축을 푼 geronimo 폴더로 이동합니다 . 그런 다음 var 하위 폴더 로 이동한 다음 config 폴더로 이동 하고 그 안에 config-substitutions.properties 파일이 있습니다 . 이 파일은 애플리케이션 서버에서 사용하는 모든 포트를 편리한 형식으로 설명하지만 포트 교체 방식은 동일합니다. 포트를 10013 으로 설정했습니다 . geronimo 서버를 시작해보자 . 압축을 푼 geronimo가 있는 폴더로 이동한 다음 bin 하위 폴더로 이동하여 거기에서 시작.bat 파일을 실행해 보겠습니다 . http://localhost:10013 페이지로 이동하세요.비밀번호를 사용하여 GlassFish 관리 패널에 로그인하세요.WildFly에 처음 로그인WildFly 관리자 패널에 처음 로그인WildFly의 관리자. 어떻게 생각하나요? 아마도 페이지가 없을 것입니다. 왜? 문제는 최신 버전의 Geronimo(3.0)가 최신 버전의 JDK(1.8)와 작동할 수 없다는 것입니다. 따라서 이 버전만 있거나 심지어 7번째 버전이 있어도 JAVA_HOME 환경 변수는 여전히 다음을 구체적으로 참조합니다. 8번째, 저처럼 애플리케이션 서버가 시작되지 않습니다. 따라서 Geronimo가 작동하려면 JDK 1.7을 다운로드해야 합니다. 이제 7번째 JDK를 설치했지만 JAVA_HOME 변수의 값을 변경하고 싶지 않다고 가정해 보겠습니다(결국 다른 프로그램은 이에 대해 불평하지 않으므로 최신 버전의 JDK로 작업할 수 있습니다). 무엇을 해야 할까요? 동일한 bin 폴더에 있는 setjavaenv.bat 파일을 열고 :okJdkFileCheck 줄을 찾는 것이 좋습니다 . 그런 다음 다음 줄에 환경 변수 재정의를 추가합니다. 예를 들어 다음과 같습니다. set JAVA_HOME=C:\Program Files\Java\jdk1.7.0_75 이 줄은 없으므로 직접 작성해 주세요. 32비트 시스템을 사용한다면 더 이상 문제가 없을 것입니다. 또한 64비트 시스템을 사용하고 64비트 구성으로 JDK 1.7을 설치했다면 모든 것이 문제가 없습니다. 이제 우리가 64비트 시스템(예를 들어 Windows 7 64)의 32비트 라인에서 JDK 1.7을 설치하기로 결정했다고 가정해 보겠습니다. 그럼 어쩌지? 그런 다음 좀 더 수정해야 합니다. 64비트 시스템에는 프로그램 설치를 위한 두 개의 폴더( Program FilesProgram Files (x86)) 가 있고 아무것도 변경하지 않으면 32비트 JDK가 다음 폴더로 이동하기 때문입니다. 후자. 그게 뭐가 그렇게 무서워? 예, 괜찮아 보입니다. 그러나 JAVA_HOME 변수의 경로(x86)에 대괄호가 있으면 Geronimo는 소화불량을 겪게 됩니다. 왜? 특히 포럼에 따르면 이 오류는 Geronimo 의 세 번째 버전에서 수정되었어야 한다는 점을 고려하면 더욱 그렇습니다. 그러나 그런 것은 없습니다. 이 문제에서 가장 중요한 것은 오줌을 싸는 것이 아닙니다. 인디언이 수정하지 않으면 우리가 수정하겠습니다. 이를 수행하는 방법에는 두 가지가 있는데, 확실하게 하기 위해 두 가지 방법을 결합하는 것을 선호합니다. 먼저, 다시 setjavaenv.bat 파일로 이동하여 이미 언급된 레이블 :okJdkFileCheck 를 찾으세요 . 이 레이블 아래에는 if "%JRE_HOME%" == ""(존재하는 경우) "%JAVA_HOME%\bin\javac.exe"(JRE_HOME=%JAVA_HOME%\jre 설정) else set JRE_HOME=%JAVA_HOME% 행이 있습니다 . cure Geronimo 하위 문자열 JRE_HOME=%JAVA_HOME%\jre를 따옴표로 묶는 것만으로도 충분합니다. 즉, 전체 행을 if "%JRE_HOME%" == ""(존재하는 경우 "%JAVA_HOME%\bin\javac.exe"("JRE_HOME=%JAVA_HOME%\jre" 설정))로 바꾸고 그렇지 않으면 JRE_HOME=%JAVA_HOME% 을 설정합니다 . 또한 Windows 7의 Program Files와 같은 폴더에는 동의어가 있다는 점을 기억하거나 인식하십시오(예: C: 폴더의 경우).C:\Progra~2 ). 따라서 파일 setjavaenv.bat 에서 :okJdkFileCheck 레이블 뒤에 JAVA_HOME 변수의 다음 값을 설정하면 JAVA_HOME=C:\Progra~2\Java\jdk1.7.0_75로 설정되고 Geronimo 서버도 32를 실행 하게 됩니다. -64비트 x 비트 운영 체제의 비트 JDK입니다. 이런 것... 음, 마지막으로 start.bat 를 호출하여 Geronimo를 시작할 수 있습니다 . 이제 아무런 문제가 없어야 합니다. 브라우저에서 http://localhost:10013 페이지로 이동합니다 . 왼쪽 상단에서 콘솔 링크를 찾아 클릭하세요. 관리자 사용자 이름과 비밀번호를 입력해야 합니다. 이것이 비밀번호 관리자를 사용하는 시스템 사용자 임을 바로 알려드리겠습니다 (기본값). 콘솔 자체로 이동하여 아래 그림과 같은 메뉴 항목을 따르면( 고급 라디오 버튼을 선택한 다음 보안 > 사용자 및 그룹 선택) 시스템 사용자 의 비밀번호를 변경하거나 다른 관리자를 생성할 수 있습니다. 이것을 삭제하세요. 또한 서버가 실행 중이던 콘솔 창을 간단히 닫아 Geronimo 서버를 중지 할 수도 있습니다.제로니모비밀번호를 사용하여 Geronimo 관리 영역에 로그인하십시오.Geronimo에서 비밀번호 변경하기

결론

이번 리뷰에서는 기본적으로 널리 사용되는 애플리케이션 서버와 Tomcat 서블릿 컨테이너의 설치 및 초기 구성을 살펴보았습니다. Geronimo를 제외한 나머지 서버들은 저에게 매우 친절하고 호의적이었습니다. 다음 게시물에서는 계속해서 애플리케이션 서버를 고려하고 웹 서비스를 고려하는 세 번째 단계, 즉 첫 번째 단계에서 설명한 웹 서비스를 이러한 서버에 배포하는 방법을 보여 드리겠습니다 . 이를 위해 우리는 웹 서비스의 war 아카이브를 생성할 것이며, 서비스가 올바르게 작동하기 위해 이 아카이브에 포함되어야 하는 타사 jar 세트가 서버마다 크게 다르다는 것을 분명히 보여줄 것입니다.
코멘트
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION