SlideShare a Scribd company logo
1 of 28
Copyright © 2016 Oracle and/or its affiliates. All rights reserved. |
Rapid Development of Node.js
Microservices
Abhinav Shroff
Principal Product Manager
Oracle Development Tools and Frameworks
NetBeans Day
29th April, 2017
Copyright © 2016 Oracle and/or its affiliates. All rights reserved. |
Safe Harbor Statement
The following is intended to outline our general product direction. It is intended for
information purposes only, and may not be incorporated into any contract. It is not a
commitment to deliver any material, code, or functionality, and should not be relied upon
in making purchasing decisions. The development, release, and timing of any features or
functionality described for Oracle’s products remains at the sole discretion of Oracle.
Oracle Confidential – Internal 2
Copyright © 2016 Oracle and/or its affiliates. All rights reserved. |
Program Agenda
About Microservices
Stack and Tools to build Microservices
A Developer’s Perspective
NetBeans for developing a Microservice
Architecture & Summary
1
2
3
4
5
Confidential – Oracle Internal/Restricted/Highly
Restricted
3
Copyright © 2016 Oracle and/or its affiliates. All rights reserved. |
About Microservices
Confidential – Oracle Internal/Restricted/Highly
Restricted
4
Copyright © 2016 Oracle and/or its affiliates. All rights reserved. |
Monolithic Way – Concerns
Confidential – Oracle Internal/Restricted/Highly
Restricted
5
Monolithic
Application
Longer
Development
Lifecycle
Scaling
Complex
Change
Management
Performance
Copyright © 2016 Oracle and/or its affiliates. All rights reserved. | Confidential – Oracle Internal/Restricted/Highly
Restricted
6
What does Microservices offer
A simple unit focused on single business functionality
Simple enough to be owned by a single team
A loosely coupled architecture
Provides freedom to choose tools and languages
Granularity for scaling
Smaller codebase
Quicker deployments
Resilient Systems
Copyright © 2016 Oracle and/or its affiliates. All rights reserved. |
Attributes of a Microservice
Oracle Confidential – Internal 7
Self-
Bootable
Cohesive
Functional
ity
Small &
Clean
Codebase
Loosely
Coupled
Stateless
Independe
ntly
Deployabl
e
Private
Data
Copyright © 2016 Oracle and/or its affiliates. All rights reserved. | Confidential – Oracle Internal/Restricted/Highly
Restricted
8
Building blocks of Microservices
DevOps
Configuration
Mgmt.
API Gateway
Governance
Copyright © 2016 Oracle and/or its affiliates. All rights reserved. |
Stack and Tools to build Microservices
Confidential – Oracle Internal/Restricted/Highly
Restricted
9
Copyright © 2016 Oracle and/or its affiliates. All rights reserved. | Confidential – Oracle Internal/Restricted/Highly
Restricted
10
Technology Stack/Platform for building a Microservice
Application Container Cloud Service Developer Cloud Service
Database Cloud Service
Copyright © 2016 Oracle and/or its affiliates. All rights reserved. | Confidential – Oracle Internal/Restricted/Highly
Restricted
11
Microservices – Node.js makes sense
Single
Thread
Event
Driven
Modular
Javascript
Copyright © 2016 Oracle and/or its affiliates. All rights reserved. | Confidential – Oracle Internal/Restricted/Highly
Restricted
12
Tools for your Help
Hudson
Copyright © 2016 Oracle and/or its affiliates. All rights reserved. |
A Developer’s Perspective
Confidential – Oracle Internal/Restricted/Highly
Restricted
13
Copyright © 2016 Oracle and/or its affiliates. All rights reserved. |
Developer Cloud – A Developer’s Perspective
Confidential – Oracle Internal/Restricted/Highly
Restricted
14
Review Cloud or
On Premises
Dev, Test or
Production
Deploy
Commit
Track & Monitor
Developers
Developer Service
Hudson
Grunt
GIT
Tasks
Wiki
ACCS
Copyright © 2016 Oracle and/or its affiliates. All rights reserved. |
NetBeans and Developer Cloud
Oracle Confidential – Internal 15
Plan
Code
Build
Test
Releas
e
Deploy
Operat
e
Monit
or
Copyright © 2016 Oracle and/or its affiliates. All rights reserved. |
Node.js Code Tenets
Oracle Confidential – Internal 16
Make Database
Connection
Get Data
Create JSON Object
Code your Listener
Copyright © 2016 Oracle and/or its affiliates. All rights reserved. |
NetBeans for developing a Microservice
Confidential – Oracle Internal/Restricted/Highly
Restricted
17
Copyright © 2016 Oracle and/or its affiliates. All rights reserved. | Confidential – Oracle Internal/Restricted/Highly
Restricted
18
NetBeans for Code
Code application on NetBeans using the Node.js and
Express.js framework
Create a Git Repository on the Developer Cloud
Service
Push the Code to Git repo on Developer Cloud using
the NetBeans plugin
Copyright © 2016 Oracle and/or its affiliates. All rights reserved. | Confidential – Oracle Internal/Restricted/Highly
Restricted
19
NetBeans for Database
Build
Use NetBeans to code the SQL script files and push
the same to the Git repository on DEVCS
Create a build job on DEVCS using SQLCL and make a
connection to the Database Cloud Service
Build
Trigger the build job from NetBeans to create
schema and push data
Copyright © 2016 Oracle and/or its affiliates. All rights reserved. | Confidential – Oracle Internal/Restricted/Highly
Restricted
20
NetBeans for Tasks
You can create a Task /Issue from the NetBeans
‘Report Task’ in the DEVCS
Update/Search/Delete the Task/Issue from
NetBeans
Task can be updated in relation to the code commit
on the DEVCS Git repo as well.
Copyright © 2016 Oracle and/or its affiliates. All rights reserved. | Confidential – Oracle Internal/Restricted/Highly
Restricted
21
NetBeans for the Build
Code the Grunt build files and push to the Git repo
from Netbeans
Create a Build Job in Developer Cloud Service
Trigger the Build Job on developer Cloud from
NetBeans
Copyright © 2016 Oracle and/or its affiliates. All rights reserved. |
Deployment
Confidential – Oracle Internal/Restricted/Highly
Restricted
22
Developer Cloud Service Application Container Cloud Service
Build
Trigger
Copyright © 2016 Oracle and/or its affiliates. All rights reserved. |
Architecture & Summary
Confidential – Oracle Internal/Restricted/Highly
Restricted
23
Copyright © 2016 Oracle and/or its affiliates. All rights reserved. | Confidential – Oracle Internal/Restricted/Highly
Restricted
24
Architecture
{JSON}
Oracle Database Cloud
Service
Oracle Application
Container Cloud Service
Nodejs
Container
Expressjs
based REST
service
Application
Service Consumer Application
Copyright © 2016 Oracle and/or its affiliates. All rights reserved. |
Summary
Confidential – Oracle Internal/Restricted/Highly
Restricted
25
Install Code
Push Code
Create Build Jobs
Deploy
Copyright © 2016 Oracle and/or its affiliates. All rights reserved. | Confidential – Oracle Internal/Restricted/Highly
Restricted
26
Let us Code
Copyright © 2016 Oracle and/or its affiliates. All rights reserved. | Confidential – Oracle Internal/Restricted/Highly
Restricted
27
Q & A
Copyright © 2016 Oracle and/or its affiliates. All rights reserved. | Oracle Confidential – Internal 28

