Distributed Service Programming and Interoperability

Author(s):  
José C. Delgado

The Web started as a means to navigate in hypermedia documents but has evolved to a pervasive Web of Services, raising distribution and interoperability problems. Web Services appeared as a solution but have grown to become a complex technology, leading many web application providers to adopt a much simpler architectural style, REST. Each style has advantages and disadvantages. As always, the trick is to learn from both sides and to use a flexible technology that can adapt and support both styles. This chapter establishes a model, based on resources, services, and processes, and discusses the various possible combinations, putting the current architectural styles into perspective. Based on this, this chapter proposes one single language to support several levels that are currently implemented in separate technologies: data (including schema, usually described in XML or JSON), interface (WSDL for Web Services and HTTP verbs for Restful applications), and behavior (usually done in BPEL or in a general programming language).

Author(s):  
José C. Delgado

Current integration solutions are still based on technologies developed for the original Web problem, which is browsing remote hypermedia documents with text as the main media type. Text-based data descriptions such as XML and JSON and stateless and connectionless protocols such as HTTP are still the norm to achieve distributed integration. However, the Web today is much more dynamic, in that resources are no longer passive hypermedia documents but are active and implement services. SOA and REST are the most used architectural styles to implement distributed integration, and each exhibits advantages and disadvantages. This chapter illustrates that they are dual architectural styles—one oriented towards behavior and the other towards state—and contends that it is possible to combine them to maximize the advantages and to minimize the disadvantages. A new architectural style, designated Structural Services, is proposed and described. Unlike REST, resources are able to offer a variable set of operations, and unlike SOA, services are allowed to have structure. To minimize resource coupling, this style uses structural interoperability based on the concepts of structural compliance and conformance, instead of schema sharing (as in SOA) or standardized and previously agreed upon media types (as in REST). To delineate how this style can be implemented, a new distributed programming language is presented.


Author(s):  
José Carlos Martins Delgado

The Service-Oriented Architecture (SOA) and Representational State Transfer (REST) architectural styles are the most used for the integration of enterprise applications. Each is more adequate to a different class of applications and exhibits advantages and disadvantages. This chapter performs a comparative study between them. It is shown that SOA and REST are dual architectural styles, one oriented towards behavior and the other towards state. This raises the question of whether it is possible to combine them to maximize the advantages and to minimize the disadvantages. A new architectural style, Structural Services, is proposed to obtain the best characteristics from SOA and REST. As in SOA, services are able to offer a variable set of operations and, as in REST, resources are allowed to have structure. This style uses structural interoperability, based on structural compliance and conformance. A service-oriented programming language is also introduced to instantiate this architectural style.


Author(s):  
José C. Delgado

Web Services appeared essentially as an interoperability solution and REST as a closer match to the semantics of protocols such as HTTP. Clearly influenced by the original browsing goals of the Web, these technologies are not native solutions to the service-oriented paradigm, exhibit limitations to interoperability, and behavior has to be implemented in a separate language. Web Services offer a WSDL document to describe them, but assume that complex data use the same schema in both interacting services, which increases their coupling. This chapter discusses interoperability, from the perspective of both the consumer (compliance) and provider (conformance) services, and it argues that compliance is a weaker requirement for service interoperability than conformance and should be the cornerstone to decrease coupling and to favor adaptability. Structural interoperability is used, given that the lifecycles of distributed resources are decoupled. Metrics to quantify adaptability, based on similarity and decoupling, are proposed.


Author(s):  
Kamel Karoui

With the interconnection of computers in networks, particularly through the Internet, it becomes possible to connect applications on distant computers. An application works perfectly whether it isdistant or local. Moreover, a distant applicationallows us to benefit from the following additional advantages: • Data and processes can be stored on a remote server that has a bigger storage capacity than the local host. Data can be shared between users using, for example, Remote Procedure Call (RPC), Remote Method Invocation (RMI), Java Message Service (JMS), and Enterprise JavaBeans (EJB) (Frénot, 2000): • Distant application can be used at the same time by several users; • Updating data and processes can be done only in one host; • Flexibility on distribution of the load: An application can be executed on the available machine; and • High availability: A faulty machine does not affect the others. Many approaches have been proposed and developed for communication between distant hosts on a network such as Message Passing (MP), Remote Evaluation (REV), Remote Object Invocation (ROI), Mobile Agents (MA), Common Object Request Broker Architecture (CORBA), Web Services (WS), RPC, and RMI (Dejan, LaForge, & Chauhan, 1998). In this article, we will focus on two particular paradigms: The Web Services and the Mobile Agents. WS defines a standard to invoke distant applications and to recover results across the Web. Its invocation is made in synchronous mode. MA has the faculty to move easily between a network’s hosts to execute user requests. MA communication is made in asynchronous mode. The fusion of these two complementary technologies will solve many problems. This article is composed of the following sections: In the first two sections, we introduce the concepts of WS and MA, their advantages and disadvantages. In the third section, we present different kinds of interaction between MA and WS. Finally, we study an example in the last section.


Author(s):  
Gregorio Rodríguez-Miranda ◽  
Rene Santos-Osorio ◽  
Carmen Sarahí Ordaz-Banda ◽  
José Armando Lopez-Rivera

