Unified Architecture & Integration

One of the key things to remember when planning the launch of a new Web application is who will be accessing this application, and with what type of client. Over the past 2 years mobile platforms such as the iPad and iPhone has taken over as the leaders in accessing Web content. The expected growth in users connecting to the Web over the next 4 years are staggering with numbers ranging in the 10’s of billions of devices connecting to a service somewhere on the Web. If we then take in consideration that the currently available Web infrastructures are all based on, in technology terms, ancient technologies and architecture designs then we are clearly heading for a disaster. These legacy systems were never designed for the performance and scalability demands required by the new generation applications that are accessed at anytime and anywhere, from any device.

Unified Architecture

Freedom of Choice

One of the key design principals of Kaazing's solution is simplification and unification. We believe that as a developer and customer you should have the freedom to choose what client technology fits your business best without fear of being locked in to a technology that in the future may not be around (interesting read), or force you to choose multiple different architectures to address the same business needs for multiple client technologies. Kaazing WebSocket Gateway offers a unified architecture and is designed in such a way that as long as your client can "speak" the standard WebSocket protocol you can choose whatever client technology your business requires. The Kaazing WebSocket Gateway ships, for your convenience, with support for a set of client technologies such as JavaScript, .Net, Flash/Flex, Silverlight, and Java, providing you with the freedom to architect and deploy solutions that are perfect for your business.

If you are a developer who wants to use Kaazing WebSocket Gateway with your application, learn how to build clients by reviewing our Developer documentation.

High Availability & Clustering

High Availability and Clustering

With new communication standards come new challenges, and so also with the new HTML5 WebSocket standard, the first major upgrade in the history of the Web. The WebSocket standard is a compliment to the current HTTP standard, but in contrast with HTTP the WebSocket standard is designed to provide a stateful, full-duplex, and always connected architecture, which presents new challenges inform of how to enable high availability and clustering. Our engineering team at Kaazing has devoted their time to ensure we can offer a straightforward and easy solution that solves these challenges for you. The Kaazing WebSocket Gateway can be easily configured to be highly available—something that is mission critical to the success of today's enterprises. High availability for services is achieved by configuring multiple gateways to be part of a cluster. Combining two or more gateways in a cluster creates a single entity from the client's point of view. A clustered configuration is an essential part of hardware and software failover preparation.

If you are an administrator or need to perform administration tasks, see:

Load Balancing

Another challenge with this new WebSocket standards is that if effects intermediaries traditionally associated with enterprise Web architectures such as Load Balancers. In very simple terms; when we move from a stateless, disconnected, request-response model to a stateful, persistent, and full-duplex model traditional load balancers become a bottle neck in our architecture. At Kaazing we have been asked by our customers to solve this challenge and provide an alternative load balancer strategy, out of the way of the critical path of your data.

The Kaazing WebSocket Gateway provides a balancer service, which allows you to balance load for requests from any Kaazing WebSocket Gateway service type. Services running on Kaazing WebSocket Gateway support peer load balancer awareness with the balance element. The figure shows how a balancer Gateway works in conjunction with multiple, clustered Gateways.

If you are an administrator or need to perform administration tasks, see:

Unified Security

Unified Security

Kaazing WebSocket Gateway unifies your architecture by acting as a single access point for your back-end services for a variety of client types. It doesn’t matter if your client is browser or mobile based, or whether you use JavaScript, Flash/Flex, Silverlight, or Java: you access the Gateway (and thus your back-end services) in the same way. Moreover it doesn’t matter if you’re using native WebSocket or emulation. This carries over to security as well. You configure security options once on the Gateway and those settings apply to all clients,irrespective of the client technology and whether desktop, browser, or mobile.

Instead of developers building security elements into the application itself, administrators can configure various security options independently of the app. This lets your developers focus on what they should be focusing on: application logic and slick user interfaces.

The following documents explain how to configure, administer, manage, and implement security:

Enterprise Integration

Kaazing WebSocket Gateway requires no browser plug-ins, works with any browser or mobile device, and integrates quickly and easily with back-end systems such as enterprise messaging platforms. Kaazing supports all major client-side technologies including JavaScript, Adobe Flex (Flash), Microsoft .NET/Silverlight, Java/JavaFX, iOS and Android.

As revolutionary as it is, WebSocket – like any other socket – is an “empty pipe” when it comes to higher level protocols. In order to extend back-end enterprise systems out to the Web, the business protocols those systems use to communicate must be transported over WebSocket, a requirement not addressed by the specification. Kaazing fulfills this need with product editions that offer out-of-the-box support for leading standard protocols such as JMS, AMQP and XMPP, and an HTML5 edition that developers can use to transport any other standard or custom protocol over WebSocket.

Enterprise Integration

For example, Kaazing WebSocket Gateway includes JMS client libraries (for JavaScript, Microsoft .Net/Silverlight, Flex (Flash), and Java/JavaFX) which allow clients to subscribe from and publish messages to a JMS-compliant message broker. With the Kaazing WebSocket Gateway JMS client libraries, you can leverage WebSocket in your application by building a client. This WebSocket client then enables communication between your application and the JMS-compliant message broker.

Samples: How to use the Gateway's JMS client libraries: