Programmēšana

Kas ir Tomcat? Oriģināls Java servleta konteiners

Apache Tomcat ir ilglaicīgs, atvērtā koda Java servleta konteiners, kas ievieš vairākas Java uzņēmuma galvenās specifikācijas, proti, Java Servlet, JavaServer Pages (JSP) un WebSockets API.

Apache programmatūras fonda projekts Tomcat pirmo reizi tika izlaists 1998. gadā, tikai četrus gadus pēc pašas Java. Tomcat sāka kā atsauces ieviešanu pirmajai Java Servlet API un JSP spec. Kaut arī tā vairs nav atsauces ieviešana nevienai no šīm tehnoloģijām, Tomcat joprojām ir visplašāk izmantotais Java serveris, lepojoties ar labi pārbaudītu un pārbaudītu galveno dzinēju ar labu paplašināmību.

Šajā īsajā ievadā uzzināsiet, kāpēc daudzi programmatūras veikali Java tīmekļa lietotņu darbināšanai izvēlas Tomcat. Jūs saņemsiet pārskatu par Tomcat un tā lietošanu, kā arī instalēšanas instrukcijas jaunākajai versijai šajā rakstā.

Tomcat un Java Servlet API

Tomcat 9 atbalsta Servers 4.0 specifikāciju un tam ir nepieciešama JDK 8 vai jaunāka versija. Tomcat 8.5 atbalsta vairākas jaunākas funkcijas, piemēram, HTTP / 2, taču paliek Servlet 3 konteiners.

Kāds serveris ir Tomcat?

Java ekosistēma atbalsta vairāku veidu lietojumprogrammu serverus, tāpēc tos nošķirsim un redzēsim, kur iekļaujas Tomcat:

  • A servletu trauks ir Java Serversīklietu specifikācijas ieviešana, kas galvenokārt izmantota Java servletu mitināšanai.
  • A tīmekļa serveris ir serveris, kas paredzēts vietējo sistēmu failu, piemēram, Apache, apkalpošanai.
  • A Java uzņēmuma lietojumprogrammu serveris ir pilnvērtīga Java EE (tagad Džakarta EE) specifikācijas ieviešana.

Sirdī Tomcat ir servlets un JSP konteiners. Java servletīkls apkopo kodu un biznesa loģiku un nosaka, kā Java serverī jāapstrādā pieprasījumi un atbildes. JSP ir servera skata renderēšanas tehnoloģija. Kā izstrādātājs jūs uzrakstāt servletu vai JSP lapu, pēc tam ļaujiet Tomcat apstrādāt maršrutēšanu.

Tomcat satur arī Coyote dzinēju, kas ir tīmekļa serveris. Pateicoties Coyote, ir iespējams paplašināt Tomcat, iekļaujot tajā dažādas Java uzņēmuma specifikācijas un iespējas, tostarp Java Persistence API (JPA). Tomcat ir arī paplašināta versija ar nosaukumu TomEE, kas ietver vairāk uzņēmuma funkciju. Es īsumā iepazīstināšu ar TomEE vēlāk šajā rakstā.

Sāksim ar ieskatu par Tomcat izmantošanu serveru un JSP mitināšanai.

Lejupielādējiet un instalējiet Tomcat

Tā kā programmatūras pasaule ir ļoti senatnīga, ir pieejamas vairākas Tomcat versijas. Informācija par versiju atšķirībām ir pieejama Tomcat mājaslapā. Parasti jūs varat izvēlēties tikai jaunāko stabilo versiju.

Mūsu vajadzībām lejupielādējiet jaunāko Tomcat versiju, kas pašlaik ir Tomcat 9. Jums ir iespēja lejupielādēt Tomcat kā arhīvu (.zip vai tar.gz) vai kā instalētu pakalpojumu. Labākā izvēle ir jūsu ziņā - ja vien, protams, nedarbojaties operētājsistēmā Windows, tādā gadījumā jūs izmantosiet arhīvu. Mēs izmantosim šī raksta arhīvu.

