using wso2 as a mobile services platform

28
Using WSO2 as a Mobile Services Platform by Simon Bilton Head of Professional Services Gödel Technologies Europe Ltd In association with Transport for London

Upload: wso2

Post on 03-Dec-2014

1.495 views

Category:

Technology


1 download

DESCRIPTION

 

TRANSCRIPT

Using WSO2 as a Mobile Services Platform

by

Simon BiltonHead of Professional Services

Gödel Technologies Europe Ltd

In association with Transport for London

In this session …..

• How Transport for London use WSO2 ESB as the main platform for mobile services

• Focus on “What” rather than “How” – I will be discussing the high level solution rather than the intimate details of the code we have developed

• Real world experiences – some of the issues we found and overcame

• Meet the developer(s) afterwards

30 seconds of corporate background

Software Development Organisation

Established in 2005

HQ in Manchester, England

Development Centre in Minsk, Belarus

Approximately 80 staff

Represented at WSO2Con 2011 by Simon Bilton, Head of Professional Services and Vladimir Klevko, Senior Developer

About Transport for London

Transport for London (TfL) is the government body responsible for most aspects of the transport system in Greater London in the UK

Examples of the transport modes and services operated by TFL:

• London Underground also known as the Tube

• Surface Bus Network

• Journey Planner and Travel Alerts

• Near Field Radio pre-payment card (Oyster)

• Cabwise SMS (Text) for TAXI Information Services

Journey Planner Services

Journey Planner delivers travel information to the public via Web and WAP channels and associated content delivery platforms with over 95 million trip requests per month from 4 million unique users.

Journey Planner has year on year growth of over 20 % and remains one of core internet services in promoting easy of transport planning across London.

TfL WAP portals delivers 100,000 trip requests per month with a year on year growth rate of 10%.

Travel Alerts sends out 950,000 email alerts and 900,000 SMS alerts each month advising of transport problems.

Transport for London’s Vision for a Mobile Services Platform

•Consolidation of mobile messaging services across TfL

•Extension of personalised services within Journey Planner

•Upgrading Current Mobile & Wireless Services

• Introduction of rich-client applications to the Mobile Journey Planner Services Portfolio

•Introduction of enhanced Real Time Information Services

• Building a foundation platform to allow quick and efficient integration of current and future TfL services

• Building of other travel related services for the community, such as bicycle lane information

The Challenges

• Build a scalable, reliable foundation platform

• Promote reusability of all system components

• Extend the personalisation from 200,000 travel alerts users up to 5 million mobile and web users

• Integrate real time services

• Meet the demands of 4 million users and 95 million journey resolutions per month

• Deliver over 1 million SMS and email alerts per month now, with a growth rate of 20% per year

• Allow easy integration of new services in the future

The Core Design

• TfL mandated that the solution should be designed and built using Service Oriented Architecture principles

• Use a high performance Enterprise Service Bus

• Enforce strong governance and architectural principles

• Establish a single point of integration for current and future TfL services

• Define and re-use infrastructure, software and processes

Design Benefits

Benefit Benefit to TfL TfL’s Customer Benefit

Cost Reduction Reduced physical infrastructure

Quality of service through focussed investment

Reduced Complexity “Building Block” servicesVirtualised environment with management dashboard

Transparent technologyConsistent delivery of service and information

Better Customer Experience

Encourage use of TfL transportIncreased customer satisfaction

“One view” of the informationPersonalised, not generic

Reduced Risk Common capabilities and services interoperate from inception

Technology change has no negative impact

Greater Control Strong governance and architecture ensure change is driven by the business

Confidence in the vision of TfL as a public service

Commercial Opportunity

Defined and controllable interfaces enables monetisation of services

Low cost, high quality serviceRich, diverse information on demand

Extensible and Scalable

TFL Common Capabilities

TfL

Netw

ork

Rail

Eu

rosta

r

Log

isti

cs

Park

ing

/C

on

gesti

on

Nati

on

al

Coach

es

Reg

ion

al B

uses

ATO

CTransport Sector Verticals

Com

mon S

erv

ices

Multimodal Service Orchestration

