BBVA API Market
All applications can be divided into their frontend and backend; in other words, what a user can see and cannot see. With the arrival of mobile devices, what is certain is that the frontend can now be a website or an app.
It is essential that the frontend should be intuitive, interactive, light and reactive. Many packages have been created to achieve this aim: Angular, Ember, Polymer and React. The model proposed is very simple: generate extensible and reusable components to develop complete applications piece by piece.
The new frontend model demands data continuously from the backend, which must be adapted to this constantly evolving environment. Work is now being done to develop the new frontend generation. The backend, which the user does not see, tends to be much more complex, as it can include old applications that must work with the new ones, public data that mix with private, etc.
Various proposals are emerging to improve this process, such as to use a microservices architecture in which each piece in the frontend communicates with an isolated part of the backend, with all its processes and data. It is an attractive proposal that reduces complexity, but involves redesigning and re-implementing much of the application, so it is not always viable.
Guillem Borrell has developed a different proposal: Pylm, the PALM implementation in Python. It is a library that generates components that communicate with each other to construct an application. It would be equivalent to having a machine capable of creating our own Lego pieces and then constructing a toy.
PALM has been designed to implement applications that receive requests via the Internet and must carry out complex and heavy calculations. PALM simplifies the process by offering patterns for generating each of the pieces (the master, slaves, web server, etc.) and connect them to each other.
One of the features of Pylm is its extensibility. In one of the first projects in which it has been used, an application that analyzes the risks associated with failures in industrial facilities, the communication flow was particularly exotic.
Based on a start message and configuration, the master sent a message to any slave, which could return one or more messages to the master, which in turn distributed more load, returning it to the slaves. In addition, most of the code written in C++ had to be recycled. Traditionally these types of application use message queues (ZeroMQ or RabbitMQ) and are implemented ad-hoc, but with Pylm the master that controls the flow of messages was configured in less than an hour using pieces already available.
Although the main aim of PALM is versatility, performance has not been forgotten. It has been used in an application as an alternative to Spark to implement a system of load balancing and the performance of Pylm was shown to be slightly better, with a shorter development time.
Some of the components of Pylm are being used in proprietary solutions by NFQ Solutions for financial risk analysis. It is free software and its first public version has recently been presented in Almeria at the last national Python conference.
QR code payment is an alternative form of mobile payment that requires no card chip or NFC technology: just a camera and an internet connection Payments with a QR code are increasingly popular among younger consumers and tourists, as well as one of the most demanded forms of payment, especially by Chinese visitors to Spain. […]
Digital banking or electronic banking is the future of the banking sector, with more and more functionalities and possibilities Digital banking, the virtual and infrastructure transformation of banking telecommunications, is increasingly used. Its ubiquity, accessibility, speed, availability, security and the diversity of available functionalities have clearly attracted users. What is digital banking? What are its […]
ST APIs are an example of an API development architecture increasingly used within companies, partly due to the separation between client and server, the process scalability and reliability, and the low number of resources required by the system. What is a REST API and what architecture examples are available to companies? What can an API […]