With Track Host: Eugene Ciurana, Director of Systems Infrastructure, LeapFrog Enterprises
The Visionary is a track devoted to the demands and requirements specific to the Architect's role. This track covers the latest ideas in architecture, and will show you how to achieve your main objective (maintaining an overall perspective of the entire system) while keeping up with industry innovations that can help you address end user demands. Hear which architectural decisions work best for today's applications; Go in-depth on essential SLA topics, like performance, logging, tracing, tooling, methodologies; Learn how to handle SLA failures; Get real world examples of how to architect, design and code for grids; and more. Browse all of the architecture sessions or choose a session title below:
More architecture-related sessions we recommend.
• Building an Intranet Portal: Web Content Management & Integration with Shane Johnson, Senior Consultant, CityTech, Inc.
This session will address the emergence of Web content management applications. There is tremendous growth in this area, as traditional ECM companies move quickly to add WCM and new companies arise who specialize only in WCM. While many WCM applications are built in a standalone fashion, few are being integrated into portals.
Using the City of Chicago’s Intranet Portal as the case study, this session will cover portal architecture and integration with a Web content management system. In addition, the session will cover portal integration with a search engine and existing applications. Integration approaches will include WSRP via a service bus and registry, JDBC, and HTML rewriting.
In this session, you will learn:
• How to integrate a portal with a Web content management system;
• How to integrate a portal with existing applications via WSRP;
• Conceptually how to build an intranet portal;
• How to handle search with a Web content management based portal;
• The importance of information architecture;
• The business processes involved in putting together an intranet portal;
• Examples of what to put in an intranet portal.
• Building High-Availability Architectures on Amazon EC2: A Pramati Case Study with Jinesh Varia, Evangelist, Amazon Web Services and Venugopal Sharma, Principal Engineer, Pramati Technologies
Amazon Elastic Compute Cloud is a true virtual computing environment that allows you to use Web service interfaces to requisition machines for use, load them with your custom application environment, manage your network's access permissions and run your image using as many or few systems (instances) as you desire. Its potential is realized when smart developers take advantage and build high-available industrial-strength production services and products on top of it.
In this session, you will learn how Pramati Technologies built a powerful Web-desktop platform, Dekoh, that allows its users to run Web applications in offline mode (using a small footprint Web application server), and run custom built applications that interact with social networks.
In this session, you will learn:
• How to quickly put an application in production mode without worrying about bottlenecks of the underlying server resources;
• How Amazon EC2 allows you to can scale up and down by adjusting network topology based on the elastic usage patterns of consumer apps;
• Design secrets and best practices on how to build highly-available architectures on the Amazon EC2 environment;
• How to build your own framework on Amazon EC2.
• Delivering State-of-the-Art Voice Services with Tracy Snell, CTO, Interactions
Human-assisted technologies are becoming more and more prevalent - Services such as ChaCha’s assisted search, Amazon’s Mechanical Turk and Interactions's Human Assisted Voice Services all use humans behind the scene to provide a service to the user.
Maintaining a conversational system with Java requires focusing on garbage collection, network latency and processing time - Adding humans into the system requires close attention to user interface design and creates unique architectural and human factors issues. This session looks at the architecture behind a system that delivers real-time voice services, with humans providing one of the services, and offers strategies for integrating non-traditional approaches into a complex system.
In this session, you will learn how to:
• Deliver state-of-the-art voice services utilizing a hybrid computer/human approach;
• Build a complex real-time distributed Java-based service;
• Handle the complexities of delivering real-time voice system with humans providing one of the services.
• eBay Marketplace Architecture: Architectural Strategies, Patterns, and Forces for Scaling Java with Randy Shoup, Distinguished Architect, eBay Marketplace Architecture
Websites, services, and enterprises are increasingly faced with growing demands – More users, more traffic, more data. Learning principles and patterns for scaling helps architects and developers in those organizations meet and exceed those demands.
This session covers the fundamental architectural principles eBay has used to grow and evolve its Java-based infrastructure to a massive scale. It covers the forces (or “-ilities”) architects need to contend with and design for – scalability, availability, manageability, etc. - and outlines eBay’s core set of architectural strategies which meet – and trade off – those forces. This session offers reusable patterns for each strategy, and provides specific examples from the eBay infrastructure to illustrate the patterns in action.
In this session, you will learn:
• A set of techniques and principles to massively scale Java-based architectures;
• Forces involved at massive scale;
• How to make explicit tradeoffs among the forces involved in scaling;
• Specific scaling patterns.
• Self-Scaling Java-Based Architectures In-the-Cloud with Jinesh Varia, Evangelist, Amazon Web Services
One new way to architect your applications is to build it "in-the-cloud" - Keeping your components loosely coupled and independent to each other, and therefore able to scale well. For building architectures in-the-cloud, many developers use multiple Amazon Web Services, for example an array of Amazon Elastic Compute Cloud (Amazon EC2) instances tied together with a bunch of Simple Queue Service (Amazon SQS) message queues, reading and writing data to Amazon Simple Storage Service (Amazon S3).
Combining the power of this basic infrastructure setup with open source distributed processing frameworks like Hadoop gives ordinary developers the power to do extraordinary things. Hadoop is a framework that allows computation of large datasets by splitting the dataset into manageable chunks, spreading it across a fleet of machines and managing the overall process by launching jobs, processing the job no matter where the data is physically located and, at the end, aggregating the job output into a final result.
Amazon Web Services’ Alexa Web Search Service uses a similar architecture and Hadoop framework in production. Developers are now able to run a small regular expression over millions of documents crawled by Alexa and filter the search results, in a cost-effective manner and get back the results in minutes.
In this session, Jinesh Varia will share some of the architectural insights, benefits and best practices of this Self-Scaling Java-Based Architectures in-the-Cloud.
In this session, you will learn:
• How to run a small regular expression over millions of documents crawled by Alexa;
• How to filter the search results;
• How to deal with large amounts of data, by splitting it for computation and aggregating the output into a final result.
• Single Sign On Methodologies and an Implementation with Justen Stepka, Project Manager, Atlassian
Implementing a security framework is a common and cumbersome integration task necessary for any enterprise application. A mountain of choices are available: OpenID, SAML, oAuth, Spring Security, rolling your own, and various commercial implementations.
This session will explore these major security frameworks and provide implementation examples, benefits and findwalls of each technology. The second part of this presentation will offer a case study on how LeapFrog (NYSE: LF) implemented Atlassian's Crowd SSO server to make legacy user accounts available online, using Mule as a service bus between the various technology stacks already in place.
The lessons learned from this presentation will allow developers to best choose a security framework, regardless if the system is new or old.
In this session, you will learn:
• What security technologies to use - When and why;
• How SSO works;
• What options you have for SSO;
• What OpenID and oAuth are;
• How others are implementing their new and legacy systems with the currently available security frameworks.
Recommended general knowledge:
• Spring
• LDAP
• SOAP / Web services
• Son of SOA: Resource-Oriented Computing and Event Driven Architectures with Eugene Ciurana, Director of Systems Infrastructure, LeapFrog Enterprises
Application development and deployment using SOA faces problems when organizational changes occur if the participating systems (service providers and consumers) are too tightly coupled. In SOA, messages and systems are inherently synchronous, promoting dependencies that filter to the organizational level.
Resource-Oriented Computing solves system and application integration issues by leveraging ESB, domain-specific languages, and shared memory mechanisms for integrating coupling points, not the applications themselves, by promoting event-driven interactions between system components, and by creating logical mappings of resources such as data or computations that are abstracted from the physical manifestation of the system deployment.
In this session, you will learn:
• How resource-oriented computing systems process resource representations and execute transformations and computations by defining processing in terms of compositions and asynchronous sequences of resource requests;
• How to develop complex applications within very tight deadlines by formalizing system integration around a resource-oriented model;
• How to turn SOA-based systems into callbacks, breaking the rigid provider/consumer model;
• How to develop event-driven applications based on technologies and services already in production using a multi-language approach;
• How to integrate the existing applications by applying event-driven rather than centralized control techniques;
• How to extend SOA beyond transactions to include workflow processes and lossless transformations of resources from one representation to another;
• Real world applications that use Mule ESB, OpenSpaces, Terracotta and OSGi;
• Examples of architecture, service objects, configuration files;
• Approaches to solving distributed data caching.
Recommended general knowledge:
Enterprise service bus, distributed data caching technologies, enterprise integration patterns and SOA, domain-specific language basics.
• Spring Portfolio: New and Notable with Rod Johnson, Spring Framework founder, Author, Expert One-on-One J2EE Design and Development & J2EE without EJB
In this session, Spring founder Rod Johnson will introduce attendees to recent major code releases in the Spring Portfolio that aim to provide Java developers with even greater simplicity and power.
In this session, you will learn:
• To build, run and manage POJO-based business applications;
• Multiple configuration options in Spring 2.5;
• Dynamic Spring module loading for OSGi with Spring DM 1.0;
• Enhanced Web application features in Spring MVC;
• Improved capability and ease of use in Spring Security 2.0;
• How the new Spring Integration project represents a step forward for POJO-based integration.
• The Scalability Pitfall of the Real-Time Web (And How to Fix It) with Jonas Jacobi, CEO/co-founder, Kaazing Corp. and John Fallows, CTO/co-founder, Kaazing Corp.
The most important recent change to the Internet is the rise of the event-driven Web. With an event-driven Web, developers can now initiate messages and events on the server and deliver them to a Web client - any type of Web client, including mobile clients like the iPhone - without the need for browser plug-ins and traditional polling. This development approach, which enables end-users to receive streams of data in real-time, is extremely compelling for solutions such as online financial trading and analytics.
In this session, we will focus on the pitfalls related to an event-driven model for the Web such as connection limitations, network flooding, and scalability. We will also discuss what architectural options are available to address these concerns.
Techniques and technologies covered in this session includes among other things, Comet/Push implementations, Asynchronous Request Processing (ARP), and Java/JMS.
In this session, you will learn:
• Where the concept of event-driven Web came from;
• Details on the technologies and specifications behind event-driven Web;
• When and where to use event-driven Web;
• How to deploy and properly scale out a real-time development solution;
• What pitfalls to expect, and how to address them.
• Expert Panel: MapReduce: Why Does It Matter? Moderated by Track Host, Eugene Ciurana
MapReduce is moving from research labs into mainstream computational applications. After Google invented it, other companies have been adopting it at an accelerated pace since its inception in 2004.
MapReduce is a technique for indexing large data sets in an efficient, cost-effective way by building multi-processing into the hardware infrastructure. It separates parallel processing logic from business logic, making it very easy to extend searches for new applications at a low cost. MapReduce relies on the use of many commodity systems for its processing, and can be coded in Java, Groovy, and many off-the-shelf open-source tools. MapReduce may lessen the Java infrastructure and application development groups dependencies on database architects and administrators when developing and deploying computationally-intensive search and indexing operations.
This panel will discuss what it is, why it matters, when it should be applied, when it should be avoided, and how to build infrastructure to support this technique.
In this session, you will learn:
• What MapReduce is, and how it compares against traditional indexing techniques;
• Cost/performance advantages of MapReduce;
• When to apply and when to avoid MapReduce;
• How to create MapReduce infrastructure using off-the-shelf, open source products;
• About Hadoop, the open source MapReduce framework;
• How to balance open source and commercial frameworks for your deployment;
• How to evaluate the cost/advantage vs. RDBMS techniques;
• How to scale the application.
Recommended general knowledge:
• Terracotta or other distributed caching system
• Enterprise service bus
• Functors
• Basic server administration and optimization