Home > Blogs > VMware vFabric Blog

NanoTrader: Now The SpringTrader Reference Architecture

What is SpringTrader?

Back in August, we provided a sneak peak at NanoTrader, VMware’s vFabric Reference Architecture.  It was referenced in several posts and then featured in a session at SpringOne recently.  The application has now been named SpringTrader, and we wanted to a) share more information about the SpringTrader app including some updated architecture graphics, b) provide a new tool (a version you can log into online), and c) share the location of the Spring Trader bits for download.

If you haven’t heard, the SpringTrader reference architecture is used to help Java-based application architects, developers, infrastructure, and operations teams advance their application roadmaps and provide reusable patterns.  Some might also consider how vFabric Application Director can be used with the SpringTrader app to enable continuous deployment or automatically provision and scale the app in a completely virtual data center (i.e. a software defined data center). As well, vFabric Application Performance Manager can be used to monitor the entire stack and trigger automated scaling events like adding a new JVM and tc Server to the SpringTrader app’s production environment.

What is SpringTrader?

The SpringTrader app is based on the classic DayTrader app, but there are some key differences:

SpringTrader is an app that allows users to login, view their portfolio, lookup stock quotes, and buy or sell stock.  Under the hood, there are some very cool capabilities:

  • The presentation layer is built on open standards like HTML 5, CSS, and JavaScript and is optimized for browser, tablet, or phone.  The client side invokes server side application services in JSON format without full-page refreshes (i.e. a single page interface).  JQuery, Backbone, and Bootstrap are used for development and vFabric Web Server for runtime.
  • The application functionality is provided by lightweight, REST style services that expose JSON, interact with the data tier, and place messages for buying and selling stock on the message queue for asynchronous (long running) processes. The application is based on the Spring Framework and Spring Security. Spring Data JPA provides simplified access to the data tier, Spring Integration provides code-free connection to the message broker and integration services, and Spring Cache Abstraction with Spring GemFire provide declarative application tier caching (and scale) by embedding a peer-to-peer GemFire Cache of authorized tokens for the REST API. Of course, vFabric tc Server is used for runtime of the JVM where Elastic Memory for Java (EM4J) is available.
  • RabbitMQ is used as the message broker for asynchronous processes and loosely coupled inter-JVM processing. For asynchronous, long-running, multi-step transactions like orders, account balance updates, holdings, and stock volatility simulation, Spring Integration is used with RabbitMQ. The framework also choreographs multi-step transactions with SQLFire.
  • The data tier uses SQLFire as a highly scalable, low-latency, in-memory, SQL-based database (or in-memory data grid), but legacy databases or vFabric Postgres could also be used.

What’s available at springtrader.vmware.com?
Here, you can log in and try the application out for yourself as a user.

What’s available on GitHub?
GitHub/vFabric/SpringTrader houses what you’d expect – all the files you need along with a Get Started Guide that walks you through the prerequisite software, installation steps, and STS setup.

High Level Application Architecture

Development Architecture

Operational Architecture

>> To learn more about the vFabric Application Platform:



NanoTrader: Now The SpringTrader Reference Architecture

What is SpringTrader?

Back in August, we provided a sneak peak at NanoTrader, VMware’s vFabric Reference Architecture.  It was referenced in several posts and then featured in a session at SpringOne recently.  The application has now been named SpringTrader, and we wanted to a) share more information about the SpringTrader app including some updated architecture graphics, b) provide a new tool (a version you can log into online), and c) share the location of the Spring Trader bits for download.

If you haven’t heard, the SpringTrader reference architecture is used to help Java-based application architects, developers, infrastructure, and operations teams advance their application roadmaps and provide reusable patterns.  Some might also consider how vFabric Application Director can be used with the SpringTrader app to enable continuous deployment or automatically provision and scale the app in a completely virtual data center (i.e. a software defined data center). As well, vFabric Application Performance Manager can be used to monitor the entire stack and trigger automated scaling events like adding a new JVM and tc Server to the SpringTrader app’s production environment.

What is SpringTrader?

The SpringTrader app is based on the classic DayTrader app, but there are some key differences:

SpringTrader is an app that allows users to login, view their portfolio, lookup stock quotes, and buy or sell stock.  Under the hood, there are some very cool capabilities:

  • The presentation layer is built on open standards like HTML 5, CSS, and JavaScript and is optimized for browser, tablet, or phone.  The client side invokes server side application services in JSON format without full-page refreshes (i.e. a single page interface).  JQuery, Backbone, and Bootstrap are used for development and vFabric Web Server for runtime.
  • The application functionality is provided by lightweight, REST style services that expose JSON, interact with the data tier, and place messages for buying and selling stock on the message queue for asynchronous (long running) processes. The application is based on the Spring Framework and Spring Security. Spring Data JPA provides simplified access to the data tier, Spring Integration provides code-free connection to the message broker and integration services, and Spring Cache Abstraction with Spring GemFire provide declarative application tier caching (and scale) by embedding a peer-to-peer GemFire Cache of authorized tokens for the REST API. Of course, vFabric tc Server is used for runtime of the JVM where Elastic Memory for Java (EM4J) is available.
  • RabbitMQ is used as the message broker for asynchronous processes and loosely coupled inter-JVM processing. For asynchronous, long-running, multi-step transactions like orders, account balance updates, holdings, and stock volatility simulation, Spring Integration is used with RabbitMQ. The framework also choreographs multi-step transactions with SQLFire.
  • The data tier uses SQLFire as a highly scalable, low-latency, in-memory, SQL-based database (or in-memory data grid), but legacy databases or vFabric Postgres could also be used.

