Bambookit's vision is to deliver the Bambookit Platform, which will offer enterprises a revolutionary and powerful way to deliver interactive, feature rich, real-time applications over the web.
Bambookit has already produced a java-based framework, an ultra light "thin Client" that relies on Open XML standards.
Our commitment is to deliver a flexible solution that can be applied to a wide variety of business applications,
Web Services and mobile devices.
We are committed to deliver the following features:
- Server side components to enable real-time multicast connectivity. Below is a technical description of how this solution will be architectured.
Real time updates will require that both the PHP script AND the Bambookit client keep an open connection via HTTP.
HTTP connections are scare resources. You may have noticed that certain client machines the browser places a limit (2 or 4 connections) on how many HTTP it can open simultaneously. This is evident when trying to download multiple programs from a given download site through your web browser. By the 3rd or 5th download it just hangs until another connection opens up)
Thus it is very easy to create 2 open connections and lock out any further updates to the browser (the browser will just hang and eventually time out without ever being able to establish a connection to the server).
Thus it would be imperative that only a single OPEN connection be made. This would be referred to as a system wide SINGLETON. That would be almost impossible to maintain if each new browser instance starts up a new VM instance. The assumption being that each browser will not spawn additional java VM instances.
Once a constant open connection is established with a given script on the server side then we can query this script to get the data that we may need. This script will act as a proxy script passing on requests to other scripts before sending the respond back to the client request. The client that actually keeps the connection open also acts to a certain degree as a proxy since it is keeping the connection open on behalf of the other widgets whenever they need additional views or scripts to execute.