Architecture Sessions

Explore the ins-and-outs of Ajax Comet and how to deploy and scale Ajax Comet applications. See how to use existing and emerging formats built on JSON to rapidly build and consume Web services with high levels of modularity and reusability, and how to use JSON to fully interact with persistent data.

View all Architecture sessions or click a title below to read its abstract.

 

Applied JSON: HTTP REST, Ajax Databases and Beyond

with Kris Zyp, Research and Development, SitePen

JSON has proven to be a very easy to use, yet immensely powerful data interchange protocol. However, by itself JSON lacks a number of important expressibility capabilities and efficient client/server data interaction must usually be customized. This session looks at how we can use various open specifications built on JSON to standardize and automate this interaction.

We examine REST JSON, JSPON, and JSONPath. We also explore the capabilities of Ajax-accessible REST databases. The dynamic nature of non-relational databases can provide significant benefits for rapidly developing applications and providing JavaScript object persistence. Client-side code can directly participate in database interaction, simplifying the typical Web application stack. CouchDB, Persevere, and ActiveResource utilize a JSON REST interface. In this session, we learn how to interact with these simple interfaces and how to use JSONPath as a query language for JSON data stores. We see how these dynamic databases utilize JavaScript on the server for a consistent client/server JavaScript environment. We look at how Ajax databases affect security and provide an infrastructure for more secure Web applications. Finally, we cover JSON Referencing conventions as a mechanism for further expressing duplicate, circular, and cross-site referencing. Via a live demonstration, see how to use the Persevere open source tools to utilize these extensions to provide RESTful storage and server-side JavaScript.

In this session you learn how to:

  • Query JSON data with JSONPath;
  • Use Persevere to provide a powerful persistence object store for JavaScript;
  • Understand how JSON and the JSPON browser interacts with the Persevere object server;
  • Employ JSON extensions and tools to enable open communication formats that can be used for rich and robust serialized object interaction between clients and servers with full object graph descriptiveness.

 

Comet Overview

with Greg Wilkins, CTO, Webtide; Creator, Jetty Web container; Co-founder, Apache Geronimo; Contributor, Dojo cometd

This lightening talk on Comet provides an introduction to this technique for Ajax push asynchronous message delivery from the server to the client. The current state-of-the art is discussed with regards to available implementations and efforts to standardize transports, APIs and browser support.

 

Deploying and Scaling Ajax Comet Applications

with Greg Wilkins, CTO, Webtide; Creator, Jetty Web container; Co-founder, Apache Geronimo; Contributor, Dojo cometd

Ajax Comet is being used as the communication technique at the core of many new and upgraded Web applications. Ajax Comet applications are moderately easy to get working in proof of concept form. However, the issues that need to be addressed include scalability of users, throughput, security, clustering, availability, load balancing and maintainability. This tutorial looks at how these issues have been addressed with Cometd Bayeux and Jetty, and provides specific insight into these tools as well as generic experience that is relevant to all Comet infrastructures. The talk covers both architectural and design concerns.

Attend and discover:

  • Issues faced when deploying Ajax Comet applications;
  • Architectural approaches that can be used to address them;
  • Tools and techniques that can be used to address them;
  • Real world case studies of deploying Ajax Comet.

 

Enterprise Rich Internet Application Tools: JSF, Flex, and JavaFX

with Max Katz, Senior Systems Engineer, Exadel

The Web browser is not the only platform for delivering Rich Internet Applications. This session covers three different technologies and delivery platforms: JSF/RichFaces, Flex, and JavaFX.

JSF/RichFaces components allow one to easily and quickly build pure browser-based applications. Flex applications run inside a lightweight, powerful Flash player virtual machine that installs as a plug-in into any browser. Finally, JavaFX is a new open source, scripting language runs inside a familiar Java runtime environment (and soon in a lightweight consumer Java JRE). All three technologies provide different platforms for delivering next generation Web applications: the browser, Flash player, and Java virtual machine. Each should be considered by organizations. At the end of the session, we cover criteria to help decision makers identify which platform to choose.

In this session you learn:

  • The differences between JSF/RichFaces, Flash/Flex and JavaFX;
  • The pros and cons for each technology and delivery platform.

 

Highly Interactive Websites: Implementing Comet

with Joe Walker, Creator, Direct Web Remoting (DWR); Director, Support & Development, SitePen

As the Web becomes more social, things change faster. And as we implement more Ajax functionality, people stay on our pages longer. Clearly there is a growing need for a way to automatically update Web pages as they are being viewed. This session goes in-depth on how to integrate Comet into your Web sites.

In this session you learn:

  • Your options for creating highly interactive Web sites;
  • What Comet is and how it updates Web pages as they are being viewed;
  • How to add Comet functionality to your Web site with minimum pain.

 

JSON SOA-based Client/Server Application Development

with Kris Zyp, Research and Development, SitePen

JSON is rapidly becoming the standard format for data on the Web. The modularity of service-oriented architecture is demonstrating significant value in simplifying the reuse of technology and the sharing of information. With the rising popularity of mashups, the interoperability of data sources and services will become extremely significant. By using existing and emerging formats built on JSON for defining Web services, we can rapidly build and consume Web services with high levels of modularity and reusability that can be provided by SAO and JSON in a Web environment.

Learn how to use the tools of JSON Web services, including Service Mapping Description (SMD) and JSON Schema, to quickly integrate JSON sources and develop applications using decoupled services for scalable high-performance standards-based client server applications. This session demonstrates how to create an application using Dojo by quickly plugging in dojo.data storage and dojo.rpc service components and using standard REST and JSON-RPC communication with a Persevere storage and JavaScript server. JSON-based storage and RPC services can easily be wired to client side code with SMDs, and you see how Comet capabilities can easily be included to provide real time views of data. Using open service definitions and standards-based data communication allows client and server components to easily be interchanged without client/server lock-in. We examine scalability benefits of using JSON REST services and RESTful application state management. We also look at best practices for access control and security in developing Web client/server applications.

In this session you learn how to:

  • Rapidly develop database/CRUD applications using open Web technology;
  • Leverage multiple technologies with standards-based communication for high levels of interoperability and flexibility in application development;
  • Build safe and scalable client server Web applications.