What’s available at springtrader.vmware.com?
Here, you can log in and try the application out for yourself as a user.

What’s available on GitHub?
GitHub/vFabric/SpringTrader houses what you’d expect – all the files you need along with a Get Started Guide that walks you through the prerequisite software, installation steps, and STS setup.

High Level Application Architecture

Development Architecture

Operational Architecture

>> To learn more about the vFabric Application Platform:

29 thoughts on “NanoTrader: Now The SpringTrader Reference Architecture

  1. Pingback: Q&A with Brian Dussault | VMware vFabric Blog - VMware Blogs

  2. Paul

    Is Springtrader a framework or a product? I am not sure which it is. Is it a framework that can be customized and leveraged by other commercial trader based webapps?

    Reply
  3. Stacey SchneiderStacey Schneider

    Hi Paul,

    It is a reference architecture of all the VMware vFabric applications working together. Its basically a “lab” application which is set up to allow users to see how the various components work together. It is not for sale as an application itself intending to help people trade, but as a sales tool or training tool to help application architects understand how to build highly scalable, dynamic apps in cloud environments on VMware’s cloud application platform. Make sense?

    -Stacey

    Reply
  4. Pingback: 3 Steps on Using Spring Insight Developer to Analyze Code | VMware vFabric Blog - VMware Blogs

  5. Pingback: VMware vFabric Blog: 3 Steps on Using Spring Insight Developer to Analyze Code | Strategic HR

  6. Pingback: Sneak Peak at VMware’s Nanotrader Reference Architecture | VMware vFabric Blog - VMware Blogs

  7. Pingback: The Best VMware vFabric Stories of 2012 & What’s In Store for 2013 | VMware vFabric Blog - VMware Blogs

  8. Pingback: VMware vFabric Blog: The Best VMware vFabric Stories of 2012 & What’s In Store for 2013 | Virtualization

  9. Pingback: The Software-Defined Datacenter Will Auto-Scale Gracefully | VMware vFabric Blog - VMware Blogs

  10. Pingback: 3 Game Changing Capabilities in SQLFire | VMware vFabric Blog - VMware Blogs

  11. Pingback: VMware vFabric Blog: 3 Game Changing Capabilities in SQLFire | Virtualization

  12. Pingback: VMware vFabric Blog: 3 Game Changing Capabilities in SQLFire | Strategic HR

  13. VCAP certified

    VMware Certified Advanced Professional 6 (Desktop and Mobility Deployment) – The industry-recognized VCAP6-DTM Deploy certification validates that you know how to deploy and optimize VMware Horizon 6 (with View) environments. It demonstrates that you have the knowledge and expertise required to leverage best practices to provide a scalable and reliable Business Mobility platform for your organization. Some of the subject areas involve: Configuring and managing Horizon View components, configuring cloud pod archituecture, configuring Group Policy settings related to Horizon View, Configuring and optimizing desktop images for Horizon View & Mirage, Configuring and managing App Volumes AppStacks, Configuring desktop pools, Configuring and deploying ThinApp packaged applications, Configuring VMWare Identity Manager, etc.Sebastian’s take on the VCAP6 exam: “In my own point of view VCAP6 examination is much better experience as compared with VCAP5, the newest examination appears to be just like VMware HOL. The interface is not difficult, questions are ordered on the right section of the display, and could be hidden aside or restored when necessary. My advise on the questions windowpane: if you decide to make it floating, you better know how to restore it back. I ended up shifting it all around because I forget about how to recover it back. The two arrows that looks like control buttons on the top were supposed to dock the window to right or left. Fonts can be resized, which i think was a lot better than scrolling down and up the question. The response speed of the entire interface was a lot faster in comparison with VCAP5.5, and there wasn’t any lagging time period experienced when moving over from window to window. One thing to bear in mind: BACKSPACE key is not working! I believe this is good since you don’t reload your exam window by accident, however, it could be irritating from time to time whenever you type some thing wrongly and you need to select and press Del to remove. The Desktop and shortcuts were arranged very effectively, and needed programs like web browser or Mirage console could be launched. You will find a great user interface for Remote Desktop Manager and you’ll discover all required RDP connection to servers or desktops with no need to type account information. The web browser had all the links in the Favorite Bar. Right at that moment I am writing this, there’s no extra Thirty minute extension for Non-Native English speaker at No-Native English country, which is a bummer. You will find 39 question to answer within the three hours period, which can be actually quite hard for non-native English speakers like me. Several questions take time to complete, so it’s advisable to avoid the questions that you cannot respond to, and complete those you are able to. After the thirty-nine questions, you can get back to the uncompleted questions when you have time. Never waste a lot of time on one single question! The examination blue print can be found on my weblog at Szumigalski.com. It is well organized and following it for the exam preparation will be helpful to a great deal. Not surprisingly, the most effective is if you’ll have lots of practical experience! I’m actually very happy with the exam experience, even though I passed this time by small margin, however i understand what I missed for the exam, find out from the errors and practice harder to acquaint myself with the environment. This credentials will open up your job prospects!”

    Reply

Leave a Reply

Your email address will not be published. Required fields are marked *

*