Service Interfaces & SDK

Gov

erna

nce

& A

rchi

tect

ure

mod

el

Mon

itorin

g

Man

agem

ent

Repo

rting

Timetables

Stops & POI

Incidents

Journeys

Location

Personalization

Payments

Why think outside of the box when the box can think for itself ?

Now the techie bits!

Schematic of Legacy Services

Schematic of ESB Solution

High Level Infrastructure Design

Network and Firewall Segmentation

Core Components

• 2 x WSO2 ESB Nodes as Load Balanced Cluster

Common configuration files on shared storageRunning identical services on both nodes

• 2 x Application Servers as Load Balanced Cluster

• 2 x Message Broker Servers as Master-Slave Cluster

• 2 x WSO2 BAM servers in Active-Passive mode

Physical Layout

WSO2 ESB Physical Build

WSO2 BAM Physical Build

WSO2 ESB Interfaces

26 proxy services are deployed on ESB which provide the following functionality across the whole solution:

• Journey Planning Services (including Travel Alerts services)

• Address, Geolocation and LBS Lookup Services

• Mobile Application Building Services

• Incident Command System (ICS) Services

• Utility and Intelligent Router Services

• Cabwise service

Utility Service

• Used to receive and send SMS and emails

• Email sent via SMTP relay servers using load balancing algorithm

• SMS text messages sent and received on different channels using SMPP gateway*

• Highly re-usable, can be called directly or used in conjunction with Intelligent Router service

* SMPP=Short Message Peer to Peer Protocol

Intelligent Router Service

• Used to route messages based on user configurable parameters such as:

SMS short-code and keyword

Email address and subject

• Incorporates profanity and abuse filters

• Functional Requirement: Operators must be able to easily add or modify the parameters without changing application

• Uses fixed or flex keywords

Cabwise• Send a text to short-code 60835 with valid keyword

such as “home” or “cab” or a valid postcode

• Message received and processed by Intelligent Router

• Calls Location Based service to locate user’s geo-position (Latitude/Longtitude)

• Performs database lookup for two nearest licensed taxi firms

• Sends reply SMS to user with phone numbers of taxi firms

• (Premium SMS message – so TfL costs are covered)

Challenges we facedRequired huge amount of co-operation between all parties (3 main suppliers plus 4 or more sub-contracted agents)

Interdependencies between most suppliers

Managed infrastructure environment was a pain!

• Dual network cards in servers a particular nuisance for bindings

Bugs or lack of functionality in WSO2 ESB

Limited documentation on WSO2 ESB and WSO2 BAM to assist with deployment

Although not a Godel deliverable, the migration of existing users was a major issue

Open Source to the Rescue!

Due to the Open Source nature of WSO2 we were able to change or fix the shortcomings of some of the code such as:

• Added several message builders to meet requirements

• Start up failure on underlying service unavailability was fixed. Unavailable proxy service is replaced with the fake service returning valid SOAP fault

• Ability to re-deploy proxy services on the fly was added

• A fix was implemented to address the issue with WSDL not being returned when many concurrent requests were being sent

• 202 (Accepted) response was replaced with valid SOAP fault as all proxy services are synchronous

Thank you for listening!

- Any Questions?

- See Vladimir !!

TfL Trivia

Distance travelled by each Tube train each year:

123,600km / 76,800 miles

Number of passengers carried on the Tube each year:

1,073 million

Number of individual passengers carried on the Tube each year:

28 million

Average Train Speed:

33kph / 20.5mphLength of Network:

402km/249 miles

Proportion of the network in tunnels:45%

Longest continuous tunnel:

27.8km/17.25 miles

More Trivia …

Total number of escalators:

412 Station with most escalators:

Waterloo with 23 plus

two passenger conveyorsTotal number of lifts: 122

Deepest lift shaft:

Hampstead - 55.2m/181ftShortest lif

t shaft:

Westminster -

2.5m/8ftBusiest stations:

During the three-hour morning peak, London's busiest Tube station is:

Waterloo with 51,100 people entering

The busiest station in terms of passengers each year is:

Victoria with 76 million