bemokoLive Deployment Options
From bemoko developer wiki
Introduction
There is a lot of flexibility in how bemokoLive can be deployed. These options provide you with the ability to get the bemokoLive benefits with minimal impact on your side. You can also think of these options allowing you to rapidly prototype an idea or to transition your current deployment architecture, by starting with one option with the plan to move to another.
Note: If you want the quickest way to get started with bemokoLive, see Installing Tomcat with bemokoLive in 5 minutes.
How can bemokoLive fit in with your architecture?
Rendering as a Platform
This is the standard configuration for the system. The bemokoLive platform runs as a normal web application in a J2EE application server such as Tomcat.
The typical configuration normally has the Tomcat server fronted by an Apache server, although Tomcat can be the first entry point if required.
The bemokoLive software is packaged as a complete WAR file and requires no other system dependencies for a system already running Tomcat.
A device connects to the bemokoLive web application which renders the site using the plugins and the Uis. More details on how bemokoLive works and the benefits of the solution can be found @ Solution & Benefits.
- Example usage:
- You are developing (or prototyping) a new site or perhaps building on top of one of the existing bemokoLive white label sites. You may have access to content and business logic via existing APIs, configuration files or content repositories. On the other hand, you may be wanting the freedom of implementing the site logic from scratch or from existing site plugins.
- Advantages
- Simple architecture, full control to access content from anywhere and code what you need.
- Optimised for performance
- Deployment
- Deployed as WAR into a Java application server
Rendering as a Proxy
Device connects to bemokoLive and subsequently makes an HTTP request to the content source.
- Example usage:
- You already have an existing web site that are using to deliver to the PC. You want to deliver a ready for mobile site without any further development work to your PC site and leave the PC delivery untouched. see Semantically Tuning a Web Site on best practices for your web site to make this easy.
- Advantages
- Minimal impact on your existing PC site.
- Limitations:
- Mobile web site served from a different URL to you PC web site.
- Deployment
- Deployed as WAR into a Java application server
- The "adapt pc site" addon demonstrates such a deployment
Rendering as a Web Service
Web site application passes content to bemokoLive over HTTP which subsequently returns the device optimised markup ready for delivery to the device.
- Example usage:
- Your application is currently delivering a web site to the PC, but you have an opportunity in your application, e.g. a servlet filter in a Java EE stack, to transform the markup prior to delivering to the device. see Semantically Tuning a Web Site on best practices for your web site to make this easy.
- Advantages:
- Minimal impact to your existing PC markup.
- Your application can maintain control of all delivery to all devices from a single URL endpoint - including any security measures that you have in place.
- Limitations:
- You need to be able to hook the bemokoLive web service rendering into one of the final steps prior to delivery to a device.
- Deployment
- Deployed as WAR into a Java application server
- The "adapt pc site" addon demonstrates such a deployment
- Your existing Java EE application includes the bemokoLive libraries (i.e. JARs) and includes the Content Transformer Servlet Filter in the servlet filter stack.
Rendering as a Native API (Roadmap)
This deployment is not currently available, however is in the bemokoLive roadmap
Web site application uses bemokoLive API to (1) select the appropriate local UI pages (e.g. the ones that contain HTML) and (2) optimise and tweak the final makup for the device.
- Example usage:
- Your application is currently delivering a web site to the PC, but you have an opportunity in your application to integrate the bemokoLive APIs mentioned above
- Advantages:
- You can design a mobile ready application from ground roots to give you full control of the user experience across all devices.
- Optimised for performance
- Limitations:
- bemokoLive is dependent on an existing web delivery framework being in place.
Further Reading
- Environment Support - overview on which 3rd party platforms (e.g. OS and application) are supported
- bemokoLive Content Source Options
