Middleware (distributed applications): Difference between revisions

Content deleted Content added
Skordic21 (talk | contribs)
Explained in-depth and added extension on how middleware stack can be used in the telecom industry.
 
(13 intermediate revisions by 11 users not shown)
Line 1:
{{short description|Provides services for the various components of a distributed system}}'''Middleware''' in the context of [[distributed application]]s is [[software]] that provides services beyond those provided by the [[operating system]] to enable the various components of a distributed system to communicate and manage data. Middleware supports and simplifies complex [[distributed application]]s. It includes [[web server]]s, [[application server]]s, messaging and similar tools that support application development and delivery. Middleware is especially integral to modern information technology based on [[XML]], [[SOAP]], [[Web service]]s, and [[service-oriented architecture]].
{{short description|Provides services for the various components of a distributed system}}
{{About|distributed applications|middleware in general|Middleware}}
 
'''Middleware''' in the context of [[distributed application]]s is [[software]] that provides services beyond those provided by the [[operating system]] to enable the various components of a distributed system to communicate and manage data. Middleware supports and simplifies complex [[distributed application]]s. It includes [[web server]]s, [[application server]]s, messaging and similar tools that support application development and delivery. Middleware is especially integral to modern information technology based on [[XML]], [[SOAP]], [[Web service]]s, and [[service-oriented architecture]].
 
Middleware often enables [[interoperability]] between applications that run on different operating systems, by supplying services so the application can exchange data in a standards-based way. Middleware sits "in the middle" between [[application software]] that may be working on different [[operating system]]s. It is similar to the middle layer of a [[Multitier architecture|three-tier]] single system architecture, except that it is stretched across multiple systems or applications. Examples include [[Enterprise Application Integration|EAI]] software, telecommunications software, [[Transaction Processing System|transaction monitors]], and messaging-and-queueing software.
Line 14 ⟶ 11:
 
