2014-04-19 5 views
8

Pracuję nad projektem Java i korzystam z serwera Tomcat do testowania lokalnego. Jednak mam zamiar wypchnąć do Heroku i znalazłem an article, który sugeruje użycie "osadzonego" Tomcata.Embedded vs Non-Embedded Java Server

Rozejrzałem się, aby zobaczyć, co dokładnie "osadzone" oznacza w kontekście serwera Java, ale wydaje się, że wszyscy w Google już wiedzą, co oznacza "osadzony". Ja nie. Czym różni się wdrażanie "zwykłego" serwera Tomcat od "wbudowanego"?

Odpowiedz

9

"Wbudowany" oznacza, że ​​programujesz statki z serwerem w nim, a nie aplikacją WWW wdrażaną na serwerze zewnętrznym.

Z wbudowanym serwerem aplikacja jest pakowana z wybranym serwerem i odpowiedzialna za uruchamianie i zarządzanie serwerem.

Z punktu widzenia użytkownika różnica jest:

  • aplikacji z wbudowanego serwera wygląda jak zwykły program java. Po prostu uruchamiasz go i to wszystko.
  • regularna aplikacja internetowa jest zwykle war archiwum, który musi zostać wdrożony do jakiegoś serwera

Osadzanie serwer jest bardzo użyteczny dla celów testowych, gdzie można uruchomić lub zatrzymać serwer do woli podczas testu.

+0

jest wersja tomcat odzwierciedlone w tomcat wbudowane są takie same, jak rzeczywistych tomcat? tzn. powiedzmy, czy tomcat dostępny do pobrania na stronie Apache ma wersję 8.5 i osadzony tomcat (jak pokazano w tym linku: https://mvnrepository.com/artifact/org.apache.tomcat.embed/tomcat-embed-core/ 8.5.5) są takie same lub różne? –

1

Od here, to jest, gdy "osadzasz" tomcat w swojej aplikacji. Oznacza to, że jesteś odpowiedzialny za uruchomienie i zatrzymanie kocurka. Jest to odwrotność normalnej operacji kontenera, ale może się okazać przydatne do szybkiego wdrożenia i testowania.