SlideShare a Scribd company logo
1 of 26
Transactions as a Service
Technical IntroductionTechnical Introduction
APIAPI
ManagerManager
TransactionTransaction
ManagerManager
SteroidsSteroids
+ + =
Cloud-Based Time-Limited Transactions
Just think...
To watch And feelThere are moments You enjoy
Did you ever think what happens
‘behind the scenes’?
The World could be easier!
The current world
The better world
face this, to get this, and feel like this.You arrive here, to use this,
authenticate at the entrance,You buy your ticket from where you are, and enjoy the game going through zero stress
Let’s build this together!
Tickeeeeeets!!!!
Tens of
Thousands of
fans
Many requests over a very
short period
Many servers
and services
involved
Denial of Service Attacks
Lost connections
Incomplete Transactions
Customer Churn
Bank Servers
Credit Card
Servers
Stadium
Servers
Others
Challenges
Backend Servers
VersaCloud
Architecture Overview
Cloud-Based
Transaction Manager
Back-end Servers
Computer Programs
Browsers & IoT Gadgets
Mobile Devices
Real-world Transaction Requirements
You check for
ticket availability
Stadium
ServerStadium
App
Credit
Card
Server
Bank
Server
You buy your
ticket
Your bank or
CC gets
charged Stadium
bank balance
is credited
Stadium
confirms
your seat
Stadium
locks your
seat
You enter
through the
ticket gate
Stadium
server
notifies your
smartphone
You ignore it,
because you’re
already happily
watching the
game
You ignore it,
because you’re
already happily
watching the
game
Transactions: Relational x Cloud
Cloud
• Sequence of individual operations
consisting of calls into
various back-end servers
Relational
• Sequence of individual operations
that apply changes to a SINGLE
database, to be applied only if all
of them produce no errors
Time-Limited Transactions
Unstable
Connections
Battery-
based devices
Incomplete Transactions
Solved by Time Limitation
‘Timeout’
concept
‘Timeout’
concept
Applied to
Transactions
Applied to
Transactions
Maximum
Running
Time
Maximum
Running
Time
The latest at transaction execution request
(MethodInvokeAllow)
The latest at transaction execution request
(MethodInvokeAllow)
Data
Every 'write'
handled
as a
transaction
…SetAllow
...SetCommit
…Get
UserUntilGet
UserSinceGet
ErrorDocumentationGet
SolutionUntilGet
PropertyValueGet
ErrorDocumentationSetCommit
UserSinceSetCommit
UserUntilSetCommit
PropertyValueSetCommit
SolutionUntilSetCommit
UserUntilSetAllow
UserSinceSetAllow
ErrorDocumentationSetAllow
PropertyValueSetAllow
SolutionUntilSetAllow
?
Inspired by OOP
We created…
Powered
Encapsulation
Get SetAllow SetCommit
Safer Faster AuditableInput handled as a transaction
From OOP to Cloud Transactions
Each Solution is composed
by a set of Methods
SolutionSolution
MethodMethod
MethodMethod
MethodMethod
MethodMethod
MethodMethod
......
BackendBackend
Callback
Callback
Callback
Callback
Callback
Callback
Callback
Callback
BackendBackend
Transaction #1Transaction #1
Transaction #4Transaction #4
Transaction #6Transaction #6
Transaction #7Transaction #7
Transaction #...Transaction #...
Transaction #2Transaction #2
Transaction #3Transaction #3
Transaction #5Transaction #5
• Transactions are instances of running methods
• Need to be specified by developers beforehand
• Each individual method can call into various back-end servers
Defining Transaction
Traditional Transactions
Begin Transaction
If IsError(Operation1)
Then Rollback : Exit
If IsError(Operation2)
Then Rollback : Exit
…
If IsError(Operationn)
Then Rollback : Exit
Commit Transaction
Allow Transaction MaxRunTime
Operation1
Operation2
…
Operationn
Commit Transaction
Time-Limited Transactions
Server rollbacks automatically upon expiration
Unless Commit received in less than MaxRunTime
Simplified Contract & Coding
VersaCloud'sBoundary
Transaction Execution
Backend ServerBackend Server
Up to 14
parameters
Front-end connector
API CallAPI Call
111
VersaCloud’s Transaction EngineVersaCloud’s Transaction Engine
User App/DeviceUser App/Device
Subset of API parameters
222
Front-end Boundary
Back-end Boundary
WebServiceWebService
Stored ProcedureStored Procedure
JSON
Other Protocols
SameSubset of API parameters
One Return Value
Backend ConnectorBackend Connector
One Return Value
One Return Value
Can be
333444
555
666
Transaction Parameters
For more details see: https://www.mbi.com.br/mbi/english/versacloud/type-index/
Strongly-typedStrongly-typed
ERRORERROR
detected
refused
reported
Back-end servers
totally shielded
from errors
Global Recalling Limitations
By limiting its
availability to
cloud
applications
Manage Backend Server CapacityManage Backend Server Capacity
User Recalling Limitations
By specifying a minimum
interval between
consecutive calls
Limit Consecutive User RequestsLimit Consecutive User Requests
Semantic Recalling Limitation
Additional transaction(s) with
same key values gets refused
until previous one completes or times out
Additional transaction(s) with
same key values gets refused
until previous one completes or times out
Set of 'key parameters' called
'Reentrancy Lock Key'
Set of 'key parameters' called
'Reentrancy Lock Key'
FromFrom ToTo AmountAmount
TransactionTransaction
A B 500
TransactionTransaction
F G 200
TransactionTransaction
C Z 350
TransactionTransaction
D A 1200
Active Transactions Queue
partial representation
A B 600
Additional TransactionAdditional Transaction
Reliable Transactions
Stadium
App
MethodInvokeAllow
Normal Callback #1
Normal Callback #2
time
Callback #3 Error!
Transaction enters RollBack state
Rollback Callback #2
Rollback Callback #1
Optional Rollback Callbacks
notify back-end servers about cancelled transactions
Optional Rollback Callbacks
notify back-end servers about cancelled transactions
Auditable Transactions
Measure
Performance
Reliable and precise
Indicators for SLA
Semantics
TimeFirst
Shield
First
Shield
Internal
Algorythm
Second
Shield
Second
Shield
Invalid API Calls
DDoS shielding
Current Risks
Monetizable Transactions
• User accounts have an associated credit balance
• Can be charged to run specific transactions
• Transactions will not be 'Allow'-ed if not enough balance available
• Transaction costs automatically returned to user account in case of
rollbacked transactions
• Users can obtain credits through:
• On-line purchase
• Managed user groups they are part of
Balance
3,799
Reload
Very Small
Charges
per transaction
Very Small
Charges
per transaction
Overcoming costs
of current
payment systems
Developer Friendly Environment
Strong Type System
Strict ChecksStrict Checks
API
Parameters
API
Parameters Return
Values
Return
Values
Frontend BackendBackend&
Detailed Feedback to ERRORSDetailed Feedback to ERRORS
Almost 1.000 detailed error
messages
Extensible by your Solutions
Currently available in English,
Spanish and Brazilian Portuguese
Extensible into as many
languages as required
Both for native and your APIs
Multilingual DocumentationMultilingual Documentation
VersaCloud API Overview
UsersUsers SolutionsSolutions
MethodsMethods
ErrorCodesErrorCodes
ParametersParameters
MethodRightsMethodRightsUserRightsUserRights
Call LogCall Log
UpgradesUpgrades
GroupsGroups
PropertiesProperties
CallbacksCallbacks
RightsRights
SolutionTokensSolutionTokens
M
embersof
Own
Members of
Require
Define
Customize
Need
to
have
Secured by
Every CallEvery Call
Members of
Receive 
Invoke
Return 
Receive 
Explore the right balance!
Innovate – or leave the game Better usage of existing resources
Join us NOW!
Complete documentation,
tutorials and case studies
available at
www.versacloud.technology
Get in touch!
mailto:mac@matza.group
whatsapp: +55 11 98281-2442
mailto:rocmayer@mbi.com.br
whatsapp: +55 11 99216 9776
callto:+55 11 3230 6850