More Related Content

Recently uploaded

tonesoftg
tonesoftgtonesoftg
tonesoftglanshi9
 
WSO2Con204 - Hard Rock Presentation - Keynote
WSO2Con204 - Hard Rock Presentation - KeynoteWSO2Con204 - Hard Rock Presentation - Keynote
WSO2Con204 - Hard Rock Presentation - KeynoteWSO2
 
Large-scale Logging Made Easy: Meetup at Deutsche Bank 2024
Large-scale Logging Made Easy: Meetup at Deutsche Bank 2024Large-scale Logging Made Easy: Meetup at Deutsche Bank 2024
Large-scale Logging Made Easy: Meetup at Deutsche Bank 2024VictoriaMetrics
 
%in Bahrain+277-882-255-28 abortion pills for sale in Bahrain
%in Bahrain+277-882-255-28 abortion pills for sale in Bahrain%in Bahrain+277-882-255-28 abortion pills for sale in Bahrain
%in Bahrain+277-882-255-28 abortion pills for sale in Bahrainmasabamasaba
 
%+27788225528 love spells in Colorado Springs Psychic Readings, Attraction sp...
%+27788225528 love spells in Colorado Springs Psychic Readings, Attraction sp...%+27788225528 love spells in Colorado Springs Psychic Readings, Attraction sp...
%+27788225528 love spells in Colorado Springs Psychic Readings, Attraction sp...masabamasaba
 
