Browse Definitions :
Definition

stateless app

What is a stateless application?

A stateless app is an application program that does not save client data generated in one session for use in the next session with that client. Each session is carried out as if it was the first time and responses are not dependent upon data from a previous session.

In contrast, a stateful application saves data about each client session and uses that data the next time the client makes a request. The term stateless also is used in connection with networking, particularly when applied to stateless firewalls.

When an application is stateless, the server does not store data or other information about the client session. Instead, the session data is stored on the client and passed to the server as needed. This is an important consideration when developing apps with offline first in mind.

With an online first approach to software development, session data is stored locally on the user's device when internet connectivity is unavailable. It is then uploaded and replicated in the cloud when a connection becomes available.

The importance of stateless technology

The distributed architecture that makes horizontal scalability possible in cloud computing has driven renewed interest in stateless apps and stateless app components. There are two reasons for this:

  1. When an app's components are stateless, they can easily be redeployed in the event of a failure and scaled out to accommodate workload changes.
  2. When apps are stateless, they can easily be connected to other apps through application programming interfaces, or APIs.

Functional programming, which is often used for microservices and containerization, has also driven interest in stateless apps. It's an approach to software development that uses small segments of immutable code. Each function executes its task as if it is for the first time and is aware of, but not dependent upon, other functions in the program. Because all the program's parts are stateless, programmers can assemble functions in multiple ways without worrying about dependencies breaking the program.

Stateful vs. stateless applications

Most applications in use today are considered stateful. However, the use of stateless applications is increasing. The popularity of cloud services, microservices and containers are driving this trend.

Without access to user data as is the case with stateless apps, there is greater dependence on clients to have the power to acquire the necessary state data and link it with stateless apps when needed. Cloud services have the computing resources needed to easily accommodate stateless apps.

Nevertheless, stateful apps remain popular. Several factors are behind their continued use:

  • Users can return to them frequently because all relevant data about the user is contained in the app.
  • They typically use the same server for processing user requests.
  • If a session is interrupted, it can be easily returned to its previous status.

Another reason for the popularity of stateful services and apps is their ability to use of databases and servers to supplement user data storage. As a result, they interact quickly with users and make efficient use of computing power.

Stateless applications are typically compatible with User Data Protocol, Domain Name System and Hypertext Transfer Protocol. Stateful apps are compatible with fiber to the premises and Telnet protocols, among others.

Stateless apps and containers

Providers initially envisioned containers as supporting stateless applications. However, over time the trend has been for containers to support both stateless and stateful applications. This is important because microservices and cloud computing continue to grow in popularity.

Packaging all relevant components within a container makes it easy to move from one environment to another. This is where microservices and cloud services are appropriate platforms.

Pros and cons of stateless apps

There are advantages and drawbacks to using stateless applications:

Advantages

  • Improved reliability. It's easy to recover from failures and offer high availability capabilities because no state data is maintained.
  • Ease of server flexibility and scalability. No session-related data is stored on a device, and the app can be moved to alternate servers.
  • Reduced need for system resources. This is because systems do not need to track prior transactions and related session data.
  • No communication among sessions. Communication isn't needed either before or after a session.
  • Packet independence. Each stateless packet transits the network on its own and is independent of any other packets.

Drawbacks

  • More server processing cycles. Additional server processing cycles are needed to process requests because the data to process them is new and not previously processed.
  • Reduced network performance. The number of requests needed in a session is often greater, thus requiring additional network bandwidth.
  • Slower performance. Processing performance might be slower because no prior session data is available to support the new session.
List of stateless applications pros and cons
Stateless applications have numerous advantages, but they also have some drawbacks.

Examples of stateless apps

Stateless applications are used in several ways:

  • Performing an online search. Each query is treated as a unique activity. If the session request is broken, it must be restarted from scratch.
  • Vending machines. Each transaction is unique and is not linked to prior or future transactions.
  • This is a stateless service, in that information regarding the user's activity must be stored on the user's laptop or mobile device.
  • Short Message Service (SMS). With SMS, a sender transmits a message to a specific user but receives no formal confirmation of message delivery. The sender may send follow-up messages, yet with no confirmation. This differs from email, where a return receipt confirmation message can be requested.

Learn more about state and the concept of change in modern application design.

This was last updated in December 2022

Continue Reading About stateless app

Networking
Security
  • cardholder data (CD)

    Cardholder data (CD) is any personally identifiable information (PII) associated with a person who has a credit or debit card.

  • CSR (Certificate Signing Request)

    A Certificate Signing Request (CSR) is a specially formatted encrypted message sent from a Secure Sockets Layer (SSL) digital ...

  • authentication factor

    An authentication factor is a category of credential that is intended to verify, sometimes in combination with other factors, ...

CIO
  • corporate social responsibility (CSR)

    Corporate social responsibility (CSR) is a strategy undertaken by companies to not just grow profits, but also to take an active ...

  • knowledge-based systems (KBSes)

    Knowledge-based systems (KBSes) are computer programs that use a centralized repository of data known as a knowledge base to ...

  • Sarbanes-Oxley Act

    The Sarbanes-Oxley Act of 2002 is a federal law that established sweeping auditing and financial regulations for public companies.

HRSoftware
  • employee engagement

    Employee engagement is the emotional and professional connection an employee feels toward their organization, colleagues and work.

  • talent pool

    A talent pool is a database of job candidates who have the potential to meet an organization's immediate and long-term needs.

  • diversity, equity and inclusion (DEI)

    Diversity, equity and inclusion is a term used to describe policies and programs that promote the representation and ...

Customer Experience
  • customer touchpoint

    A customer touchpoint is any direct or indirect contact a customer has with a brand.

  • customer service charter

    A customer service charter is a document that outlines how an organization promises to work with its customers along with ...

  • sales development representative (SDR)

    A sales development representative (SDR) is an individual who focuses on prospecting, moving and qualifying leads through the ...

Close