More Related Content

Similar to Versa cloud slide-deck-02-technical-introduction

JavaBin Oslo: Open source workflow and rule management with Camunda
JavaBin Oslo: Open source workflow and rule management with CamundaJavaBin Oslo: Open source workflow and rule management with Camunda
JavaBin Oslo: Open source workflow and rule management with CamundaBernd Ruecker
 
Workflow automation with BPMN. Lessons learned.
Workflow automation with BPMN. Lessons learned.Workflow automation with BPMN. Lessons learned.
Workflow automation with BPMN. Lessons learned.Bernd Ruecker
 
Adaptive Payments SDK - Magento Developers Paradise
Adaptive Payments SDK - Magento Developers ParadiseAdaptive Payments SDK - Magento Developers Paradise
Adaptive Payments SDK - Magento Developers ParadisePayPal
 
Serverless microservices: Test smarter, not harder
Serverless microservices: Test smarter, not harderServerless microservices: Test smarter, not harder
Serverless microservices: Test smarter, not harderDiUS
 
Anatomy of a Modern PHP Application Architecture
Anatomy of a Modern PHP Application Architecture Anatomy of a Modern PHP Application Architecture
Anatomy of a Modern PHP Application Architecture AppDynamics
 
Transform Your Financial System with Crypto Payment Gateway Solutions
Transform Your Financial System with Crypto Payment Gateway SolutionsTransform Your Financial System with Crypto Payment Gateway Solutions
Transform Your Financial System with Crypto Payment Gateway Solutionsrichardaustin1595
 
