Monday, April 7, 2008

Google Sense Toolkit: reliable client side application

The integration of Google Web Toolkit is done in sense by implementing a communication layer with JSON. This let that all the incoming request now can be response not only with XML-RPC, HTTP, Web Services, IIOP or JMS but can be done via JSON. This feature enables all the AJAX platform that would become reliable; both on the client having a client doing things asynchronous and having a high available Service infrastructure managed by sense. By implementing an offline technology such as Google Gears, lets to manage Service Level on network connection too, having an operational environment every time ready and when occasionally available (due to network instability) works with Server System such as the sense Infrastructure. Google Web Toolkit enable developers to write Client Application in Java and the to post compile them by producing Javascript. When developing with GWT, the mindset is similar to the AWT’s one; developers work only with java object and the Google post compiler generates the right code for browsers. sense is implementing the infrastructure to work with Google Web Toolkit and can generate a set of object representing the hosted Services to run at the client Side. A developer writes a Service, declares its SLA policy, and generates the corresponding code invokable in the GWT domain. sense GWT implementation bridge the communication gaps between sense and the corresponding objects on the client.

Standard Asynchronous Calls

Asynchronous Calls as AJAX identifies where the client is sending a request to sense and receive a response near-time. On the client side is easy to develop a system that uses generated sense’s stub services and use them, delegating to the system to make the call. This is normal, as GWT does; sense’s services are extended for being called from the front end and Google sense Toolkit extension provides the feature of Marshall and un-marshall calls between sense and the client. In sense each service, bizflow or Feeling has a small family of helper interfaces and classes. Some of these classes, such as the service proxy, are automatically generated behind the scenes and you generally will never realize they exist on the Client. Just bring their source while developing the client and start using it letting sense’s calls invisible. Differently than GWT requirements, sense not requires for each implementation a service implementation, just use the sense’s created service stub on the client and delegate it to the sense client library compiled as Javascript for in-browser elaboration.

Event Driven Calls

Comet like calls, where client subscribes for receiving a set of notification when available on the Server and sense notifies to the Client the proper data. Having a comet approach is easy to implements, for example, a dynamic graph that changes when something on the server changes. sense graph implementation is based on Chronoscope. The data is delivered by sense over a single, previously-opened connection. This approach reduces the latency for data delivery significantly. The architecture relies on a view of data which is event driven on both sides of the HTTP connection. It suites really well in SOA architecture where the only substantive change is that the endpoint is the browser. While Comet is similar to Ajax in that it’s asynchronous, applications that implement the Comet style can communicate the state changes with almost negligible latency. This makes it suitable for many types of monitoring and multi-user collaboration applications which would otherwise be difficult or impossible to handle in a browser without plug-ins. sense provides a Comet-ready module available to developers on the bleeding edge implementing all the best IO Patterns and Practice making Application HI Scalable. sense is making the event-driven future a present reality.

Adopting sense as High Performance Computing environment, let to be sure that everything on the server side is addressed and performance is realtime monitored. The marriage between sense and GWT and Google Gears alike technologies, shifts to another paradigm in software computing where network availability is considered as a possible system fault and managed.

No comments: