CONTINUE TO SITE »
or wait 15 seconds

Blog

Dramatically increase a kiosk application's performance with local caching, pt I

In the first part of this two-part series we'll cover the benefits of caching data locally on a kiosk, the sort of data you'll want to cache and some helpful tips.

January 26, 2015 by Andrew Savala — CEO, KioskSimple

In the first part of this two-part series we'll cover the benefits of caching data locally on a kiosk, the sort of data you'll want to cache and some helpful tips.If a kiosk regularly synchronizes data with a remote server, you may have the opportunity to dramatically improve a kiosk's performance by making use of its local storage. 

Persistent local storage is an area where native applications have traditionally had the advantage over Web applications. There, you can reduce the processing load on the server and lower bandwidth requirements. Native applications are able to take advantage of the registry and local file system for storage, where Web applications have been relegated to usingcookies for persistent storage, which are limited to about 4K in capacity. 

In the first part of this two-part series we'll cover the benefits of caching data locally on a kiosk, the sort of data you'll want to cache and some helpful tips. In part two we'll look at a couple of cool options for persistent local storage in the Web browser.

What are the benefits of utilizing a kiosk's local storage for caching?

Anytime a kiosk needs to access an external server to complete a user's request, for example to view a product description, there will always been an added delay. The kiosk must wait for the server to respond before it can fulfill the user's request. If, on the other hand, the product description is stored locally on the kiosk, the kiosk can instantly display it, and the user can complete a transaction faster.

The three main advantages of caching data locally on a kiosk are:

1.       Increases in the responsiveness of a kiosk

2.       Reducing the load on a server

3.       Lowering bandwidth requirements

When kiosks are less dependent on constant connectivity to a server, the server will lower its workload because it won't constantly be bombarded by requests from a kiosk. Scaling kiosk deployment will be made easier, and minimize server costs. The less a server has to do, the more kiosks it can support without investing in additional processing power and bandwidth.

What sort of data should be cached in a kiosk's local storage?

The following are a few examples of data which should be cached locally on a kiosk (preferably in memory):

  • Images and video since these can be real bandwidth hogs.
  • Preliminary validation rules. This is data that allows user input to be validated before sending it to the server. This saves bandwidth and reduces the processing load on the server.
  • HTML. Modern Web frameworks make it possible to only retrieve the raw data from the Web server and render the HTML locally on a kiosk, again saving bandwidth and reducing processing load. 
  • Static reference or lookup data.  Examples include product descriptions, price lists and shipping options
  • Help documentation or large amounts of static text to save bandwidth.

Local caching tips for native kiosk applications

A native kiosk application is a software application which runs directly on a kiosk.

  • Memory cache as much as possible. Memory access provides considerably faster lookup than reading from the hard disk.
  • Caching of images and videos from the server is critical to performance. In many cases we'll retrieve the media from the server and store it to disk for long-term access, and then cache it to memory for quicker performance.
  • Cache visuals or animations that are already rendered. This helps reduce the processing load on the kiosk.
  • Update kiosk caches on a configurable staggered interval. This allows kiosks to stay current without bombarding the server for updates at the same moment and potentially overwhelming the server.

Local caching tips for kiosk Web applications

Akiosk Web application is a website that typically resides on a central Web server and is accessed via the kiosk's Web browser.

  • Cache the biggest bandwidth hogs. Images and videos fall into this category, so these should also be cached on the kiosk.
  • Update a cache in real-time with WebSockets. This HTML5 technology makes it possible for the server to reach to a kiosk's Web browser and update its cache in real-time.
  • Utilize Web frameworks that aid in client-side storage. When developing a kiosk as a Web application there are frameworks available like jQuery, AngularJS, etc., that aid in client-side storage in a transparent manner to the developer.

If you're debating between developing a kiosk application as a native Windows application vs. a Web application, you'll want to check out these helpful articles:

6 Reasons to Develop Your Kiosk Application as a Native Windows Application

5 Reasons to Develop Your Kiosk Application as a Website

About Andrew Savala

Andrew Savala is the COO of BIxby, with a background in designing and deploying payment kiosk systems. He offers consulting services to companies looking to develop their payment kiosks.

Connect with Andrew:

Related Media




©2025 Networld Media Group, LLC. All rights reserved.
b'S1-NEW'