Topic2 Understanding Middleware
Topic2 Understanding MiddlewareTopic2 Understanding Middleware
Topic2 Understanding Middlewaresanjoysanyal
 
Micro-service architectures with Gilmour
Micro-service architectures with GilmourMicro-service architectures with Gilmour
Micro-service architectures with GilmourAditya Godbole
 
Exploring Contact Lens and Amazon Connect
Exploring Contact Lens and Amazon ConnectExploring Contact Lens and Amazon Connect
Exploring Contact Lens and Amazon ConnectCloudHesive
 
5-minute Practical Streaming Techniques that can Save You Millions
5-minute Practical Streaming Techniques that can Save You Millions5-minute Practical Streaming Techniques that can Save You Millions
5-minute Practical Streaming Techniques that can Save You MillionsHostedbyConfluent
 
PayU Biz Product Deck (1)
PayU Biz Product Deck (1)PayU Biz Product Deck (1)
PayU Biz Product Deck (1)ICICI Bank
 
Goto meetup Stockholm - Let your microservices flow
Goto meetup Stockholm - Let your microservices flowGoto meetup Stockholm - Let your microservices flow
Goto meetup Stockholm - Let your microservices flowBernd Ruecker
 
ATM BLock Diagram and its design uses development.pptx
ATM BLock Diagram and its design uses development.pptxATM BLock Diagram and its design uses development.pptx
ATM BLock Diagram and its design uses development.pptxkeerthi975
 
The present and future of serverless observability (QCon London)
The present and future of serverless observability (QCon London)The present and future of serverless observability (QCon London)
The present and future of serverless observability (QCon London)Yan Cui
 
The present and future of Serverless observability
The present and future of Serverless observabilityThe present and future of Serverless observability
The present and future of Serverless observabilityYan Cui
 
The present and future of Serverless observability
The present and future of Serverless observabilityThe present and future of Serverless observability
The present and future of Serverless observabilityYan Cui
 
Camunda Day Amsterdam 2019: Workflow Automation in Microservices Architecture...
Camunda Day Amsterdam 2019: Workflow Automation in Microservices Architecture...Camunda Day Amsterdam 2019: Workflow Automation in Microservices Architecture...
Camunda Day Amsterdam 2019: Workflow Automation in Microservices Architecture...camunda services GmbH
 

Similar to Versa cloud slide-deck-02-technical-introduction (20)

