SlideShare ist ein Scribd-Unternehmen logo
1 von 23
From Monolith to
Microservices:
Why Building Smaller
Creates Opportunity for
Cleaner Code, Scalability
Thierry Danard,
INT VP of Core Platform Technologies
Steven Reynolds,
INT Senior Product Manager
2© 2018 Interactive Network Technologies, Inc.
Steven Reynolds
Senior Product Manager
Thierry Danard
VP Core Platform Technologies
Speakers
Passionate about engineering and dedicated to
creating software that truly helps and inspires
clients, Thierry Danard is the driving force behind
INTViewer and the architect of INT’s IVAAP
backend. Thierry obtained a computer science
engineering degree from ENSEEIHT and is an
active member of the NetBeans community.
Highly skilled at software development,
middleware, database software, and visualization
software, Steven Reynolds received his BSEE
from University of Texas at Austin and his PhD in
electrical engineering from Rice University. At
INT, Steven guides innovation in microservices
architecture, back end data access management,
and integration for major oil and gas companies
around the world.
3© 2018 Interactive Network Technologies, Inc.
80Software
Engineers,
fully dedicated to
the oil & gas
industry
110+leading E&P companies
use INT for complex
data visualization
25+years as an
established software
company
Expertise in E&P Visualization and Data
Access Libraries & Platforms in the Cloud
GRAPHIC & WIDGET
LIBRARIES
DATA VISUALIZATION
PLATFORM
Developer toolkit for G&G, E&P
2D and 3D visualization
Cloud and mobile-enabled (HTML5)
data visualization enterprise framework
Services
IVAAP
GeoToolkit
CUSTOM VISUALIZATION
DEVELOPMENT
About INT
Did you
know??
• INT offers interesting
jobs and
internships
• Many current and
former INT
employees are UH
alumni
• Our founder sits on
UH Dean’s Board
4© 2018 Interactive Network Technologies, Inc.
Why This Topic? Why Now?
The Oil and Gas industry (and many other industries) is using digital technology to transform how they
work.
Disparate System
(Apps, Files,
Data Silos
Move to
Cloud
Data
Service
Business Drivers
• Make data searchable and accessible across the enterprise
• Reduce decision times through Machine Learning, Artificial Intelligence
• Improve efficiency through continuous application delivery and modular and mobile-first architecture
strategy
App
s
ML
AI
Files
App
s
Visu
Real World
Modular Development
(in Java)
Thierry Danard
6© 2018 Interactive Network Technologies, Inc.
What Is Modular Programming?
Small pieces make a bigger whole
Code separation by functionality
Separation of implementation and declaration
Interchangeable implementations
Works well with Object-Oriented Programming.
7© 2018 Interactive Network Technologies, Inc.
Examples of Programs Using Modules
Eclipse IDE
NetBeans IDE
Linux Operating System
IVAAP Backend (Web application)
INTViewer (Desktop application)
IVAAP
INTViewer
8© 2018 Interactive Network Technologies, Inc.
INT is a software company with multiple, major clients.
All of these clients want to use IVAAP, but they all need
customizations to fit their business.
Business View of Modular =
Same Code/Same Build, Different Deployment Options
Why Is Modular Programming Useful?
9© 2018 Interactive Network Technologies, Inc.
Modular Programming: A Good Way to Implement Options
If each time you need to implement an option, you
add a checkbox to some preferences screen, you:
• Make the UI more complex for users who don’t
need these options
• Leak to one of your client competitors what your
client does
Solution: Use some lookup system.
10© 2018 Interactive Network Technologies, Inc.
Modular ProgrammingClassic Programming
Lookup System vs. Options
11© 2018 Interactive Network Technologies, Inc.
Declaration of the Functionality
12© 2018 Interactive Network Technologies, Inc.
Implementations of the Functionality
13© 2018 Interactive Network Technologies, Inc.
Aug 27, 2018 10:23:44 AM
com.interactive.ivaap.lookup.annotations.LookupRegistrat
ionLoader loadSelfRegistrations
INFO: Self registered instance of class
com.interactive.ivaap.sample.FormalGreeter for lookup
class com.interactive.ivaap.sample.AbstractGreeter
Aug 27, 2018 10:23:44 AM
com.interactive.ivaap.lookup.annotations.LookupRegistrat
ionLoader loadSelfRegistrations
INFO: Self registered instance of class
com.interactive.ivaap.sample.CasualGreeter for lookup
class com.interactive.ivaap.sample.AbstractGreeter
@SelfRegistration(lookupClass =
AbstractGreeter.class, position = 200)
public class FormalGreeter extends
AbstractGreeter
@SelfRegistration(lookupClass =
AbstractGreeter.class, position = 100)
public class CasualGreeter extends
AbstractGreeter {
Lookup Implementation
14© 2018 Interactive Network Technologies, Inc.
• More code to write
• More CPU consumed
• Slower startup
• Inspecting binaries for annotations
requires specific Java libraries
• Easy to add more options (for INT and its
customers): no code to change.
• Clean separation of functionality and options:
easy to maintain.
• Deliverables are the options. Options become a
“DevOps” concern, not a programmer concern.
• Developers can be productive with annotations.
• Refactoring class name doesn’t affect behavior.
Benefits vs. Drawbacks
Technical Architecture
Steven Reynolds
16© 2018 Interactive Network Technologies, Inc.
Digital E&P Platform: Enterprise Data Visualization
Digital Oilfield Platform (Exploration, Drilling, Production)
Application Services Integration
Cloud Infrastructure / On-Premise
Basin
Modeling
Enterprise Cloud Viewer (IVAAP)
User Interface
Dashboard-Centric Map-Centric Well-Centric
API/SDK Services
• Custom Data Connector
• Back-End SDK
• Front-End SDK
• Math Engine
• Alarms
Data Aggregation
• WITSML
• SQL
• LAS, DLIS, SEG-Y
• MongoDB
• PPDM
• Peloton Wellview
• P2 Procount
• OSIsoft
Domain Visualization
• WellLog
• Seismic
• Real-Time Monitoring
• Production Monitoring
• Schematics
• Rig Activities
• Drilling
Management
• User-Managed
Dashboard
• Templates
• Admin
• Security
• Auditing
• Dashboard Publishing
• Data Lake Ingestion
• Machine Learning
• Artificial Intelligence
• Analytics
• Workflows
Microservice
s
Architecture
17© 2018 Interactive Network Technologies, Inc.
IVAAP Architecture
JavaScript/HTML5
Client
Play
Akka
Microservices Data
Sources
Node.JS
External Auth Systems
Geoscience
data
User
data
18© 2018 Interactive Network Technologies, Inc.
IVAAP Node.js Architecture
DAL Passport
Basic SAML Cognito
Users Access Control Files
…Postgres
19© 2018 Interactive Network Technologies, Inc.
IVAAP Client Architecture
20© 2018 Interactive Network Technologies, Inc.
IVAAP Geoscience Backend
Play
admin
S3
GIS
Akka
Microservices
http
REST API
AWS S3
SQLSQL
Mongo
SQL db
Mongo
…
21© 2018 Interactive Network Technologies, Inc.
Akka Actors
• Messaging independent of route
• Can go across machines
• Natural mapping to what’s possible
• Built-in load-balancing, clusters, …
Play Framework
• Modern dynamic web server
• Asynchronous I/O
• Not thread per request
• Easy Integration with Akka
IVAAP Geoscience Backend
22© 2018 Interactive Network Technologies, Inc.
Akka Actors
• Messaging independent of route
• Can go across machines
• Natural mapping to what’s possible
• Built-in load-balancing, clusters, …
Play Framework
• Modern dynamic web server
• Asynchronous I/O
• Not thread per request
• Easy Integration with Akka
IVAAP Geoscience Backend
Benefits
• Horizontal scaling
• Simpler errors
• Easy robustness and fault tolerance
Thank You

Weitere ähnliche Inhalte

Was ist angesagt?

TechWiseTV Workshop: Improving Performance and Agility with Cisco HyperFlex
TechWiseTV Workshop: Improving Performance and Agility with Cisco HyperFlexTechWiseTV Workshop: Improving Performance and Agility with Cisco HyperFlex
TechWiseTV Workshop: Improving Performance and Agility with Cisco HyperFlexRobb Boyd
 
Migite presents iLeap, the premier low code application development platform
Migite presents iLeap, the premier low code application development platformMigite presents iLeap, the premier low code application development platform
Migite presents iLeap, the premier low code application development platformGejamuganLatsoomanan2
 
Running Data Platforms Like Products
Running Data Platforms Like ProductsRunning Data Platforms Like Products
Running Data Platforms Like ProductsVMware Tanzu
 
IBM Hybrid integration reference architecture for digital transformation
IBM Hybrid integration reference architecture for digital transformationIBM Hybrid integration reference architecture for digital transformation
IBM Hybrid integration reference architecture for digital transformationJawad Jari, Enterprise Architect
 
Encanvas digital transformation data sheet
Encanvas digital transformation data sheetEncanvas digital transformation data sheet
Encanvas digital transformation data sheetNewton Day Uploads
 
EdgeX Foundry - Open Interop Platform for the IoT Edge.
EdgeX  Foundry - Open Interop Platform for the IoT Edge. EdgeX  Foundry - Open Interop Platform for the IoT Edge.
EdgeX Foundry - Open Interop Platform for the IoT Edge. Barton George
 
Bringing Digital Transformation Into Focus
Bringing Digital Transformation Into FocusBringing Digital Transformation Into Focus
Bringing Digital Transformation Into FocusInductive Automation
 
What all it takes to build a successful hybrid integration strategy?
What all it takes to build a successful hybrid integration strategy? What all it takes to build a successful hybrid integration strategy?
What all it takes to build a successful hybrid integration strategy? Kellton Tech Solutions Ltd
 
Cross Section and Deep Dive into GE Predix
Cross Section and Deep Dive into GE PredixCross Section and Deep Dive into GE Predix
Cross Section and Deep Dive into GE PredixAltoros
 
Cloud Native Batch Processing: Beyond the What and How
Cloud Native Batch Processing: Beyond the What and HowCloud Native Batch Processing: Beyond the What and How
Cloud Native Batch Processing: Beyond the What and HowVMware Tanzu
 
Re-Architect Your Legacy Environment To Enable An Agile, Future-Ready Enterprise
Re-Architect Your Legacy Environment To Enable An Agile, Future-Ready EnterpriseRe-Architect Your Legacy Environment To Enable An Agile, Future-Ready Enterprise
Re-Architect Your Legacy Environment To Enable An Agile, Future-Ready EnterpriseDell World
 
Mobile Enterprise Application Platform
Mobile Enterprise Application PlatformMobile Enterprise Application Platform
Mobile Enterprise Application PlatformNugroho Gito
 
[WSO2Con USA 2018] Integration Is The New App Foundation
[WSO2Con USA 2018] Integration Is The New App Foundation[WSO2Con USA 2018] Integration Is The New App Foundation
[WSO2Con USA 2018] Integration Is The New App FoundationWSO2
 
Design, Innovate, Digitize. Building Skills to Solve Future Problems
Design, Innovate, Digitize. Building Skills to Solve Future ProblemsDesign, Innovate, Digitize. Building Skills to Solve Future Problems
Design, Innovate, Digitize. Building Skills to Solve Future ProblemsCisco DevNet
 
How to Assure Performance in Hybrid Cloud Ecosystems
How to Assure Performance in Hybrid Cloud EcosystemsHow to Assure Performance in Hybrid Cloud Ecosystems
How to Assure Performance in Hybrid Cloud EcosystemseG Innovations
 
The Evolution of Integration
The Evolution of IntegrationThe Evolution of Integration
The Evolution of IntegrationSoftware AG
 
[WSO2Con EU 2018] Will Your Agile Practices be the Death of Architecture?
[WSO2Con EU 2018] Will Your Agile Practices be the Death of Architecture?[WSO2Con EU 2018] Will Your Agile Practices be the Death of Architecture?
[WSO2Con EU 2018] Will Your Agile Practices be the Death of Architecture?WSO2
 

Was ist angesagt? (20)

Developing Digital Twins
Developing Digital TwinsDeveloping Digital Twins
Developing Digital Twins
 
TechWiseTV Workshop: Improving Performance and Agility with Cisco HyperFlex
TechWiseTV Workshop: Improving Performance and Agility with Cisco HyperFlexTechWiseTV Workshop: Improving Performance and Agility with Cisco HyperFlex
TechWiseTV Workshop: Improving Performance and Agility with Cisco HyperFlex
 
Migite presents iLeap, the premier low code application development platform
Migite presents iLeap, the premier low code application development platformMigite presents iLeap, the premier low code application development platform
Migite presents iLeap, the premier low code application development platform
 
Mendix Factsheet
Mendix  FactsheetMendix  Factsheet
Mendix Factsheet
 
Running Data Platforms Like Products
Running Data Platforms Like ProductsRunning Data Platforms Like Products
Running Data Platforms Like Products
 
IBM Hybrid integration reference architecture for digital transformation
IBM Hybrid integration reference architecture for digital transformationIBM Hybrid integration reference architecture for digital transformation
IBM Hybrid integration reference architecture for digital transformation
 
IBM bBluemix to accelerate your digital transformation
IBM bBluemix to accelerate your digital transformationIBM bBluemix to accelerate your digital transformation
IBM bBluemix to accelerate your digital transformation
 
Encanvas digital transformation data sheet
Encanvas digital transformation data sheetEncanvas digital transformation data sheet
Encanvas digital transformation data sheet
 
EdgeX Foundry - Open Interop Platform for the IoT Edge.
EdgeX  Foundry - Open Interop Platform for the IoT Edge. EdgeX  Foundry - Open Interop Platform for the IoT Edge.
EdgeX Foundry - Open Interop Platform for the IoT Edge.
 
Bringing Digital Transformation Into Focus
Bringing Digital Transformation Into FocusBringing Digital Transformation Into Focus
Bringing Digital Transformation Into Focus
 
What all it takes to build a successful hybrid integration strategy?
What all it takes to build a successful hybrid integration strategy? What all it takes to build a successful hybrid integration strategy?
What all it takes to build a successful hybrid integration strategy?
 
Cross Section and Deep Dive into GE Predix
Cross Section and Deep Dive into GE PredixCross Section and Deep Dive into GE Predix
Cross Section and Deep Dive into GE Predix
 
Cloud Native Batch Processing: Beyond the What and How
Cloud Native Batch Processing: Beyond the What and HowCloud Native Batch Processing: Beyond the What and How
Cloud Native Batch Processing: Beyond the What and How
 
Re-Architect Your Legacy Environment To Enable An Agile, Future-Ready Enterprise
Re-Architect Your Legacy Environment To Enable An Agile, Future-Ready EnterpriseRe-Architect Your Legacy Environment To Enable An Agile, Future-Ready Enterprise
Re-Architect Your Legacy Environment To Enable An Agile, Future-Ready Enterprise
 
Mobile Enterprise Application Platform
Mobile Enterprise Application PlatformMobile Enterprise Application Platform
Mobile Enterprise Application Platform
 
[WSO2Con USA 2018] Integration Is The New App Foundation
[WSO2Con USA 2018] Integration Is The New App Foundation[WSO2Con USA 2018] Integration Is The New App Foundation
[WSO2Con USA 2018] Integration Is The New App Foundation
 
Design, Innovate, Digitize. Building Skills to Solve Future Problems
Design, Innovate, Digitize. Building Skills to Solve Future ProblemsDesign, Innovate, Digitize. Building Skills to Solve Future Problems
Design, Innovate, Digitize. Building Skills to Solve Future Problems
 
How to Assure Performance in Hybrid Cloud Ecosystems
How to Assure Performance in Hybrid Cloud EcosystemsHow to Assure Performance in Hybrid Cloud Ecosystems
How to Assure Performance in Hybrid Cloud Ecosystems
 
The Evolution of Integration
The Evolution of IntegrationThe Evolution of Integration
The Evolution of Integration
 
[WSO2Con EU 2018] Will Your Agile Practices be the Death of Architecture?
[WSO2Con EU 2018] Will Your Agile Practices be the Death of Architecture?[WSO2Con EU 2018] Will Your Agile Practices be the Death of Architecture?
[WSO2Con EU 2018] Will Your Agile Practices be the Death of Architecture?
 

Ähnlich wie INT Inc | Benefits of a Microservices Architecture

Mindsphere: an open cloud-based IoT operating system for Industry
Mindsphere: an open cloud-based IoT operating system for IndustryMindsphere: an open cloud-based IoT operating system for Industry
Mindsphere: an open cloud-based IoT operating system for IndustryIIoTWorld
 
Digital Reinvention by NRB
Digital Reinvention by NRBDigital Reinvention by NRB
Digital Reinvention by NRBWilliam Poos
 
Platform Strategy to Deliver Digital Experiences on Azure
Platform Strategy to Deliver Digital Experiences on AzurePlatform Strategy to Deliver Digital Experiences on Azure
Platform Strategy to Deliver Digital Experiences on AzureWSO2
 
Veritas + MongoDB
Veritas + MongoDBVeritas + MongoDB
Veritas + MongoDBMongoDB
 
Learn Why your Technology Toolkit needs a Low Code Platform Upgrade!
Learn Why your Technology Toolkit needs a Low Code Platform Upgrade!Learn Why your Technology Toolkit needs a Low Code Platform Upgrade!
Learn Why your Technology Toolkit needs a Low Code Platform Upgrade!JessiRyan1
 
Ihs juniper webinar disaggrgation&automation-2019
Ihs juniper webinar disaggrgation&automation-2019Ihs juniper webinar disaggrgation&automation-2019
Ihs juniper webinar disaggrgation&automation-2019domenico di mola
 
Optimize your CI/CD with GitLab and AWS
Optimize your CI/CD with GitLab and AWSOptimize your CI/CD with GitLab and AWS
Optimize your CI/CD with GitLab and AWSDevOps.com
 
How to monitor all aspects of Citrix NetScaler usage and performance within t...
How to monitor all aspects of Citrix NetScaler usage and performance within t...How to monitor all aspects of Citrix NetScaler usage and performance within t...
How to monitor all aspects of Citrix NetScaler usage and performance within t...eG Innovations
 
Intelligent data summit: Self-Service Big Data and AI/ML: Reality or Myth?
Intelligent data summit: Self-Service Big Data and AI/ML: Reality or Myth?Intelligent data summit: Self-Service Big Data and AI/ML: Reality or Myth?
Intelligent data summit: Self-Service Big Data and AI/ML: Reality or Myth?SnapLogic
 
New Delhi Cloud Summit 05 26-11
New Delhi Cloud Summit 05 26-11New Delhi Cloud Summit 05 26-11
New Delhi Cloud Summit 05 26-11Dileep Bhandarkar
 
LeanIX TBM Conference 2018
LeanIX TBM Conference 2018LeanIX TBM Conference 2018
LeanIX TBM Conference 2018LeanIX GmbH
 
¿Cómo las manufacturas están evolucionando hacia la Industria 4.0 con la virt...
¿Cómo las manufacturas están evolucionando hacia la Industria 4.0 con la virt...¿Cómo las manufacturas están evolucionando hacia la Industria 4.0 con la virt...
¿Cómo las manufacturas están evolucionando hacia la Industria 4.0 con la virt...Denodo
 
Getting Started: How to Set Up Your "Data as a Feature" Project
Getting Started: How to Set Up Your "Data as a Feature" ProjectGetting Started: How to Set Up Your "Data as a Feature" Project
Getting Started: How to Set Up Your "Data as a Feature" ProjectTIBCO Jaspersoft
 
Managing the End User Experience with GPU-Powered Insights
Managing the End User Experience with GPU-Powered InsightsManaging the End User Experience with GPU-Powered Insights
Managing the End User Experience with GPU-Powered InsightseG Innovations
 
Cubitic: Predictive Analytics
Cubitic: Predictive AnalyticsCubitic: Predictive Analytics
Cubitic: Predictive Analyticshuguk
 
CloudOne Continuous Engineering for IoT
CloudOne Continuous Engineering for IoTCloudOne Continuous Engineering for IoT
CloudOne Continuous Engineering for IoTBenjamin Chodroff
 
Webinar VB6 apps to html5
Webinar VB6 apps to html5Webinar VB6 apps to html5
Webinar VB6 apps to html5Gizmox
 
Gartner 2017 London: How to re-invent your IT Architecture?
Gartner 2017 London: How to re-invent your IT Architecture?Gartner 2017 London: How to re-invent your IT Architecture?
Gartner 2017 London: How to re-invent your IT Architecture?LeanIX GmbH
 
Software panel
Software panelSoftware panel
Software panelMassTLC
 
Datenstrategie der Zukunft - Technologietrends, die Sie kennen müssen
Datenstrategie der Zukunft - Technologietrends, die Sie kennen müssenDatenstrategie der Zukunft - Technologietrends, die Sie kennen müssen
Datenstrategie der Zukunft - Technologietrends, die Sie kennen müssenDenodo
 

Ähnlich wie INT Inc | Benefits of a Microservices Architecture (20)

Mindsphere: an open cloud-based IoT operating system for Industry
Mindsphere: an open cloud-based IoT operating system for IndustryMindsphere: an open cloud-based IoT operating system for Industry
Mindsphere: an open cloud-based IoT operating system for Industry
 
Digital Reinvention by NRB
Digital Reinvention by NRBDigital Reinvention by NRB
Digital Reinvention by NRB
 
Platform Strategy to Deliver Digital Experiences on Azure
Platform Strategy to Deliver Digital Experiences on AzurePlatform Strategy to Deliver Digital Experiences on Azure
Platform Strategy to Deliver Digital Experiences on Azure
 
Veritas + MongoDB
Veritas + MongoDBVeritas + MongoDB
Veritas + MongoDB
 
Learn Why your Technology Toolkit needs a Low Code Platform Upgrade!
Learn Why your Technology Toolkit needs a Low Code Platform Upgrade!Learn Why your Technology Toolkit needs a Low Code Platform Upgrade!
Learn Why your Technology Toolkit needs a Low Code Platform Upgrade!
 
Ihs juniper webinar disaggrgation&automation-2019
Ihs juniper webinar disaggrgation&automation-2019Ihs juniper webinar disaggrgation&automation-2019
Ihs juniper webinar disaggrgation&automation-2019
 
Optimize your CI/CD with GitLab and AWS
Optimize your CI/CD with GitLab and AWSOptimize your CI/CD with GitLab and AWS
Optimize your CI/CD with GitLab and AWS
 
How to monitor all aspects of Citrix NetScaler usage and performance within t...
How to monitor all aspects of Citrix NetScaler usage and performance within t...How to monitor all aspects of Citrix NetScaler usage and performance within t...
How to monitor all aspects of Citrix NetScaler usage and performance within t...
 
Intelligent data summit: Self-Service Big Data and AI/ML: Reality or Myth?
Intelligent data summit: Self-Service Big Data and AI/ML: Reality or Myth?Intelligent data summit: Self-Service Big Data and AI/ML: Reality or Myth?
Intelligent data summit: Self-Service Big Data and AI/ML: Reality or Myth?
 
New Delhi Cloud Summit 05 26-11
New Delhi Cloud Summit 05 26-11New Delhi Cloud Summit 05 26-11
New Delhi Cloud Summit 05 26-11
 
LeanIX TBM Conference 2018
LeanIX TBM Conference 2018LeanIX TBM Conference 2018
LeanIX TBM Conference 2018
 
¿Cómo las manufacturas están evolucionando hacia la Industria 4.0 con la virt...
¿Cómo las manufacturas están evolucionando hacia la Industria 4.0 con la virt...¿Cómo las manufacturas están evolucionando hacia la Industria 4.0 con la virt...
¿Cómo las manufacturas están evolucionando hacia la Industria 4.0 con la virt...
 
Getting Started: How to Set Up Your "Data as a Feature" Project
Getting Started: How to Set Up Your "Data as a Feature" ProjectGetting Started: How to Set Up Your "Data as a Feature" Project
Getting Started: How to Set Up Your "Data as a Feature" Project
 
Managing the End User Experience with GPU-Powered Insights
Managing the End User Experience with GPU-Powered InsightsManaging the End User Experience with GPU-Powered Insights
Managing the End User Experience with GPU-Powered Insights
 
Cubitic: Predictive Analytics
Cubitic: Predictive AnalyticsCubitic: Predictive Analytics
Cubitic: Predictive Analytics
 
CloudOne Continuous Engineering for IoT
CloudOne Continuous Engineering for IoTCloudOne Continuous Engineering for IoT
CloudOne Continuous Engineering for IoT
 
Webinar VB6 apps to html5
Webinar VB6 apps to html5Webinar VB6 apps to html5
Webinar VB6 apps to html5
 
Gartner 2017 London: How to re-invent your IT Architecture?
Gartner 2017 London: How to re-invent your IT Architecture?Gartner 2017 London: How to re-invent your IT Architecture?
Gartner 2017 London: How to re-invent your IT Architecture?
 
Software panel
Software panelSoftware panel
Software panel
 
Datenstrategie der Zukunft - Technologietrends, die Sie kennen müssen
Datenstrategie der Zukunft - Technologietrends, die Sie kennen müssenDatenstrategie der Zukunft - Technologietrends, die Sie kennen müssen
Datenstrategie der Zukunft - Technologietrends, die Sie kennen müssen
 

Kürzlich hochgeladen

A Secure and Reliable Document Management System is Essential.docx
A Secure and Reliable Document Management System is Essential.docxA Secure and Reliable Document Management System is Essential.docx
A Secure and Reliable Document Management System is Essential.docxComplianceQuest1
 
Hand gesture recognition PROJECT PPT.pptx
Hand gesture recognition PROJECT PPT.pptxHand gesture recognition PROJECT PPT.pptx
Hand gesture recognition PROJECT PPT.pptxbodapatigopi8531
 
Test Automation Strategy for Frontend and Backend
Test Automation Strategy for Frontend and BackendTest Automation Strategy for Frontend and Backend
Test Automation Strategy for Frontend and BackendArshad QA
 
Advancing Engineering with AI through the Next Generation of Strategic Projec...
Advancing Engineering with AI through the Next Generation of Strategic Projec...Advancing Engineering with AI through the Next Generation of Strategic Projec...
Advancing Engineering with AI through the Next Generation of Strategic Projec...OnePlan Solutions
 
Building Real-Time Data Pipelines: Stream & Batch Processing workshop Slide
Building Real-Time Data Pipelines: Stream & Batch Processing workshop SlideBuilding Real-Time Data Pipelines: Stream & Batch Processing workshop Slide
Building Real-Time Data Pipelines: Stream & Batch Processing workshop SlideChristina Lin
 
Adobe Marketo Engage Deep Dives: Using Webhooks to Transfer Data
Adobe Marketo Engage Deep Dives: Using Webhooks to Transfer DataAdobe Marketo Engage Deep Dives: Using Webhooks to Transfer Data
Adobe Marketo Engage Deep Dives: Using Webhooks to Transfer DataBradBedford3
 
Unlocking the Future of AI Agents with Large Language Models
Unlocking the Future of AI Agents with Large Language ModelsUnlocking the Future of AI Agents with Large Language Models
Unlocking the Future of AI Agents with Large Language Modelsaagamshah0812
 
Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...
Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...
Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...MyIntelliSource, Inc.
 
Project Based Learning (A.I).pptx detail explanation
Project Based Learning (A.I).pptx detail explanationProject Based Learning (A.I).pptx detail explanation
Project Based Learning (A.I).pptx detail explanationkaushalgiri8080
 
5 Signs You Need a Fashion PLM Software.pdf
5 Signs You Need a Fashion PLM Software.pdf5 Signs You Need a Fashion PLM Software.pdf
5 Signs You Need a Fashion PLM Software.pdfWave PLM
 
DNT_Corporate presentation know about us
DNT_Corporate presentation know about usDNT_Corporate presentation know about us
DNT_Corporate presentation know about usDynamic Netsoft
 
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdfLearn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdfkalichargn70th171
 
Active Directory Penetration Testing, cionsystems.com.pdf
Active Directory Penetration Testing, cionsystems.com.pdfActive Directory Penetration Testing, cionsystems.com.pdf
Active Directory Penetration Testing, cionsystems.com.pdfCionsystems
 
Optimizing AI for immediate response in Smart CCTV
Optimizing AI for immediate response in Smart CCTVOptimizing AI for immediate response in Smart CCTV
Optimizing AI for immediate response in Smart CCTVshikhaohhpro
 
CALL ON ➥8923113531 🔝Call Girls Kakori Lucknow best sexual service Online ☂️
CALL ON ➥8923113531 🔝Call Girls Kakori Lucknow best sexual service Online  ☂️CALL ON ➥8923113531 🔝Call Girls Kakori Lucknow best sexual service Online  ☂️
CALL ON ➥8923113531 🔝Call Girls Kakori Lucknow best sexual service Online ☂️anilsa9823
 
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...MyIntelliSource, Inc.
 
Der Spagat zwischen BIAS und FAIRNESS (2024)
Der Spagat zwischen BIAS und FAIRNESS (2024)Der Spagat zwischen BIAS und FAIRNESS (2024)
Der Spagat zwischen BIAS und FAIRNESS (2024)OPEN KNOWLEDGE GmbH
 
Professional Resume Template for Software Developers
Professional Resume Template for Software DevelopersProfessional Resume Template for Software Developers
Professional Resume Template for Software DevelopersVinodh Ram
 
Salesforce Certified Field Service Consultant
Salesforce Certified Field Service ConsultantSalesforce Certified Field Service Consultant
Salesforce Certified Field Service ConsultantAxelRicardoTrocheRiq
 
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...harshavardhanraghave
 

Kürzlich hochgeladen (20)

A Secure and Reliable Document Management System is Essential.docx
A Secure and Reliable Document Management System is Essential.docxA Secure and Reliable Document Management System is Essential.docx
A Secure and Reliable Document Management System is Essential.docx
 
Hand gesture recognition PROJECT PPT.pptx
Hand gesture recognition PROJECT PPT.pptxHand gesture recognition PROJECT PPT.pptx
Hand gesture recognition PROJECT PPT.pptx
 
Test Automation Strategy for Frontend and Backend
Test Automation Strategy for Frontend and BackendTest Automation Strategy for Frontend and Backend
Test Automation Strategy for Frontend and Backend
 
Advancing Engineering with AI through the Next Generation of Strategic Projec...
Advancing Engineering with AI through the Next Generation of Strategic Projec...Advancing Engineering with AI through the Next Generation of Strategic Projec...
Advancing Engineering with AI through the Next Generation of Strategic Projec...
 
Building Real-Time Data Pipelines: Stream & Batch Processing workshop Slide
Building Real-Time Data Pipelines: Stream & Batch Processing workshop SlideBuilding Real-Time Data Pipelines: Stream & Batch Processing workshop Slide
Building Real-Time Data Pipelines: Stream & Batch Processing workshop Slide
 
Adobe Marketo Engage Deep Dives: Using Webhooks to Transfer Data
Adobe Marketo Engage Deep Dives: Using Webhooks to Transfer DataAdobe Marketo Engage Deep Dives: Using Webhooks to Transfer Data
Adobe Marketo Engage Deep Dives: Using Webhooks to Transfer Data
 
Unlocking the Future of AI Agents with Large Language Models
Unlocking the Future of AI Agents with Large Language ModelsUnlocking the Future of AI Agents with Large Language Models
Unlocking the Future of AI Agents with Large Language Models
 
Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...
Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...
Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...
 
Project Based Learning (A.I).pptx detail explanation
Project Based Learning (A.I).pptx detail explanationProject Based Learning (A.I).pptx detail explanation
Project Based Learning (A.I).pptx detail explanation
 
5 Signs You Need a Fashion PLM Software.pdf
5 Signs You Need a Fashion PLM Software.pdf5 Signs You Need a Fashion PLM Software.pdf
5 Signs You Need a Fashion PLM Software.pdf
 
DNT_Corporate presentation know about us
DNT_Corporate presentation know about usDNT_Corporate presentation know about us
DNT_Corporate presentation know about us
 
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdfLearn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
 
Active Directory Penetration Testing, cionsystems.com.pdf
Active Directory Penetration Testing, cionsystems.com.pdfActive Directory Penetration Testing, cionsystems.com.pdf
Active Directory Penetration Testing, cionsystems.com.pdf
 
Optimizing AI for immediate response in Smart CCTV
Optimizing AI for immediate response in Smart CCTVOptimizing AI for immediate response in Smart CCTV
Optimizing AI for immediate response in Smart CCTV
 
CALL ON ➥8923113531 🔝Call Girls Kakori Lucknow best sexual service Online ☂️
CALL ON ➥8923113531 🔝Call Girls Kakori Lucknow best sexual service Online  ☂️CALL ON ➥8923113531 🔝Call Girls Kakori Lucknow best sexual service Online  ☂️
CALL ON ➥8923113531 🔝Call Girls Kakori Lucknow best sexual service Online ☂️
 
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
 
Der Spagat zwischen BIAS und FAIRNESS (2024)
Der Spagat zwischen BIAS und FAIRNESS (2024)Der Spagat zwischen BIAS und FAIRNESS (2024)
Der Spagat zwischen BIAS und FAIRNESS (2024)
 
Professional Resume Template for Software Developers
Professional Resume Template for Software DevelopersProfessional Resume Template for Software Developers
Professional Resume Template for Software Developers
 
Salesforce Certified Field Service Consultant
Salesforce Certified Field Service ConsultantSalesforce Certified Field Service Consultant
Salesforce Certified Field Service Consultant
 
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...
 

INT Inc | Benefits of a Microservices Architecture

  • 1. From Monolith to Microservices: Why Building Smaller Creates Opportunity for Cleaner Code, Scalability Thierry Danard, INT VP of Core Platform Technologies Steven Reynolds, INT Senior Product Manager
  • 2. 2© 2018 Interactive Network Technologies, Inc. Steven Reynolds Senior Product Manager Thierry Danard VP Core Platform Technologies Speakers Passionate about engineering and dedicated to creating software that truly helps and inspires clients, Thierry Danard is the driving force behind INTViewer and the architect of INT’s IVAAP backend. Thierry obtained a computer science engineering degree from ENSEEIHT and is an active member of the NetBeans community. Highly skilled at software development, middleware, database software, and visualization software, Steven Reynolds received his BSEE from University of Texas at Austin and his PhD in electrical engineering from Rice University. At INT, Steven guides innovation in microservices architecture, back end data access management, and integration for major oil and gas companies around the world.
  • 3. 3© 2018 Interactive Network Technologies, Inc. 80Software Engineers, fully dedicated to the oil & gas industry 110+leading E&P companies use INT for complex data visualization 25+years as an established software company Expertise in E&P Visualization and Data Access Libraries & Platforms in the Cloud GRAPHIC & WIDGET LIBRARIES DATA VISUALIZATION PLATFORM Developer toolkit for G&G, E&P 2D and 3D visualization Cloud and mobile-enabled (HTML5) data visualization enterprise framework Services IVAAP GeoToolkit CUSTOM VISUALIZATION DEVELOPMENT About INT Did you know?? • INT offers interesting jobs and internships • Many current and former INT employees are UH alumni • Our founder sits on UH Dean’s Board
  • 4. 4© 2018 Interactive Network Technologies, Inc. Why This Topic? Why Now? The Oil and Gas industry (and many other industries) is using digital technology to transform how they work. Disparate System (Apps, Files, Data Silos Move to Cloud Data Service Business Drivers • Make data searchable and accessible across the enterprise • Reduce decision times through Machine Learning, Artificial Intelligence • Improve efficiency through continuous application delivery and modular and mobile-first architecture strategy App s ML AI Files App s Visu
  • 5. Real World Modular Development (in Java) Thierry Danard
  • 6. 6© 2018 Interactive Network Technologies, Inc. What Is Modular Programming? Small pieces make a bigger whole Code separation by functionality Separation of implementation and declaration Interchangeable implementations Works well with Object-Oriented Programming.
  • 7. 7© 2018 Interactive Network Technologies, Inc. Examples of Programs Using Modules Eclipse IDE NetBeans IDE Linux Operating System IVAAP Backend (Web application) INTViewer (Desktop application) IVAAP INTViewer
  • 8. 8© 2018 Interactive Network Technologies, Inc. INT is a software company with multiple, major clients. All of these clients want to use IVAAP, but they all need customizations to fit their business. Business View of Modular = Same Code/Same Build, Different Deployment Options Why Is Modular Programming Useful?
  • 9. 9© 2018 Interactive Network Technologies, Inc. Modular Programming: A Good Way to Implement Options If each time you need to implement an option, you add a checkbox to some preferences screen, you: • Make the UI more complex for users who don’t need these options • Leak to one of your client competitors what your client does Solution: Use some lookup system.
  • 10. 10© 2018 Interactive Network Technologies, Inc. Modular ProgrammingClassic Programming Lookup System vs. Options
  • 11. 11© 2018 Interactive Network Technologies, Inc. Declaration of the Functionality
  • 12. 12© 2018 Interactive Network Technologies, Inc. Implementations of the Functionality
  • 13. 13© 2018 Interactive Network Technologies, Inc. Aug 27, 2018 10:23:44 AM com.interactive.ivaap.lookup.annotations.LookupRegistrat ionLoader loadSelfRegistrations INFO: Self registered instance of class com.interactive.ivaap.sample.FormalGreeter for lookup class com.interactive.ivaap.sample.AbstractGreeter Aug 27, 2018 10:23:44 AM com.interactive.ivaap.lookup.annotations.LookupRegistrat ionLoader loadSelfRegistrations INFO: Self registered instance of class com.interactive.ivaap.sample.CasualGreeter for lookup class com.interactive.ivaap.sample.AbstractGreeter @SelfRegistration(lookupClass = AbstractGreeter.class, position = 200) public class FormalGreeter extends AbstractGreeter @SelfRegistration(lookupClass = AbstractGreeter.class, position = 100) public class CasualGreeter extends AbstractGreeter { Lookup Implementation
  • 14. 14© 2018 Interactive Network Technologies, Inc. • More code to write • More CPU consumed • Slower startup • Inspecting binaries for annotations requires specific Java libraries • Easy to add more options (for INT and its customers): no code to change. • Clean separation of functionality and options: easy to maintain. • Deliverables are the options. Options become a “DevOps” concern, not a programmer concern. • Developers can be productive with annotations. • Refactoring class name doesn’t affect behavior. Benefits vs. Drawbacks
  • 16. 16© 2018 Interactive Network Technologies, Inc. Digital E&P Platform: Enterprise Data Visualization Digital Oilfield Platform (Exploration, Drilling, Production) Application Services Integration Cloud Infrastructure / On-Premise Basin Modeling Enterprise Cloud Viewer (IVAAP) User Interface Dashboard-Centric Map-Centric Well-Centric API/SDK Services • Custom Data Connector • Back-End SDK • Front-End SDK • Math Engine • Alarms Data Aggregation • WITSML • SQL • LAS, DLIS, SEG-Y • MongoDB • PPDM • Peloton Wellview • P2 Procount • OSIsoft Domain Visualization • WellLog • Seismic • Real-Time Monitoring • Production Monitoring • Schematics • Rig Activities • Drilling Management • User-Managed Dashboard • Templates • Admin • Security • Auditing • Dashboard Publishing • Data Lake Ingestion • Machine Learning • Artificial Intelligence • Analytics • Workflows Microservice s Architecture
  • 17. 17© 2018 Interactive Network Technologies, Inc. IVAAP Architecture JavaScript/HTML5 Client Play Akka Microservices Data Sources Node.JS External Auth Systems Geoscience data User data
  • 18. 18© 2018 Interactive Network Technologies, Inc. IVAAP Node.js Architecture DAL Passport Basic SAML Cognito Users Access Control Files …Postgres
  • 19. 19© 2018 Interactive Network Technologies, Inc. IVAAP Client Architecture
  • 20. 20© 2018 Interactive Network Technologies, Inc. IVAAP Geoscience Backend Play admin S3 GIS Akka Microservices http REST API AWS S3 SQLSQL Mongo SQL db Mongo …
  • 21. 21© 2018 Interactive Network Technologies, Inc. Akka Actors • Messaging independent of route • Can go across machines • Natural mapping to what’s possible • Built-in load-balancing, clusters, … Play Framework • Modern dynamic web server • Asynchronous I/O • Not thread per request • Easy Integration with Akka IVAAP Geoscience Backend
  • 22. 22© 2018 Interactive Network Technologies, Inc. Akka Actors • Messaging independent of route • Can go across machines • Natural mapping to what’s possible • Built-in load-balancing, clusters, … Play Framework • Modern dynamic web server • Asynchronous I/O • Not thread per request • Easy Integration with Akka IVAAP Geoscience Backend Benefits • Horizontal scaling • Simpler errors • Easy robustness and fault tolerance