Application Server

From EIK wiki

Application Server – Rakendusserver

Rakendusserver (Application Server) on tarkvara platvorm (software framework) pühendatud tõhusa täitmise kord (programmid, rutiinid, skripte) toetada ehitus rakendusi. Algselt kasutati mõisted rääkides varjasest klient-serverist, et eristada serverit SQL teenuste juhtimisel . Hiljem mõiste omandas veebirakenduse tähendus. Rakendusserver toimib kogum komponente, mis on kättesaadav tarkvaraarendajale API (Application Programming Inerface) määratletud platvorm ise.

Veebirskenduste jaoks need komponendid tavaliselt töötavad samas masinas, kus veebiserver töötab ja nende peamiseks ülesandeks on toetada ehitus dünaamilisi lehekülgi. Kuid tänapäeva rakenduste serverit on sihtinud palju enamat kui lihtsalt luua veebilehe, vaid rakendada selliseid teenuseid nagu klaster, tõrkesiirdeesinemisjuhte ja kormuste tasakaalustamine, nii arendajatel on võimalus keskenduda ainult äriloogika rakendamisest.

Tavaliselt mõiste viitab Java rakenduste serveritele. Sel juhul rakendusserver käitub nagu rakenduste käitamiseks laiendatud virtuaalne masin, ühel pool läbipaistvalt hallata andmebaasi ühendustega ja teisel pool veebikliendi ühendustega.

Muud kasutusviisid, millile mõiste võib osutada :

  • teenuseid, mis server teeb kättesaadavaks
  • arvuti riistvara, mida kasutatakse


Java application servers

Pärast Java platvormi edu mõnikord mõiste viitab J2EE või Java EE 5 rakendusserveritele. Mõned rohkem tuntud Java Enterprise Edition rakendusserverid sisaldavad:

  • Apache Geronimo (Apache Software Foundation)
  • Glassfish Application Server (Oracle Corporation)
  • Caucho Resin Application Server
  • WebSphere Application Server and WebSphere Application Server Community Edition (IBM)
  • JBoss (Red Hat)
  • Jetty (Eclipse Foundation)
  • JRun (Adobe Systems)
  • Oracle OC4J (Oracle)
  • Orion Application Server (IronFlare AB)
  • WebLogic Server (Oracle)
  • SAP Netweaver AS (ABAP/Java) (SAP)
  • tc Server (SpringSource)
  • Sun GlassFish Enterprise Server (based on GlassFish Application Server) (Oracle Corporation)
  • Sybase Enterprise Application Server (Sybase Inc)
  • Tcat Server (MuleSoft)
  • WebObjects (Apple Inc.)
  • JEUS (Tmaxsoft Inc.)
  • Playstation 3 JMS Messaging Enterprise Edition
  • Active Q cumber 5.0

Apache Tomcat – populaarne, kergekaaluline rakendus konteiner, kuid mitte täielik rakendusserver, sest see ei taga Java EE teenuseid või J2EE spetsifikatsiooni.

Web-moodulid sisaldavad servlets ja JavaServer Pages. Äriloogika paikneb Enterprise JavaBeans’is (EJB-3). Hibernate projekt pakub EJB-3 konteiner Jboss rakendusserveri täitmiseks. Tomcat Apache’st ja JonAS ObjectWeb’st on tüüpilised konteinerid, mis saavad säilitada neid mooduleid.

Java Server Page (JSP) (Servlet Java’st) täidab web konteineris. JSP annavad võimaluse luua HTML leheküljed, lülitades viited serverloogika lehekülje sees. HTML coders ja Java programmeerijad saavad töötada kõrvuti, viidates üksteise koodi oma. JavaBeans on sõltumatu komponentide klass Java arhitektuuri Sun Microsystem’is. Eespool nimetatud rakendusserverid peamiselt teenib veebirakendustele.


.NET Framework

Microsoft

Microsoft positsiooni keskmise astme rakendused ja Windows Server operatsioonisüüsteemi infrastruktuuri teenused ja .NET Framework tehnoloogiat rakendusserverite rollis:

  • Internet Information Services
  • .NET Framework (Windows Communication Foundation, Web Services, .NET Remoting, MSMQ, ASP.NET, ADO.NET)
  • Distributed Transactions/COM+
  • Active Directory Application Mode, Active Directory Federation Services

Third-party

  • Mono (not fully .net compatible), developed by Novell, Inc., licensed under GPL.
  • Base4 Application Server, an open source project


Zend platform

Zend pakub rakendusserver Zend Server – kasutatavate jooksvate ja haldamise PHP rakendusi.


Other platforms

Avatud lähtekoodiga rakendusserverid teiste tarnijatelt. Näited:

  • Appaserver
  • Zope
  • Spring Framework.


Advantages of application servers

Andmete ja koodi terviklikkus

Koondades äriloogika eraldi server või väike arv server masinad, rakenduste uuendused ja täiendused võivad olla tagatud kõikjalekasutajale. Ei ole ohtu, et rakenduse vana versioon saab juurdepääs andmetele või maanipuleerida andmeega vastuolus viisil.

Tsentraliseeritud analüüs

Muutused rakenduse seadetes, selliseid nagu andmebaasi serveri muutmine või süsteemi seadeid võimalik teha tsentraliseeritult.

Turvalisus

Rakendusserver toimib nagu keskpunkt, mille kaudu osutajatel on võimalik hallata andmete juurdepääsuga ja nende rakenduste osadega. Mis on vara kaitse, mille kohaolu võimaldab vastutuse autentimine potentiaalselt ohtlikud kogused kliendi tasandil, võtmata andmebaasi kiht.

Tehingu toetuseks

Tehing kujutab aktiivsuse ühiku, mille jooksul palju ressursside muudatusi on võimalik teha aatomi (nagu jagamatu ühik töö). Lõppkasutajad saab kasu kogu süsteemi standard käitumisest, mille tulemusena on arengu aega vähendamine, mis toob kaasa kulude vähenemine. Kuna server teeb palju tüütu koodi genereerimist, arendajad saavad keskenduda äriloogikast.


Autor

Arina Püvi A21