JavaBin Oslo: Open source workflow and rule management with Camunda
JavaBin Oslo: Open source workflow and rule management with CamundaJavaBin Oslo: Open source workflow and rule management with Camunda
JavaBin Oslo: Open source workflow and rule management with Camunda
 
Workflow automation with BPMN. Lessons learned.
Workflow automation with BPMN. Lessons learned.Workflow automation with BPMN. Lessons learned.
Workflow automation with BPMN. Lessons learned.
 
Adaptive Payments SDK - Magento Developers Paradise
Adaptive Payments SDK - Magento Developers ParadiseAdaptive Payments SDK - Magento Developers Paradise
Adaptive Payments SDK - Magento Developers Paradise
 
Serverless microservices: Test smarter, not harder
Serverless microservices: Test smarter, not harderServerless microservices: Test smarter, not harder
Serverless microservices: Test smarter, not harder
 
Anatomy of a Modern PHP Application Architecture
Anatomy of a Modern PHP Application Architecture Anatomy of a Modern PHP Application Architecture
Anatomy of a Modern PHP Application Architecture
 
Transform Your Financial System with Crypto Payment Gateway Solutions
Transform Your Financial System with Crypto Payment Gateway SolutionsTransform Your Financial System with Crypto Payment Gateway Solutions
Transform Your Financial System with Crypto Payment Gateway Solutions
 
Topic2 Understanding Middleware
Topic2 Understanding MiddlewareTopic2 Understanding Middleware
Topic2 Understanding Middleware
 
Micro-service architectures with Gilmour
Micro-service architectures with GilmourMicro-service architectures with Gilmour
Micro-service architectures with Gilmour
 
Smart Contracts
Smart ContractsSmart Contracts
Smart Contracts
 
Exploring Contact Lens and Amazon Connect
Exploring Contact Lens and Amazon ConnectExploring Contact Lens and Amazon Connect
Exploring Contact Lens and Amazon Connect
 
5-minute Practical Streaming Techniques that can Save You Millions
5-minute Practical Streaming Techniques that can Save You Millions5-minute Practical Streaming Techniques that can Save You Millions
5-minute Practical Streaming Techniques that can Save You Millions
 
PayU Biz Product Deck (1)
PayU Biz Product Deck (1)PayU Biz Product Deck (1)
PayU Biz Product Deck (1)
 
1. ibm blockchain explained
1. ibm blockchain explained1. ibm blockchain explained
1. ibm blockchain explained
 
WSO2 Complex Event Processor
WSO2 Complex Event ProcessorWSO2 Complex Event Processor
WSO2 Complex Event Processor
 
Goto meetup Stockholm - Let your microservices flow
Goto meetup Stockholm - Let your microservices flowGoto meetup Stockholm - Let your microservices flow
Goto meetup Stockholm - Let your microservices flow
 
ATM BLock Diagram and its design uses development.pptx
ATM BLock Diagram and its design uses development.pptxATM BLock Diagram and its design uses development.pptx
ATM BLock Diagram and its design uses development.pptx
 
The present and future of serverless observability (QCon London)
The present and future of serverless observability (QCon London)The present and future of serverless observability (QCon London)
The present and future of serverless observability (QCon London)
 
The present and future of Serverless observability
The present and future of Serverless observabilityThe present and future of Serverless observability
The present and future of Serverless observability
 
The present and future of Serverless observability
The present and future of Serverless observabilityThe present and future of Serverless observability
The present and future of Serverless observability
 
Camunda Day Amsterdam 2019: Workflow Automation in Microservices Architecture...
Camunda Day Amsterdam 2019: Workflow Automation in Microservices Architecture...Camunda Day Amsterdam 2019: Workflow Automation in Microservices Architecture...
Camunda Day Amsterdam 2019: Workflow Automation in Microservices Architecture...
 

More from Roberto C. Mayer

Versa cloud slide-deck-03-security-aspects
Versa cloud slide-deck-03-security-aspectsVersa cloud slide-deck-03-security-aspects
Versa cloud slide-deck-03-security-aspectsRoberto C. Mayer
 