Windows instalēšana Tomcat

Ja izmantojat sistēmu Windows un vēlaties izmantot instalēšanas programmu, vienkārši lejupielādējiet .exe failu un palaidiet to. Tomcat instalēs sevi kā pakalpojumu ar saprātīgiem noklusējumiem. Pēc tam tā informēs jūs par instalēšanas vietu, un jūs varat turpināt, it kā jūs tur būtu izpakojis arhīvu.

1. solis. Komandrindas instalēšana

Dodieties uz komandrindu un ierakstiet gunzip apache-runcis-9.0.19.tar.gz sekoja darva -xf apache-runcis-9.0.19.tar. Tādējādi tiek izveidoti šādi direktoriji:

  • / bin satur skriptus Tomcat izpildei.
  • / webapps ir vieta, kur izvietosiet savas lietotnes.
  • / žurnāli ir vieta, kur Tomcat izdod savus žurnālus. Ņemiet vērā, ka iekļaujas Tomcat žurnālos /logs/catalina.out pēc noklusējuma. Šo failu var izmantot problēmu atkļūdošanai kopā ar lietotnei raksturīgiem žurnāla failiem.
  • / lib ir tas, kur Tomcat meklē JAR. Šeit jūs glabāsit papildu pakas, kas nav iekļautas Tomcat, piemēram, JPA.
  • / konf ir Tomcat konfigurācijas XML, kurā varat veikt tādas darbības kā lietotāju un lomu pievienošana Tomcat.

2. solis. Sāciet Tomcat

Ja jūs instalējāt Tomcat kā pakalpojumu, tas jau darbojas. Pretējā gadījumā dodieties uz priekšu un sāciet to, ievadot ./catalina.sh sākums komandrindā. (Tips ./catalina.sh bez argumentiem, lai redzētu visas pieejamās komandas). Tagad jums vajadzētu būt iespējai pārlūkprogrammā pārlūkot Tomcat apsveikuma ekrānu.

Metjū Taisons

Lietotņu izvietošana Tomcat

Runcis tīmekļa lietotnes direktorija ir vieta, kur izvietojat lietojumprogrammu. Jūs varat nomest a .kara failu tur, un Tomcat to palaidīs. WAR fails ir standarta lietojumprogrammas resursa iepakojums: JAR fails ar dažiem papildu failiem, kas konteineram (šajā gadījumā Tomcat) norāda, kā to palaist.

Papildus standarta iepakojumam ir trīs papildu veidi, kā izvietot saturu Tomcat.

Sprādzis izvietojums

"Eksplodētā" tīmekļa lietotne ir programma, kas nav saspiesta WAR failā, tas nozīmē, ka tajā joprojām ir visi direktorijos un failos izklāstītie elementi. Tomcat arhīvs, kuru esat izsaiņojis, piegādāja vairākus šādā veidā izvietotus piemērus, kurus atradīsit / webapps / piemēri direktorijā. Sprādzušās izvietošanas priekšrocība ir tā, ka jūs varat apskatīt tur esošos failus, neuztraucoties par saspiešanu.

Ja jūs virzāties uz // localhost: 8080 / piemēri /, jūs atradīsit saišu sarakstu. Šo lapu renderējis Tomcat no /webapps/examples/index.html failu. Tomcat apkalpo HTML failu no failu sistēmas, kas ir Tomcat Coyote dzinēja piemērs, kas darbojas kā tīmekļa serveris.

Jūs varat brīvi izpētīt sniegtos piemērus - tie sniedz labu pārskatu par Tomcat iespējām apkalpot servletus, JSP un WebSockets.

Tomcat pēc noklusējuma ietver arī pārvaldības lietotni, kas atrodama sadaļā / vadītājs ceļš. Cita starpā šī lietotne ļauj startēt, apturēt un pārvietot lietotnes no tīmekļa konsoles.

