2014-04-19 10 views
8

Ich arbeite an einem Java-Projekt und habe einen Tomcat-Server für lokale Tests verwendet. Allerdings bin ich dabei, Heroku zu pushen und ich fand an article, dass schlägt vor, "eingebetteten" Tomcat zu verwenden.Eingebettete vs nicht eingebettete Java Server

Ich sah mich um, was genau "eingebettet" im Zusammenhang mit einem Java-Server bedeutete, aber es scheint, als ob jeder auf Google bereits versteht, was "eingebettet" bedeutet. Ich nicht. Was ist der Unterschied zwischen der Bereitstellung eines "normalen" Tomcat-Servers und eines "eingebetteten" Servers?

Antwort

9

"Eingebettet" bedeutet, dass Sie Schiffe mit dem darin enthaltenen Server programmieren, im Gegensatz zu einer Webanwendung, die auf einem externen Server bereitgestellt wird.

Mit Embedded Server ist Ihre Anwendung mit dem Server der Wahl verpackt und für den Start und die Verwaltung des Servers verantwortlich.

Vom Benutzer Standpunkt des Unterschied ist:

  • Anwendung mit Embedded Server sieht aus wie ein normales Java-Programm. Sie starten es einfach und das war's.
  • regelmäßige Web-Anwendung ist in der Regel ein war Archiv, das

Einbetten eines Server zu einem Server eingesetzt werden muss, ist sehr nützlich für Testzwecke, wo Sie oder stoppen Server nach Belieben während des Tests beginnen können.

+0

ist die Tomcat-Version in Tomcat eingebettet sind die gleichen wie der tatsächliche Tomcat? Das heißt, ob der zum Download auf der Apache-Site verfügbare Tomcat Version 8.5 und Tomcat Embedded ist (wie in diesem Link gezeigt: https://mvnrepository.com/artifact/org.apache.tomcat.embed/tomcat-embed-core/ 8.5.5) sind gleich oder verschieden? –

1

Von here ist es, wenn Sie tomcat in Ihre Anwendung "einbetten". Das heißt, Sie sind dafür verantwortlich, Tomcat zu starten und zu stoppen. Dies ist die Umkehrung eines normalen Containerbetriebs, aber Sie finden es möglicherweise nützlich für eine schnelle Bereitstellung und Tests.