Versa cloud slide-deck-01-pitch
Versa cloud slide-deck-01-pitchVersa cloud slide-deck-01-pitch
Versa cloud slide-deck-01-pitchRoberto C. Mayer
 
2017 11-26-sete-chaves-da-oracao-da-serenidade
2017 11-26-sete-chaves-da-oracao-da-serenidade2017 11-26-sete-chaves-da-oracao-da-serenidade
2017 11-26-sete-chaves-da-oracao-da-serenidadeRoberto C. Mayer
 
WCIT 2016 Sérgio Paulo Gallindo
WCIT 2016 Sérgio Paulo GallindoWCIT 2016 Sérgio Paulo Gallindo
WCIT 2016 Sérgio Paulo GallindoRoberto C. Mayer
 
WCIT 2016 Manu Bhardwaj 2
WCIT 2016 Manu Bhardwaj 2 WCIT 2016 Manu Bhardwaj 2
WCIT 2016 Manu Bhardwaj 2 Roberto C. Mayer
 
WCIT 2016 Julio Cesar Ribeiro
WCIT 2016 Julio Cesar RibeiroWCIT 2016 Julio Cesar Ribeiro
WCIT 2016 Julio Cesar RibeiroRoberto C. Mayer
 
WCIT 2016 Dr. William P. Magee Jr
WCIT 2016 Dr. William P. Magee JrWCIT 2016 Dr. William P. Magee Jr
WCIT 2016 Dr. William P. Magee JrRoberto C. Mayer
 
2016 it-census-2015-edition-main-results
2016 it-census-2015-edition-main-results2016 it-census-2015-edition-main-results
2016 it-census-2015-edition-main-resultsRoberto C. Mayer
 
2016-08-31 Comorbidades e a Dependência Química
2016-08-31 Comorbidades e a Dependência Química2016-08-31 Comorbidades e a Dependência Química
2016-08-31 Comorbidades e a Dependência QuímicaRoberto C. Mayer
 
Cloud iot novos requisitos software
Cloud iot novos requisitos softwareCloud iot novos requisitos software
Cloud iot novos requisitos softwareRoberto C. Mayer
 

More from Roberto C. Mayer (20)

Versa cloud slide-deck-03-security-aspects
Versa cloud slide-deck-03-security-aspectsVersa cloud slide-deck-03-security-aspects
Versa cloud slide-deck-03-security-aspects
 
Versa cloud slide-deck-01-pitch
Versa cloud slide-deck-01-pitchVersa cloud slide-deck-01-pitch
Versa cloud slide-deck-01-pitch
 
2017 11-26-sete-chaves-da-oracao-da-serenidade
2017 11-26-sete-chaves-da-oracao-da-serenidade2017 11-26-sete-chaves-da-oracao-da-serenidade
2017 11-26-sete-chaves-da-oracao-da-serenidade
 
WCIT 2016 Calls to Action
WCIT 2016 Calls to ActionWCIT 2016 Calls to Action
WCIT 2016 Calls to Action
 
2016 WCIT Vint Cerf
2016 WCIT Vint Cerf2016 WCIT Vint Cerf
2016 WCIT Vint Cerf
 
WCIT 2016 Soumitra Dutta
WCIT 2016 Soumitra DuttaWCIT 2016 Soumitra Dutta
WCIT 2016 Soumitra Dutta
 
WCIT 2016 Sérgio Paulo Gallindo
WCIT 2016 Sérgio Paulo GallindoWCIT 2016 Sérgio Paulo Gallindo
WCIT 2016 Sérgio Paulo Gallindo
 
WCIT 2016 Manu Bhardwaj
WCIT 2016 Manu BhardwajWCIT 2016 Manu Bhardwaj
WCIT 2016 Manu Bhardwaj
 
WCIT 2016 Manu Bhardwaj 2
WCIT 2016 Manu Bhardwaj 2 WCIT 2016 Manu Bhardwaj 2
WCIT 2016 Manu Bhardwaj 2
 