%in Midrand+277-882-255-28 abortion pills for sale in midrand
%in Midrand+277-882-255-28 abortion pills for sale in midrand%in Midrand+277-882-255-28 abortion pills for sale in midrand
%in Midrand+277-882-255-28 abortion pills for sale in midrandmasabamasaba
 
Crypto Cloud Review - How To Earn Up To $500 Per DAY Of Bitcoin 100% On AutoP...
Crypto Cloud Review - How To Earn Up To $500 Per DAY Of Bitcoin 100% On AutoP...Crypto Cloud Review - How To Earn Up To $500 Per DAY Of Bitcoin 100% On AutoP...
Crypto Cloud Review - How To Earn Up To $500 Per DAY Of Bitcoin 100% On AutoP...SelfMade bd
 
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...Health
 
%in tembisa+277-882-255-28 abortion pills for sale in tembisa
%in tembisa+277-882-255-28 abortion pills for sale in tembisa%in tembisa+277-882-255-28 abortion pills for sale in tembisa
%in tembisa+277-882-255-28 abortion pills for sale in tembisamasabamasaba
 
What Goes Wrong with Language Definitions and How to Improve the Situation
What Goes Wrong with Language Definitions and How to Improve the SituationWhat Goes Wrong with Language Definitions and How to Improve the Situation
What Goes Wrong with Language Definitions and How to Improve the SituationJuha-Pekka Tolvanen
 
%in kempton park+277-882-255-28 abortion pills for sale in kempton park
%in kempton park+277-882-255-28 abortion pills for sale in kempton park %in kempton park+277-882-255-28 abortion pills for sale in kempton park
%in kempton park+277-882-255-28 abortion pills for sale in kempton park masabamasaba
 
%in tembisa+277-882-255-28 abortion pills for sale in tembisa
%in tembisa+277-882-255-28 abortion pills for sale in tembisa%in tembisa+277-882-255-28 abortion pills for sale in tembisa
%in tembisa+277-882-255-28 abortion pills for sale in tembisamasabamasaba
 
%in ivory park+277-882-255-28 abortion pills for sale in ivory park
%in ivory park+277-882-255-28 abortion pills for sale in ivory park %in ivory park+277-882-255-28 abortion pills for sale in ivory park
%in ivory park+277-882-255-28 abortion pills for sale in ivory park masabamasaba
 
%in Benoni+277-882-255-28 abortion pills for sale in Benoni
%in Benoni+277-882-255-28 abortion pills for sale in Benoni%in Benoni+277-882-255-28 abortion pills for sale in Benoni
%in Benoni+277-882-255-28 abortion pills for sale in Benonimasabamasaba
 
%+27788225528 love spells in Knoxville Psychic Readings, Attraction spells,Br...
%+27788225528 love spells in Knoxville Psychic Readings, Attraction spells,Br...%+27788225528 love spells in Knoxville Psychic Readings, Attraction spells,Br...
%+27788225528 love spells in Knoxville Psychic Readings, Attraction spells,Br...masabamasaba
 
VTU technical seminar 8Th Sem on Scikit-learn
VTU technical seminar 8Th Sem on Scikit-learnVTU technical seminar 8Th Sem on Scikit-learn
VTU technical seminar 8Th Sem on Scikit-learnAmarnathKambale
 
WSO2CON 2024 - API Management Usage at La Poste and Its Impact on Business an...
WSO2CON 2024 - API Management Usage at La Poste and Its Impact on Business an...WSO2CON 2024 - API Management Usage at La Poste and Its Impact on Business an...
WSO2CON 2024 - API Management Usage at La Poste and Its Impact on Business an...WSO2
 
Announcing Codolex 2.0 from GDK Software
Announcing Codolex 2.0 from GDK SoftwareAnnouncing Codolex 2.0 from GDK Software
Announcing Codolex 2.0 from GDK SoftwareJim McKeeth
 

Recently uploaded (20)

tonesoftg
tonesoftgtonesoftg
tonesoftg
 
WSO2Con204 - Hard Rock Presentation - Keynote
WSO2Con204 - Hard Rock Presentation - KeynoteWSO2Con204 - Hard Rock Presentation - Keynote
WSO2Con204 - Hard Rock Presentation - Keynote
 
