"Micro-services and how they apply to FinTech" - Eero Pikat, President at BarChart @eeropikat
From CloudCamp Chicago's April 8 2015 event "fintech"
Hosted by Cohesive Networks
3. What is a Microservice?
• Software Architecture / Design Concept
• Software is composed of a series of independent services, each performing a
very specific, small task
• Each service is it's own process, and generally runs over lightweight HTTP
• Architecture demands that a bare minimum of core services have
interdependencies, thus creating a very loose, mostly decoupled set of
services
• Essentially, it's like an API where each function/method is actually it's own
process / server
4. Why use Microservices?
• Ability to upgrade and deploy small parts of an application. Change cycles are service
independent, and upgrades can be small, independently tested, and deployed without major QA
of entire server systems
• Process / Service independence means language and infrastructure independence. Some
services can be in Java and others in Python, Ruby, etc.
• As independent services, you can scale services independently
• Some services are used more heavily than others
• In a monolithic architecture, you must scale the entire server
• Good fit for a Cloud-style or Cloud-driven software architecture
• Limited, well defined impact of individual service failure
5. Microservices in FinTech Apps?
• Natural way of app design
• Both your services and 3rd party services as micro-service eco-system
• Example
• Portfolio / User data management service
• Trading Gateway
• Realtime Market Data provider / service
• Historical Market Data provider / service
• Maps nicely to Cloud-based API solutions such as Barchart OnDemand,Tradier, CQG
• Apps can be built with proper abstraction to allow for "plug and play" changes to service providers