This document discusses using Redis caching to improve performance for the DBS Paylah mobile wallet application. Paylah aims to significantly increase its user base which will increase load on its backend systems. Caching application data and session state in Redis can reduce latency, improve responsiveness for users, and reduce costs by lowering load on legacy backend databases and mainframes. The document outlines some key Paylah use cases where caching transaction histories and account details in Redis would accelerate retrieval and improve the mobile experience by avoiding the need to access slower backend systems on each request.
2. PRESENTED
BY
Speaker Bio
Raviteja Appalla is a cloud technology enthusiast,
currently working as the PCF platform lead at
DBS. Prior to this role, he was working with
leading enterprises on their digital strategy
initiatives, helping them deliver outstanding
customer experiences at start-up speed. He is a
customer advisor and a technology professional
with experience across networking, product
development and cloud-native technologies.
Principal Engineer delivering scalable solutions for high
volume, mission critical business problems. Contributed
in a variety of roles and facets of large scale project
implementations spanning a number of technology
stacks, delivery channels and business segments. Have a
keen interest in keeping abreast of emerging
technologies, methodologies and standards and how
they can be applied to solve real world problems.
6. PRESENTED
BY
Why Paylah needs Caching?
DBS PayLah!, aims to more than double its
existing user base of 1.6 million to 3.5 million by
2023.
Unlock the power of your enterprise data
Boost the accessibility and resilience of your legacy systems with new
caching architectures.
Projected Concurrency Growth
Delight your users with lightning-fast apps
Amp up Paylah with a cache to deliver low-latency responses to data
access requests.
Reduces Enterprise System Cost
Projected YOY MIPS Cost growth rate 1.2 million.
Reduce the Load on the Backend by redirecting significant parts of the
read load from the backend database to the in-memory layer
7. PRESENTED
BY
What is an RPC Style End Points?
• It is an action (VERB) based method definition.
• The endpoint contains the name of the operation you want to invoke.
• This type of API generally only uses GET and POST HTTP verbs.
What is the current KONY HTTP RPC
style state?
• There are total 160+ RPC endpoints.
• Paylah consumer APP send POST/GET Request but each
service call have dependent on session to fulfill the response.
Sample Request for GetAccountList
GET /GetAccountList HTTP/1.1
Host: api.DBS.com
Content-Type: application/json
{
"deviceId": "",
"ipAddress": "10.91.110.17",
"channelIndicator": "P2P",
"channelIdentifier": "",
"transactionRefNumber": "",
"flowType": "GRADUATION"
}
Additional Input-parameter from Session to
make the make GetAccountList service call
cin
,cinfx,deviceIndex,walletId,passphrase,mobileNo,fromWalletType,toWall
etType,walletLogin,cinForeigner,cinForeignerSfx,pllCustomerType
Session Cache – Session Stateless Session for Stateful method
8. PRESENTED
BY
Can't re-write Paylah Mobile Apps upfront.
It is consuming RPC style service.
Leaky Session- Session is a bucket for many
attributes ranging from user preferences
across different domain boundaries
Paylah Components
9. PRESENTED
BY
Accelerate retrieval of web content from device
Cache Application Data Use case
Legacy data platform persisted store
on a slower tech stack (ie, RDBMS or
other legacy system.)
There is a huge gap in terms of
Availability and Concurrency
requirement.
Cost of scaling is significantly high for
legacy backend systems.
Paylah! Card
Domain API
Our objectives and nature of use case:
• End-to-end latency at P95 should not exceed
200ms.
• Reduce network latency that involves additional
hops to middleware and mainframe. This also
translates to MIPS reduction.
• TTL for application data is bounded by user
session, which maxed out at 15 minutes.
Paylah! mobile
application
Through 4G,
internet,
Akamai…
Webservers
Ecosystems
Gateway
Paylah!
experience
microservice
(PCF)
CAPI
Redis Cache
Very near to the
microservice
(For every new session requesting
transaction history for particular
Credit card or wallet details)
Retrieve Paylah! wallet and credit
card (including transactions) details.
Experience microservice will
perform sort, pagination, filtering
data... and store results in cache.
Total concurrency can peak at 6000
sessions, with growth expected to
be 50% yoy.
If wallet details or transaction history
is found in cache, retrieve details
directly from cache, avoid latency
and reduce MIPS on mainframe
Paylah! Wallet
Domain API
WB+
(mainframe)
V+
(mainframe)