Large-scale Logging Made Easy: Meetup at Deutsche Bank 2024
Large-scale Logging Made Easy: Meetup at Deutsche Bank 2024Large-scale Logging Made Easy: Meetup at Deutsche Bank 2024
Large-scale Logging Made Easy: Meetup at Deutsche Bank 2024
 
%in Bahrain+277-882-255-28 abortion pills for sale in Bahrain
%in Bahrain+277-882-255-28 abortion pills for sale in Bahrain%in Bahrain+277-882-255-28 abortion pills for sale in Bahrain
%in Bahrain+277-882-255-28 abortion pills for sale in Bahrain
 
%+27788225528 love spells in Colorado Springs Psychic Readings, Attraction sp...
%+27788225528 love spells in Colorado Springs Psychic Readings, Attraction sp...%+27788225528 love spells in Colorado Springs Psychic Readings, Attraction sp...
%+27788225528 love spells in Colorado Springs Psychic Readings, Attraction sp...
 
%in Midrand+277-882-255-28 abortion pills for sale in midrand
%in Midrand+277-882-255-28 abortion pills for sale in midrand%in Midrand+277-882-255-28 abortion pills for sale in midrand
%in Midrand+277-882-255-28 abortion pills for sale in midrand
 
Abortion Pill Prices Tembisa [(+27832195400*)] 🏥 Women's Abortion Clinic in T...
Abortion Pill Prices Tembisa [(+27832195400*)] 🏥 Women's Abortion Clinic in T...Abortion Pill Prices Tembisa [(+27832195400*)] 🏥 Women's Abortion Clinic in T...
Abortion Pill Prices Tembisa [(+27832195400*)] 🏥 Women's Abortion Clinic in T...
 
Crypto Cloud Review - How To Earn Up To $500 Per DAY Of Bitcoin 100% On AutoP...
Crypto Cloud Review - How To Earn Up To $500 Per DAY Of Bitcoin 100% On AutoP...Crypto Cloud Review - How To Earn Up To $500 Per DAY Of Bitcoin 100% On AutoP...
Crypto Cloud Review - How To Earn Up To $500 Per DAY Of Bitcoin 100% On AutoP...
 
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
 
%in tembisa+277-882-255-28 abortion pills for sale in tembisa
%in tembisa+277-882-255-28 abortion pills for sale in tembisa%in tembisa+277-882-255-28 abortion pills for sale in tembisa
%in tembisa+277-882-255-28 abortion pills for sale in tembisa
 
What Goes Wrong with Language Definitions and How to Improve the Situation
What Goes Wrong with Language Definitions and How to Improve the SituationWhat Goes Wrong with Language Definitions and How to Improve the Situation
What Goes Wrong with Language Definitions and How to Improve the Situation
 
%in kempton park+277-882-255-28 abortion pills for sale in kempton park
%in kempton park+277-882-255-28 abortion pills for sale in kempton park %in kempton park+277-882-255-28 abortion pills for sale in kempton park
%in kempton park+277-882-255-28 abortion pills for sale in kempton park
 
%in tembisa+277-882-255-28 abortion pills for sale in tembisa
%in tembisa+277-882-255-28 abortion pills for sale in tembisa%in tembisa+277-882-255-28 abortion pills for sale in tembisa
%in tembisa+277-882-255-28 abortion pills for sale in tembisa
 
%in ivory park+277-882-255-28 abortion pills for sale in ivory park
%in ivory park+277-882-255-28 abortion pills for sale in ivory park %in ivory park+277-882-255-28 abortion pills for sale in ivory park
%in ivory park+277-882-255-28 abortion pills for sale in ivory park
 
%in Benoni+277-882-255-28 abortion pills for sale in Benoni
%in Benoni+277-882-255-28 abortion pills for sale in Benoni%in Benoni+277-882-255-28 abortion pills for sale in Benoni
%in Benoni+277-882-255-28 abortion pills for sale in Benoni
 
%+27788225528 love spells in Knoxville Psychic Readings, Attraction spells,Br...
%+27788225528 love spells in Knoxville Psychic Readings, Attraction spells,Br...%+27788225528 love spells in Knoxville Psychic Readings, Attraction spells,Br...
%+27788225528 love spells in Knoxville Psychic Readings, Attraction spells,Br...
 