== Origins ==
Middleware is a relatively new addition to the computing landscape. It gained popularity in the 1980s as a solution to the problem of how to link newer applications to older legacy systems, although the term had been in use since 1968.<ref>{{Cite web|first=Nick|last=Gall|url=http://ironick.typepad.com/ironick/2005/07/update_on_the_o.html|title=OriginUpdate on the origin of the term ''''"middleware"|date=July 30, 2005}}</ref> It also facilitated [[distributed processing]], the connection of multiple applications to create a larger application, usually over a network.
 
==Use==
Line 36 ⟶ 33:
 
Middleware can help software developers avoid having to write [[application programming interface]]s (API) for every control program, by serving as an independent programming interface for their applications.
For [[Future Internet]] network operation through traffic monitoring in [[Network management|multi-___domain scenarios]], using mediator tools (middleware) is a powerful help since they allow [[Telecommunications service provider|operators]], searchers and [[service providers]] to supervise [[Quality of service]] and analyse eventual failures in [[telecommunication service]]s.<ref>{{Cite web|author=Kai Oswald Seidler |url=http://www.fp7-moment.eu/ |title=MOMENT |publisher=Fp7-moment.eu |access-date=2010-08-19}}</ref> The Middleware stack is devised of several components (CSMS, TV Statistics & Client applications). It is known as the software brains of OTT platforms as it controls and interconnects all the components of the solution. The Content and Subscriber Management System (CSMS) is the central part of the solution commonly referred to as an administration portal. Apart from being the main interface for operator personnel to administer the TV service (Subscribers, Content, Packages, etc.) it also controls the majority of TV services and interacts with streaming & CDN and DRM serves to deliver Live, VOD and recorded content to the end users. It also integrates with external systems for billing, provisioning and with EPG and VOD content providers. Client applications authorize the CSMS and communicate with it, to provide required TV services to the end users on different devices. <ref>{{Cite web |last=Pirtovsek |first=Nino |date=September 16, 2021 |title=Guide to OTT Technology For Network Operators |url=https://www.uniqcast.com/blog/ott-technology-guide-network-operators |url-status=live |archive-url=https://web.archive.org/web/20221208133529/https://www.uniqcast.com/blog/ott-technology-guide-network-operators |archive-date=December 8, 2022 |access-date=May 10, 2023 |website=Uniqcast}}</ref>
 
Finally, e-commerce uses middleware to assist in handling rapid and secure transactions over many different types of computer environments.<ref>Charles, J. (1999). [httphttps://ieeexplore.ieee.org/ielx5Xplore/2/16523/00762786login.jsp?url=%2Fielx5%2F2%2F16523%2F00762786.pdf&authDecision=-203 Middleware moves to the forefront] {{subscription required}}. Technology News. Retrieved March 2, 2009.</ref> In short, middleware has become a critical element across a broad range of industries, thanks to its ability to bring together resources across dissimilar networks or computing platforms.
 
In 2004 members of the [[European Broadcasting Union]] (EBU) carried out a study of Middleware with respect to system integration in broadcast environments. This involved system design engineering experts from 10 major European broadcasters working over a 12-month period to understand the effect of predominantly software-based products to media production and broadcasting system design techniques. The resulting reports Tech 3300 and Tech 3300s were published and are freely available from the EBU web site.<ref>{{Cite web|url=http://tech.ebu.ch/docs/tech/tech3300.pdf |title=EBU middleware report Tech 3300 |access-date=2010-08-19}}</ref><ref>{{Cite web|url=http://tech.ebu.ch/docs/tech/tech3300s.pdf |title=EBU middleware reports Tech 3300s |access-date=2010-08-19}}</ref>
Line 68 ⟶ 65:
; Embedded middleware
: Embedded middleware provides communication services and software/[[firmware]] integration interface that operates between embedded applications, the embedded operating system, and external applications.
 
===Policy Appliances===
Policy appliance is a generic term referring to any form of middleware that manages policy rules. They can mediate between data owners or producers, data aggregators, and data users. Among heterogeneous institutional systems or networks they may be used to enforce, reconcile, and monitor agreed information management policies and laws across systems (or between jurisdictions) with divergent information policies or needs. Policy appliances can interact with smart data (data that carries with it contextual relevant terms for its own use), [[intelligent agent]]s (queries that are self-credentialed, authenticating, or contextually adaptive), or [[context awareness|context-aware]] applications to control information flows, protect security and confidentiality, and maintain privacy. Policy appliances support policy-based information management processes by enabling rules-based processing, selective disclosure, and accountability and oversight.<ref>{{Citation |title=Designing Technical Systems to Support Policy: Enterprise Architecture, Policy Appliances, and Civil Liberties |date=2010 |work=Emergent Information Technologies and Enabling Policies for Counter-Terrorism |url=https://doi.org/10.1109/9780470874103.ch22 |access-date=2025-04-28 |publisher=IEEE |isbn=978-0-470-87410-3}}</ref>
 
Examples of policy appliance technologies for rules-based processing include analytic filters, [[Contextual searching|contextual search]], semantic programs, labeling and wrapper tools, and [[Digital rights management|DRM]], among others; policy appliance technologies for selective disclosure include anonymization, content personalization, subscription and publishing tools, among others; and, policy appliance technologies for accountability and oversight include [[authentication]], authorization, immutable and non-repudiable logging, and audit tools, among others.
 
===Other===
Line 94 ⟶ 96:
 
* [[Comparison of business integration software]]
* [[Middleware Analysts]]
* [[Service-oriented architecture]]
* [[Enterprise Service Bus]]
Line 109 ⟶ 110:
*[https://web.archive.org/web/20040220065312/http://www.omii.ac.uk/ Open Middleware Infrastructure Institute (OMII-UK)]
*[https://web.archive.org/web/20191213122020/https://www.srinsofttech.com/what-are-the-levels-in-the-middleware-integration.html Middleware Integration Levels]
*[http://tech.ebu.ch/docs/tech/tech3300.pdf European Broadcasting Union ([[EBU]]) Middleware report].
*[http://tech.ebu.ch/docs/tech/tech3300s.pdf More detailed supplement to the European Broadcasting Union Middleware report].
*[http://www.ow2.org/ ObjectWeb - international community developing open-source middleware]