WCIT 2016 Julio Cesar Ribeiro
WCIT 2016 Julio Cesar RibeiroWCIT 2016 Julio Cesar Ribeiro
WCIT 2016 Julio Cesar Ribeiro
 
WCIT 2016 Jan Ming Ho
WCIT 2016 Jan Ming HoWCIT 2016 Jan Ming Ho
WCIT 2016 Jan Ming Ho
 
WCIT 2016 George Newstrom
WCIT 2016 George NewstromWCIT 2016 George Newstrom
WCIT 2016 George Newstrom
 
WCIT 2016 Dr. William P. Magee Jr
WCIT 2016 Dr. William P. Magee JrWCIT 2016 Dr. William P. Magee Jr
WCIT 2016 Dr. William P. Magee Jr
 
WCIT 2016 Dr. Ming Ji Wu
WCIT 2016 Dr. Ming Ji WuWCIT 2016 Dr. Ming Ji Wu
WCIT 2016 Dr. Ming Ji Wu
 
WCIT Anupan Chander 1
WCIT Anupan Chander 1WCIT Anupan Chander 1
WCIT Anupan Chander 1
 
WCIT 2016 Amy Aussieker
WCIT 2016 Amy AussiekerWCIT 2016 Amy Aussieker
WCIT 2016 Amy Aussieker
 
WCIT 2016 Aline Sordilli
WCIT 2016 Aline SordilliWCIT 2016 Aline Sordilli
WCIT 2016 Aline Sordilli
 
2016 it-census-2015-edition-main-results
2016 it-census-2015-edition-main-results2016 it-census-2015-edition-main-results
2016 it-census-2015-edition-main-results
 
2016-08-31 Comorbidades e a Dependência Química
2016-08-31 Comorbidades e a Dependência Química2016-08-31 Comorbidades e a Dependência Química
2016-08-31 Comorbidades e a Dependência Química
 
Cloud iot novos requisitos software
Cloud iot novos requisitos softwareCloud iot novos requisitos software
Cloud iot novos requisitos software
 

Recently uploaded

APIForce Zurich 5 April Automation LPDG
APIForce Zurich 5 April  Automation LPDGAPIForce Zurich 5 April  Automation LPDG
APIForce Zurich 5 April Automation LPDGMarianaLemus7
 
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationBeyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationSafe Software
 
Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024Enterprise Knowledge
 
AI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsAI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsMemoori
 
Unblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesUnblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesSinan KOZAK
 
Scanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsScanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsRizwan Syed
 
Human Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsHuman Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsMark Billinghurst
 
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
"Federated learning: out of reach no matter how close",Oleksandr LapshynFwdays
 
Streamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupStreamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupFlorian Wilhelm
 
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...Patryk Bandurski
 
Bluetooth Controlled Car with Arduino.pdf
Bluetooth Controlled Car with Arduino.pdfBluetooth Controlled Car with Arduino.pdf
Bluetooth Controlled Car with Arduino.pdfngoud9212
 
Key Features Of Token Development (1).pptx
Key  Features Of Token  Development (1).pptxKey  Features Of Token  Development (1).pptx
Key Features Of Token Development (1).pptxLBM Solutions
 
Dev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebDev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebUiPathCommunity
 
"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr BaganFwdays
 
WordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your BrandWordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your Brandgvaughan
 
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)Wonjun Hwang
 
Benefits Of Flutter Compared To Other Frameworks
Benefits Of Flutter Compared To Other FrameworksBenefits Of Flutter Compared To Other Frameworks
Benefits Of Flutter Compared To Other FrameworksSoftradix Technologies
 
"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii SoldatenkoFwdays
 
Pigging Solutions in Pet Food Manufacturing
Pigging Solutions in Pet Food ManufacturingPigging Solutions in Pet Food Manufacturing
Pigging Solutions in Pet Food ManufacturingPigging Solutions
 

Recently uploaded (20)

APIForce Zurich 5 April Automation LPDG
APIForce Zurich 5 April  Automation LPDGAPIForce Zurich 5 April  Automation LPDG
APIForce Zurich 5 April Automation LPDG
 
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationBeyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
 
Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024
 