Tiek rādīts statisks saturs

Ir iespējams apkalpot failus no failu sistēmas vai pārsūtīt no Tomcat uz citu HTTP serveri, piemēram, Apache. Vēl viena izplatīta iestatīšana ir failu servera, piemēram, Apache vai Nginx, ievietošana Tomcat priekšā un pēc tam API pieprasījumu pārsūtīšana Tomcat. Šādos gadījumos mod_JK bibliotēku izmanto, lai saziņai konfigurētu Tomcat un Apache (vai pat citu tīmekļa serveri, piemēram, IIS).

Lai uzlabotu veiktspēju, galvenokārt statiskā satura piegādē, Tomcat piedāvā arī vietējos iesaiņotājus Windows un Linux. Tas ir pazīstams kā Tomcat gada aprīlis un vairāk informācijas ir pieejama šeit. Tie nav nepieciešami tipiskiem lietošanas gadījumiem, bet par tiem ir jāzina.

Iegultais Tomcat

Ilgu laiku Jetty bija vienīgais serveris, kas varēja darboties kā iegultais serveris. Tas ir mainījies, un tagad Tomcat var darboties arī iegults. Iegultā servera izmantošanas ideja ir tāda, ka servera, kurā atrodas lietojumprogrammas faili, vietā, kā redzējāt līdz šim, jums ir lietojumprogramma ar galveno klasi (tas ir, atsevišķa Java lietotne), kas izsauc servera iespējas no tās koda bāzes iekšpusē. Kopumā tas piedāvā vienkāršāku un pārnēsājamāku attīstības modeli un ir strauji kļuvis par normu. Piemēram, Spring Boot izmanto iegulto Tomcat instanci, kas darbojas dev režīmā.

Iegultā servera palaišana var būt vienkārša darbību ziņā, jo tagad jums ir darīšana tikai ar vienu komponentu (lietotni), nevis ar lietotni un ar servera izvietošanu. No otras puses, iestatīšana, kurā Tomcat darbojas kā neatkarīgs resursdators, joprojām ir ļoti izplatīta.

TomEE

Izmantojot Tomcat, ir iespējams izmantot vairāk Java Java (vai Jakarta EE) standarta iespēju, pievienojot šīs bibliotēkas pašam Tomcat vai lietojumprogrammu atkarībām. Vēl viena iespēja ir TomEE serveris. TomEE ir tas pats Tomcat dzinējs ar papildu Java uzņēmuma atbalstu, ieskaitot populāros JPA un CDI (Contexts and Dependency Injection) API. TomEE specifikācija ir balstīta uz Java EE tīmekļa profilu, tāpēc tā dod jums vairāk nekā Tomcat, bet nav pilnvērtīgs Java EE lietotņu serveris, piemēram, WildFly vai Glassfish.

Augsta pieejamība un kopu veidošana

Tomcat atbalsta augstas pieejamības un kopu veidošanu. Augsta pieejamība būtībā ir spēja neveiksme uz citu servera gadījumu un no jauna izveidojiet sesiju tā, it kā nekas nebūtu noticis nepareizi. Klasterizācija ir iespēja izveidot vairākas viena servera versijas, lai apstrādātu liela apjoma trafiku.

Secinājums

Tomcat joprojām ir aktīvi attīstīts, sekojot līdzi izmaiņām un nodrošinot stabilu un uzticamu platformu tīmekļa lietotņu izvietošanai. Gan tās pastāvīgā popularitāte, gan izvēle kā noklusējuma Java platforma daudzām PaaS sistēmām liecina par tās pastāvīgajiem panākumiem.

Šo stāstu "Kas ir Tomcat? Sākotnējais Java servletīklu konteiners" sākotnēji publicēja JavaWorld.

$config[zx-auto] not found$config[zx-overlay] not found