Open main menu
Home
Random
Recent changes
Special pages
Community portal
Preferences
About Wikipedia
Disclaimers
Incubator escapee wiki
Search
User menu
Talk
Dark mode
Contributions
Create account
Log in
Editing
Service-oriented architecture
(section)
Warning:
You are not logged in. Your IP address will be publicly visible if you make any edits. If you
log in
or
create an account
, your edits will be attributed to your username, along with other benefits.
Anti-spam check. Do
not
fill this in!
== Extensions and variants == === Event-driven architecture === {{Main|Event-driven architecture}} === Application programming interfaces === {{Main|Application programming interfaces}} Application programming interfaces (APIs) are the frameworks through which developers can interact with a web application. === Web 2.0 === [[Tim O'Reilly]] coined the term "[[Web 2.0]]" to describe a perceived, quickly growing set of web-based applications.<ref>{{cite web |url=http://www.oreillynet.com/pub/a/oreilly/tim/news/2005/09/30/what-is-web-20.html |title=What Is Web 2.0 |access-date=June 10, 2008 |publisher=Tim O'Reilly |date=September 30, 2005 }}</ref> A topic that has experienced extensive coverage involves the relationship between Web 2.0 and service-oriented architectures.{{Which|date=October 2016}} SOA is the philosophy of encapsulating application logic in services with a uniformly defined interface and making these publicly available via discovery mechanisms. The notion of complexity-hiding and reuse, but also the concept of loosely coupling services has inspired researchers to elaborate on similarities between the two philosophies, SOA and Web 2.0, and their respective applications. Some argue Web 2.0 and SOA have significantly different elements and thus can not be regarded "parallel philosophies", whereas others consider the two concepts as complementary and regard Web 2.0 as the global SOA.<ref name="sch">{{cite journal | url=http://www.alexandria.unisg.ch/Publikationen/37270 | title=Web 2.0 and SOA: Converging Concepts Enabling the Internet of Services | journal=IT Professional | volume=9 | issue=3 | pages=36β41 | access-date=February 23, 2008 | author1=Christoph Schroth | author2=Till Janner | year=2007 | doi=10.1109/MITP.2007.60 | s2cid=2859262 | archive-date=December 3, 2013 | archive-url=https://web.archive.org/web/20131203163749/https://www.alexandria.unisg.ch/Publikationen/37270 | url-status=dead }}</ref> The philosophies of Web 2.0 and SOA serve different user needs and thus expose differences with respect to the design and also the technologies used in real-world applications. However, {{As of|2008|lc=y}}, use-cases demonstrated the potential of combining technologies and principles of both Web 2.0 and SOA.<ref name="sch" /> === Microservices === {{main|Microservices}} Microservices are a modern interpretation of service-oriented architectures used to build [[Distributed computing|distributed software systems]]. Services in a microservice architecture<ref>{{cite arXiv|title=Microservices: yesterday, today, and tomorrow|eprint=1606.04036v1|last1=Dragoni|first1=Nicola|last2=Giallorenzo|first2=Saverio|author3=Alberto Lluch Lafuente|last4=Mazzara|first4=Manuel|last5=Montesi|first5=Fabrizio|last6=Mustafin|first6=Ruslan|last7=Safina|first7=Larisa|class=cs.SE|year=2016}}</ref> are [[Process (computing)|processes]] that communicate with each other over the [[Computer network|network]] in order to fulfill a goal. These services use technology agnostic [[Communications protocol|protocols]],<ref name="martinfowler">{{cite web|url= http://martinfowler.com/articles/microservices.html|title= Microservices|author= James Lewis and Martin Fowler}}</ref> which aid in encapsulating choice of language and frameworks, making their choice a concern internal to the service. Microservices are a new realisation and implementation approach to SOA, which have become popular since 2014 (and after the introduction of [[DevOps]]), and which also emphasize continuous deployment and other agile practices.<ref>{{Cite journal|last1=Balalaie|first1=A.|last2=Heydarnoori|first2=A.|last3=Jamshidi|first3=P.|date=2016-05-01|title=Microservices Architecture Enables DevOps: Migration to a Cloud-Native Architecture|journal=IEEE Software|volume=33|issue=3|pages=42β52|doi=10.1109/MS.2016.64|issn=0740-7459|hdl=10044/1/40557|s2cid=18802650|url=http://spiral.imperial.ac.uk/bitstream/10044/1/40557/8/SO_SWSI-2015-10-0149.R1_Balalaie.pdf|hdl-access=free}}</ref> There is no single commonly agreed definition of microservices. The following characteristics and principles can be found in the literature: * fine-grained interfaces (to independently deployable services), * business-driven development (e.g. [[domain-driven design]]), * IDEAL cloud application architectures, * polyglot programming and persistence, * lightweight container deployment, * decentralized continuous delivery, and * DevOps with holistic service monitoring. === Service-oriented architectures for interactive applications === Interactive applications requiring real-time response times, for example low-latency interactive 3d applications, are using specific service oriented architectures addressing the specific needs of such kind of applications. These include for example low-latency optimized distributed computation and communication as well as resource and instance management.<ref name="roia">{{ cite book | chapter-url=https://link.springer.com/chapter/10.1007/978-3-642-14122-5_31| chapter=A Service-Oriented Interface for Highly Interactive Distributed Applications | title=European Conference on Parallel Processing | access-date=2021-02-09 |author1=Frank Glinka |author2=Allaithy Raed | series=Lecture Notes in Computer Science | year=2009 | volume=6043 | pages=266β277 | doi=10.1007/978-3-642-14122-5_31 | isbn=978-3-642-14121-8 }}</ref><ref name="city">{{ cite book | chapter-url=https://dl.acm.org/doi/10.1145/1999320.1999326| chapter=Service-oriented interactive 3D visualization of massive 3D city models on thin clients | title= COM.Geo '11: Proceedings of the 2nd International Conference on Computing for Geospatial Research & Applications | access-date=2021-02-09 |author1=Dieter Hildebrandt |author2=Jan Klimke | year=2011 | page=1 | doi=10.1145/1999320.1999326 | isbn=9781450306812 | s2cid=53246415 }}</ref><ref name="soim">{{ Cite book | chapter-url=https://ieeexplore.ieee.org/document/7473030| access-date=2021-02-09 |author1=Mahy Aly |author2=Michael Franke | title=2016 IEEE Symposium on Service-Oriented System Engineering (SOSE) | chapter=Service Oriented Interactive Media (SOIM) Engines Enabled by Optimized Resource Sharing | year=2016 | pages=231β237 | doi=10.1109/SOSE.2016.47 | isbn=978-1-5090-2253-3 | s2cid=9511734 | hdl=1854/LU-7215326 | url=https://biblio.ugent.be/publication/7215326 | hdl-access=free }}</ref>
Edit summary
(Briefly describe your changes)
By publishing changes, you agree to the
Terms of Use
, and you irrevocably agree to release your contribution under the
CC BY-SA 4.0 License
and the
GFDL
. You agree that a hyperlink or URL is sufficient attribution under the Creative Commons license.
Cancel
Editing help
(opens in new window)