AI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsAI as an Interface for Commercial Buildings
AI as an Interface for Commercial Buildings
 
Unblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesUnblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen Frames
 
Scanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsScanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL Certs
 
Human Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsHuman Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR Systems
 
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
 
Streamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupStreamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project Setup
 
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
 
Bluetooth Controlled Car with Arduino.pdf
Bluetooth Controlled Car with Arduino.pdfBluetooth Controlled Car with Arduino.pdf
Bluetooth Controlled Car with Arduino.pdf
 
Key Features Of Token Development (1).pptx
Key  Features Of Token  Development (1).pptxKey  Features Of Token  Development (1).pptx
Key Features Of Token Development (1).pptx
 
DMCC Future of Trade Web3 - Special Edition
DMCC Future of Trade Web3 - Special EditionDMCC Future of Trade Web3 - Special Edition
DMCC Future of Trade Web3 - Special Edition
 
Dev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebDev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio Web
 
"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan
 
WordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your BrandWordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your Brand
 
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
 
Benefits Of Flutter Compared To Other Frameworks
Benefits Of Flutter Compared To Other FrameworksBenefits Of Flutter Compared To Other Frameworks
Benefits Of Flutter Compared To Other Frameworks
 
"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko
 
Pigging Solutions in Pet Food Manufacturing
Pigging Solutions in Pet Food ManufacturingPigging Solutions in Pet Food Manufacturing
Pigging Solutions in Pet Food Manufacturing
 