In this work it present the development of a prototype for the control of spaces in a parking lot, which through a web page monitors and displays in real time the available places, for this project it is used: an Arduino Uno card, proximity sensors Lm393, male / female, male / male cables, ESP8266 WIFI module and two LEDs; all these connected to each other by a communication link developed with Arduino code, allowing to transmit and send data in the Arduino serial. An Arduino serial communication link is made with java language code, acting as an intermediary for the insertion of information in the database. The web application was developed with the programming language PHP and HTML and was connected to the database hosted on the MySQL server, using as a Sublime Text code editor. Thus achieving on the web page the monitoring in real time of the available parking places. The results shown by the prototype indicate that it is probably feasible to implement this technology to make the parking lots smart.


Undeniably the most favored web scripting language is PHP. Almost 80% of the internet’s server-side web applications are written in PHP which includes big giants like WordPress, Wikipedia, and Facebook. In present-day, at an accelerating pace, the quantity of digital content is burgeoning. A heterogeneous set of users' devices is being amassed by these contents and administering these contents manually is an infeasible solution engendering an increasing set of problems. A solution to this problem would be to switch to a web programming language, which can be compiled. We are describing an easy to deploy and a continuous conversion mechanism for converting existing Web 2.0 PHP application systems into Facebook’s HHVM supported Hack server-side application systems. We are trying to use the power of Hack language and amplify the performance of existing PHP server-side applications. Instead of interpreting all of your code Hack translates it to assembly and runs that instead, which can lead to an immense amount of increase in performance. We are using Hacktificator, a tool developed by Facebook Developers and our demo web application running on HHVM to test and convert user’s existing PHP codebase to Hack language. With this proposed methodology we do not have to make any change to existing codebase manually or hire new engineers for the conversion, nor do we have to take down our live systems. Conversion can be done on the fly and will result in approximately 2x to 20x better performance. The availability of this tool can save costs for manual conversion, save time as well as improve the user experience of websites with better performance


Author(s):  
José Teodoro Mejía Viteri ◽  
María Isabel Gonzáles Valero ◽  
Ángel Rafael España León

The access to the public and private services through the web gains daily protagonism, and sometimes they must support amounts of requests that a team can not process, so there are solutions that use algorithms that allow to distribute the load of requests of a web application in several equipment; the objective of this work is to perform an analysis of load balancing scheduling algorithms through the HA-Proxy tool, and deliver an instrument that identifies the load distribution algorithm to be used and the technological infrastructure, to largely cover implementation. The information used for this work is based on a bibliographic analysis, eld study and implementation of the different load balancing algorithms in equipment, where the distribution and its performance will be analyzed. The incorporation of this technology to the management of services on the web, improves availability, helps business continuity and through the different forms of distribution of the requests of the algorithms that can be implemented in HA-Proxy to provide those responsible for information technology systems with a view of their advantages and disadvantages.


2021 ◽  
Vol 2094 (3) ◽  
pp. 032016
Author(s):  
D V Kornienko ◽  
S V Mishina ◽  
S V Shcherbatykh ◽  
M O Melnikov

Abstract This article discusses the key points of developing a secure RESTful web service API for keeping a student achievement journal. The relevance of using web services has been analyzed. The classification of web applications is given. The features of the Single Page Application architecture were considered. Comparative characteristics of architectural styles of application programming interfaces are given. Requirements to be met by RESTful API services are considered. The basic principles of API security were analyzed. A list of the main vulnerabilities that may appear during the development of the REST API is given. An overview of popular authentication schemes (methods) is given. Comparative characteristics of web frameworks of the Python programming language are given. The main tools used in the development of web API applications are listed. The process of creating a secure prototype of a RESTful web service API in Python using the Flask microframework and a tool for describing the Swagger specifications is presented. The process of configuring the application was examined in detail. The main recommendations for securing a web application, database and web server settings are listed. The key points of ensuring the protection of the developed web application are considered. The results obtained were analyzed.


2018 ◽  
Vol 7 (3.33) ◽  
pp. 183
Author(s):  
Sung-Ho Cho ◽  
Sung-Uk Choi ◽  
. .

This paper proposes a method to optimize the performance of web application firewalls according to their positions in large scale networks. Since ports for web services are always open and vulnerable in security, the introduction of web application firewalls is essential. Methods to configure web application firewalls in existing networks are largely divided into two types. There is an in-line type where a web application firewall is located between the network and the web server to be protected. This is mostly used in small scale single networks and is vulnerable to the physical obstruction of web application firewalls. The port redirection type configured with the help of peripheral network equipment such as routers or L4 switches can maintain web services even when physical obstruction of the web application firewall occurs and is suitable for large scale networks where several web services are mixed. In this study, port redirection type web application firewalls were configured in large-scale networks and there was a problem in that the performance of routers was degraded due to the IP-based VLAN when a policy was set for the ports on the routers for web security. In order to solve this problem, only those agencies and enterprises that provide web services of networks were separated and in-line type web application firewalls were configured for them. Internet service providers (ISPs) or central line-concentration agencies can apply the foregoing to configure systems for web security for unit small enterprises or small scale agencies at low costs.  


Author(s):  
Duy Ngan Le ◽  
Karel Mous ◽  
Angela Goh

Web services have been employed in a wide range of applications and have become a key technology in developing business operations on the Web. In order to leverage on the use of Web services, Web service operations such as discovery, composition, and interoperability need to be fully supported. Several approaches have been proposed for each of these operations but these have advantages and disadvantages as well as varying levels of suitability for different applications. This leads to a motivation to explore and to compare current approaches as well as to highlight problems of the operations and their possible solutions. In this chapter, an introduction, a brief survey, problems and possible solutions to the three Web service operations mentioned above are discussed. The research opportunities and possible future directions on Web service are also presented.


Sign in / Sign up

Export Citation Format

Share Document