Abortion Pills In Pretoria ](+27832195400*)[ 🏥 Women's Abortion Clinic In Pre...
Abortion Pills In Pretoria ](+27832195400*)[ 🏥 Women's Abortion Clinic In Pre...Abortion Pills In Pretoria ](+27832195400*)[ 🏥 Women's Abortion Clinic In Pre...
Abortion Pills In Pretoria ](+27832195400*)[ 🏥 Women's Abortion Clinic In Pre...
 
VTU technical seminar 8Th Sem on Scikit-learn
VTU technical seminar 8Th Sem on Scikit-learnVTU technical seminar 8Th Sem on Scikit-learn
VTU technical seminar 8Th Sem on Scikit-learn
 
WSO2CON 2024 - API Management Usage at La Poste and Its Impact on Business an...
WSO2CON 2024 - API Management Usage at La Poste and Its Impact on Business an...WSO2CON 2024 - API Management Usage at La Poste and Its Impact on Business an...
WSO2CON 2024 - API Management Usage at La Poste and Its Impact on Business an...
 
Announcing Codolex 2.0 from GDK Software
Announcing Codolex 2.0 from GDK SoftwareAnnouncing Codolex 2.0 from GDK Software
Announcing Codolex 2.0 from GDK Software
 

Featured

How to Prepare For a Successful Job Search for 2024
How to Prepare For a Successful Job Search for 2024How to Prepare For a Successful Job Search for 2024
How to Prepare For a Successful Job Search for 2024Albert Qian
 
Social Media Marketing Trends 2024 // The Global Indie Insights
Social Media Marketing Trends 2024 // The Global Indie InsightsSocial Media Marketing Trends 2024 // The Global Indie Insights
Social Media Marketing Trends 2024 // The Global Indie InsightsKurio // The Social Media Age(ncy)
 
Trends In Paid Search: Navigating The Digital Landscape In 2024
Trends In Paid Search: Navigating The Digital Landscape In 2024Trends In Paid Search: Navigating The Digital Landscape In 2024
Trends In Paid Search: Navigating The Digital Landscape In 2024Search Engine Journal
 
5 Public speaking tips from TED - Visualized summary
5 Public speaking tips from TED - Visualized summary5 Public speaking tips from TED - Visualized summary
5 Public speaking tips from TED - Visualized summarySpeakerHub
 
ChatGPT and the Future of Work - Clark Boyd
ChatGPT and the Future of Work - Clark Boyd ChatGPT and the Future of Work - Clark Boyd
ChatGPT and the Future of Work - Clark Boyd Clark Boyd
 
Getting into the tech field. what next
Getting into the tech field. what next Getting into the tech field. what next
Getting into the tech field. what next Tessa Mero
 
Google's Just Not That Into You: Understanding Core Updates & Search Intent
Google's Just Not That Into You: Understanding Core Updates & Search IntentGoogle's Just Not That Into You: Understanding Core Updates & Search Intent
Google's Just Not That Into You: Understanding Core Updates & Search IntentLily Ray
 
Time Management & Productivity - Best Practices
Time Management & Productivity -  Best PracticesTime Management & Productivity -  Best Practices
Time Management & Productivity - Best PracticesVit Horky
 
The six step guide to practical project management
The six step guide to practical project managementThe six step guide to practical project management
The six step guide to practical project managementMindGenius
 
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...RachelPearson36
 
Unlocking the Power of ChatGPT and AI in Testing - A Real-World Look, present...
Unlocking the Power of ChatGPT and AI in Testing - A Real-World Look, present...Unlocking the Power of ChatGPT and AI in Testing - A Real-World Look, present...
Unlocking the Power of ChatGPT and AI in Testing - A Real-World Look, present...Applitools
 
12 Ways to Increase Your Influence at Work
12 Ways to Increase Your Influence at Work12 Ways to Increase Your Influence at Work
12 Ways to Increase Your Influence at WorkGetSmarter
 
Ride the Storm: Navigating Through Unstable Periods / Katerina Rudko (Belka G...
Ride the Storm: Navigating Through Unstable Periods / Katerina Rudko (Belka G...Ride the Storm: Navigating Through Unstable Periods / Katerina Rudko (Belka G...
Ride the Storm: Navigating Through Unstable Periods / Katerina Rudko (Belka G...DevGAMM Conference
 
Barbie - Brand Strategy Presentation
Barbie - Brand Strategy PresentationBarbie - Brand Strategy Presentation
Barbie - Brand Strategy PresentationErica Santiago
 
Good Stuff Happens in 1:1 Meetings: Why you need them and how to do them well
Good Stuff Happens in 1:1 Meetings: Why you need them and how to do them wellGood Stuff Happens in 1:1 Meetings: Why you need them and how to do them well
Good Stuff Happens in 1:1 Meetings: Why you need them and how to do them wellSaba Software
 
Introduction to C Programming Language
Introduction to C Programming LanguageIntroduction to C Programming Language
Introduction to C Programming LanguageSimplilearn
 

Featured (20)

How to Prepare For a Successful Job Search for 2024
How to Prepare For a Successful Job Search for 2024How to Prepare For a Successful Job Search for 2024
How to Prepare For a Successful Job Search for 2024
 
Social Media Marketing Trends 2024 // The Global Indie Insights
Social Media Marketing Trends 2024 // The Global Indie InsightsSocial Media Marketing Trends 2024 // The Global Indie Insights
Social Media Marketing Trends 2024 // The Global Indie Insights
 
Trends In Paid Search: Navigating The Digital Landscape In 2024
Trends In Paid Search: Navigating The Digital Landscape In 2024Trends In Paid Search: Navigating The Digital Landscape In 2024
Trends In Paid Search: Navigating The Digital Landscape In 2024
 
5 Public speaking tips from TED - Visualized summary
5 Public speaking tips from TED - Visualized summary5 Public speaking tips from TED - Visualized summary
5 Public speaking tips from TED - Visualized summary
 
ChatGPT and the Future of Work - Clark Boyd
ChatGPT and the Future of Work - Clark Boyd ChatGPT and the Future of Work - Clark Boyd
ChatGPT and the Future of Work - Clark Boyd
 
Getting into the tech field. what next
Getting into the tech field. what next Getting into the tech field. what next
Getting into the tech field. what next
 
Google's Just Not That Into You: Understanding Core Updates & Search Intent
Google's Just Not That Into You: Understanding Core Updates & Search IntentGoogle's Just Not That Into You: Understanding Core Updates & Search Intent
Google's Just Not That Into You: Understanding Core Updates & Search Intent
 
How to have difficult conversations
How to have difficult conversations How to have difficult conversations
How to have difficult conversations
 
Introduction to Data Science
Introduction to Data ScienceIntroduction to Data Science
Introduction to Data Science
 
Time Management & Productivity - Best Practices
Time Management & Productivity -  Best PracticesTime Management & Productivity -  Best Practices
Time Management & Productivity - Best Practices
 
The six step guide to practical project management
The six step guide to practical project managementThe six step guide to practical project management
The six step guide to practical project management
 
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
 
Unlocking the Power of ChatGPT and AI in Testing - A Real-World Look, present...
Unlocking the Power of ChatGPT and AI in Testing - A Real-World Look, present...Unlocking the Power of ChatGPT and AI in Testing - A Real-World Look, present...
Unlocking the Power of ChatGPT and AI in Testing - A Real-World Look, present...
 
12 Ways to Increase Your Influence at Work
12 Ways to Increase Your Influence at Work12 Ways to Increase Your Influence at Work
12 Ways to Increase Your Influence at Work
 
ChatGPT webinar slides
ChatGPT webinar slidesChatGPT webinar slides
ChatGPT webinar slides
 
More than Just Lines on a Map: Best Practices for U.S Bike Routes
More than Just Lines on a Map: Best Practices for U.S Bike RoutesMore than Just Lines on a Map: Best Practices for U.S Bike Routes
More than Just Lines on a Map: Best Practices for U.S Bike Routes
 
Ride the Storm: Navigating Through Unstable Periods / Katerina Rudko (Belka G...
Ride the Storm: Navigating Through Unstable Periods / Katerina Rudko (Belka G...Ride the Storm: Navigating Through Unstable Periods / Katerina Rudko (Belka G...
Ride the Storm: Navigating Through Unstable Periods / Katerina Rudko (Belka G...
 
Barbie - Brand Strategy Presentation
Barbie - Brand Strategy PresentationBarbie - Brand Strategy Presentation
Barbie - Brand Strategy Presentation
 
Good Stuff Happens in 1:1 Meetings: Why you need them and how to do them well
Good Stuff Happens in 1:1 Meetings: Why you need them and how to do them wellGood Stuff Happens in 1:1 Meetings: Why you need them and how to do them well
Good Stuff Happens in 1:1 Meetings: Why you need them and how to do them well
 
Introduction to C Programming Language
Introduction to C Programming LanguageIntroduction to C Programming Language
Introduction to C Programming Language
 

Rapid Development of Node.js Microservices

  • 1. Copyright © 2016 Oracle and/or its affiliates. All rights reserved. | Rapid Development of Node.js Microservices Abhinav Shroff Principal Product Manager Oracle Development Tools and Frameworks NetBeans Day 29th April, 2017
  • 2. Copyright © 2016 Oracle and/or its affiliates. All rights reserved. | Safe Harbor Statement The following is intended to outline our general product direction. It is intended for information purposes only, and may not be incorporated into any contract. It is not a commitment to deliver any material, code, or functionality, and should not be relied upon in making purchasing decisions. The development, release, and timing of any features or functionality described for Oracle’s products remains at the sole discretion of Oracle. Oracle Confidential – Internal 2
  • 3. Copyright © 2016 Oracle and/or its affiliates. All rights reserved. | Program Agenda About Microservices Stack and Tools to build Microservices A Developer’s Perspective NetBeans for developing a Microservice Architecture & Summary 1 2 3 4 5 Confidential – Oracle Internal/Restricted/Highly Restricted 3
  • 4. Copyright © 2016 Oracle and/or its affiliates. All rights reserved. | About Microservices Confidential – Oracle Internal/Restricted/Highly Restricted 4
  • 5. Copyright © 2016 Oracle and/or its affiliates. All rights reserved. | Monolithic Way – Concerns Confidential – Oracle Internal/Restricted/Highly Restricted 5 Monolithic Application Longer Development Lifecycle Scaling Complex Change Management Performance
  • 6. Copyright © 2016 Oracle and/or its affiliates. All rights reserved. | Confidential – Oracle Internal/Restricted/Highly Restricted 6 What does Microservices offer A simple unit focused on single business functionality Simple enough to be owned by a single team A loosely coupled architecture Provides freedom to choose tools and languages Granularity for scaling Smaller codebase Quicker deployments Resilient Systems
  • 7. Copyright © 2016 Oracle and/or its affiliates. All rights reserved. | Attributes of a Microservice Oracle Confidential – Internal 7 Self- Bootable Cohesive Functional ity Small & Clean Codebase Loosely Coupled Stateless Independe ntly Deployabl e Private Data
  • 8. Copyright © 2016 Oracle and/or its affiliates. All rights reserved. | Confidential – Oracle Internal/Restricted/Highly Restricted 8 Building blocks of Microservices DevOps Configuration Mgmt. API Gateway Governance
  • 9. Copyright © 2016 Oracle and/or its affiliates. All rights reserved. | Stack and Tools to build Microservices Confidential – Oracle Internal/Restricted/Highly Restricted 9
  • 10. Copyright © 2016 Oracle and/or its affiliates. All rights reserved. | Confidential – Oracle Internal/Restricted/Highly Restricted 10 Technology Stack/Platform for building a Microservice Application Container Cloud Service Developer Cloud Service Database Cloud Service
  • 11. Copyright © 2016 Oracle and/or its affiliates. All rights reserved. | Confidential – Oracle Internal/Restricted/Highly Restricted 11 Microservices – Node.js makes sense Single Thread Event Driven Modular Javascript
  • 12. Copyright © 2016 Oracle and/or its affiliates. All rights reserved. | Confidential – Oracle Internal/Restricted/Highly Restricted 12 Tools for your Help Hudson
  • 13. Copyright © 2016 Oracle and/or its affiliates. All rights reserved. | A Developer’s Perspective Confidential – Oracle Internal/Restricted/Highly Restricted 13
  • 14. Copyright © 2016 Oracle and/or its affiliates. All rights reserved. | Developer Cloud – A Developer’s Perspective Confidential – Oracle Internal/Restricted/Highly Restricted 14 Review Cloud or On Premises Dev, Test or Production Deploy Commit Track & Monitor Developers Developer Service Hudson Grunt GIT Tasks Wiki ACCS
  • 15. Copyright © 2016 Oracle and/or its affiliates. All rights reserved. | NetBeans and Developer Cloud Oracle Confidential – Internal 15 Plan Code Build Test Releas e Deploy Operat e Monit or
  • 16. Copyright © 2016 Oracle and/or its affiliates. All rights reserved. | Node.js Code Tenets Oracle Confidential – Internal 16 Make Database Connection Get Data Create JSON Object Code your Listener
  • 17. Copyright © 2016 Oracle and/or its affiliates. All rights reserved. | NetBeans for developing a Microservice Confidential – Oracle Internal/Restricted/Highly Restricted 17
  • 18. Copyright © 2016 Oracle and/or its affiliates. All rights reserved. | Confidential – Oracle Internal/Restricted/Highly Restricted 18 NetBeans for Code Code application on NetBeans using the Node.js and Express.js framework Create a Git Repository on the Developer Cloud Service Push the Code to Git repo on Developer Cloud using the NetBeans plugin
  • 19. Copyright © 2016 Oracle and/or its affiliates. All rights reserved. | Confidential – Oracle Internal/Restricted/Highly Restricted 19 NetBeans for Database Build Use NetBeans to code the SQL script files and push the same to the Git repository on DEVCS Create a build job on DEVCS using SQLCL and make a connection to the Database Cloud Service Build Trigger the build job from NetBeans to create schema and push data
  • 20. Copyright © 2016 Oracle and/or its affiliates. All rights reserved. | Confidential – Oracle Internal/Restricted/Highly Restricted 20 NetBeans for Tasks You can create a Task /Issue from the NetBeans ‘Report Task’ in the DEVCS Update/Search/Delete the Task/Issue from NetBeans Task can be updated in relation to the code commit on the DEVCS Git repo as well.
  • 21. Copyright © 2016 Oracle and/or its affiliates. All rights reserved. | Confidential – Oracle Internal/Restricted/Highly Restricted 21 NetBeans for the Build Code the Grunt build files and push to the Git repo from Netbeans Create a Build Job in Developer Cloud Service Trigger the Build Job on developer Cloud from NetBeans
  • 22. Copyright © 2016 Oracle and/or its affiliates. All rights reserved. | Deployment Confidential – Oracle Internal/Restricted/Highly Restricted 22 Developer Cloud Service Application Container Cloud Service Build Trigger
  • 23. Copyright © 2016 Oracle and/or its affiliates. All rights reserved. | Architecture & Summary Confidential – Oracle Internal/Restricted/Highly Restricted 23
  • 24. Copyright © 2016 Oracle and/or its affiliates. All rights reserved. | Confidential – Oracle Internal/Restricted/Highly Restricted 24 Architecture {JSON} Oracle Database Cloud Service Oracle Application Container Cloud Service Nodejs Container Expressjs based REST service Application Service Consumer Application
  • 25. Copyright © 2016 Oracle and/or its affiliates. All rights reserved. | Summary Confidential – Oracle Internal/Restricted/Highly Restricted 25 Install Code Push Code Create Build Jobs Deploy
  • 26. Copyright © 2016 Oracle and/or its affiliates. All rights reserved. | Confidential – Oracle Internal/Restricted/Highly Restricted 26 Let us Code
  • 27. Copyright © 2016 Oracle and/or its affiliates. All rights reserved. | Confidential – Oracle Internal/Restricted/Highly Restricted 27 Q & A
  • 28. Copyright © 2016 Oracle and/or its affiliates. All rights reserved. | Oracle Confidential – Internal 28

Editor's Notes

  1. This is a Safe Harbor Front slide, one of two Safe Harbor Statement slides included in this template. One of the Safe Harbor slides must be used if your presentation covers material affected by Oracle’s Revenue Recognition Policy To learn more about this policy, e-mail: Revrec-americasiebc_us@oracle.com For internal communication, Safe Harbor Statements are not required. However, there is an applicable disclaimer (Exhibit E) that should be used, found in the Oracle Revenue Recognition Policy for Future Product Communications. Copy and paste this link into a web browser, to find out more information.   http://my.oracle.com/site/fin/gfo/GlobalProcesses/cnt452504.pdf For all external communications such as press release, roadmaps, PowerPoint presentations, Safe Harbor Statements are required. You can refer to the link mentioned above to find out additional information/disclaimers required depending on your audience.
  2. Event driven – high on performance Modular – increased productivity Single threaded - scalable Javascript – Increased productivity And excellent package manager
  3. Developer Cloud Service Social Collaboration Bug Tracking Code Review