Versa cloud slide-deck-02-technical-introduction

  • 1. Transactions as a Service Technical IntroductionTechnical Introduction
  • 3. Just think... To watch And feelThere are moments You enjoy Did you ever think what happens ‘behind the scenes’?
  • 4. The World could be easier! The current world The better world face this, to get this, and feel like this.You arrive here, to use this, authenticate at the entrance,You buy your ticket from where you are, and enjoy the game going through zero stress Let’s build this together!
  • 5. Tickeeeeeets!!!! Tens of Thousands of fans Many requests over a very short period Many servers and services involved Denial of Service Attacks Lost connections Incomplete Transactions Customer Churn Bank Servers Credit Card Servers Stadium Servers Others Challenges
  • 7. Architecture Overview Cloud-Based Transaction Manager Back-end Servers Computer Programs Browsers & IoT Gadgets Mobile Devices
  • 8. Real-world Transaction Requirements You check for ticket availability Stadium ServerStadium App Credit Card Server Bank Server You buy your ticket Your bank or CC gets charged Stadium bank balance is credited Stadium confirms your seat Stadium locks your seat You enter through the ticket gate Stadium server notifies your smartphone You ignore it, because you’re already happily watching the game You ignore it, because you’re already happily watching the game
  • 9. Transactions: Relational x Cloud Cloud • Sequence of individual operations consisting of calls into various back-end servers Relational • Sequence of individual operations that apply changes to a SINGLE database, to be applied only if all of them produce no errors
  • 10. Time-Limited Transactions Unstable Connections Battery- based devices Incomplete Transactions Solved by Time Limitation ‘Timeout’ concept ‘Timeout’ concept Applied to Transactions Applied to Transactions Maximum Running Time Maximum Running Time The latest at transaction execution request (MethodInvokeAllow) The latest at transaction execution request (MethodInvokeAllow)
  • 12. Each Solution is composed by a set of Methods SolutionSolution MethodMethod MethodMethod MethodMethod MethodMethod MethodMethod ...... BackendBackend Callback Callback Callback Callback Callback Callback Callback Callback BackendBackend Transaction #1Transaction #1 Transaction #4Transaction #4 Transaction #6Transaction #6 Transaction #7Transaction #7 Transaction #...Transaction #... Transaction #2Transaction #2 Transaction #3Transaction #3 Transaction #5Transaction #5 • Transactions are instances of running methods • Need to be specified by developers beforehand • Each individual method can call into various back-end servers Defining Transaction
  • 13. Traditional Transactions Begin Transaction If IsError(Operation1) Then Rollback : Exit If IsError(Operation2) Then Rollback : Exit … If IsError(Operationn) Then Rollback : Exit Commit Transaction Allow Transaction MaxRunTime Operation1 Operation2 … Operationn Commit Transaction Time-Limited Transactions Server rollbacks automatically upon expiration Unless Commit received in less than MaxRunTime Simplified Contract & Coding
  • 14. VersaCloud'sBoundary Transaction Execution Backend ServerBackend Server Up to 14 parameters Front-end connector API CallAPI Call 111 VersaCloud’s Transaction EngineVersaCloud’s Transaction Engine User App/DeviceUser App/Device Subset of API parameters 222 Front-end Boundary Back-end Boundary WebServiceWebService Stored ProcedureStored Procedure JSON Other Protocols SameSubset of API parameters One Return Value Backend ConnectorBackend Connector One Return Value One Return Value Can be 333444 555 666
  • 15. Transaction Parameters For more details see: https://www.mbi.com.br/mbi/english/versacloud/type-index/ Strongly-typedStrongly-typed ERRORERROR detected refused reported Back-end servers totally shielded from errors
  • 16. Global Recalling Limitations By limiting its availability to cloud applications Manage Backend Server CapacityManage Backend Server Capacity
  • 17. User Recalling Limitations By specifying a minimum interval between consecutive calls Limit Consecutive User RequestsLimit Consecutive User Requests
  • 18. Semantic Recalling Limitation Additional transaction(s) with same key values gets refused until previous one completes or times out Additional transaction(s) with same key values gets refused until previous one completes or times out Set of 'key parameters' called 'Reentrancy Lock Key' Set of 'key parameters' called 'Reentrancy Lock Key' FromFrom ToTo AmountAmount TransactionTransaction A B 500 TransactionTransaction F G 200 TransactionTransaction C Z 350 TransactionTransaction D A 1200 Active Transactions Queue partial representation A B 600 Additional TransactionAdditional Transaction
  • 19. Reliable Transactions Stadium App MethodInvokeAllow Normal Callback #1 Normal Callback #2 time Callback #3 Error! Transaction enters RollBack state Rollback Callback #2 Rollback Callback #1 Optional Rollback Callbacks notify back-end servers about cancelled transactions Optional Rollback Callbacks notify back-end servers about cancelled transactions
  • 22. Monetizable Transactions • User accounts have an associated credit balance • Can be charged to run specific transactions • Transactions will not be 'Allow'-ed if not enough balance available • Transaction costs automatically returned to user account in case of rollbacked transactions • Users can obtain credits through: • On-line purchase • Managed user groups they are part of Balance 3,799 Reload Very Small Charges per transaction Very Small Charges per transaction Overcoming costs of current payment systems
  • 23. Developer Friendly Environment Strong Type System Strict ChecksStrict Checks API Parameters API Parameters Return Values Return Values Frontend BackendBackend& Detailed Feedback to ERRORSDetailed Feedback to ERRORS Almost 1.000 detailed error messages Extensible by your Solutions Currently available in English, Spanish and Brazilian Portuguese Extensible into as many languages as required Both for native and your APIs Multilingual DocumentationMultilingual Documentation
  • 24. VersaCloud API Overview UsersUsers SolutionsSolutions MethodsMethods ErrorCodesErrorCodes ParametersParameters MethodRightsMethodRightsUserRightsUserRights Call LogCall Log UpgradesUpgrades GroupsGroups PropertiesProperties CallbacksCallbacks RightsRights SolutionTokensSolutionTokens M embersof Own Members of Require Define Customize Need to have Secured by Every CallEvery Call Members of Receive  Invoke Return  Receive 
  • 25. Explore the right balance! Innovate – or leave the game Better usage of existing resources
  • 26. Join us NOW! Complete documentation, tutorials and case studies available at www.versacloud.technology Get in touch! mailto:mac@matza.group whatsapp: +55 11 98281-2442 mailto:rocmayer@mbi.com.br whatsapp: +55 11 99216 9776 callto:+55 11 3230 6850