SlideShare una empresa de Scribd logo
1 de 86
Introduction to Heroku
Scaling Customer facing apps and
services
Safe harbor
Safe harbor statement under the Private Securities Litigation Reform Act of 1995:
This presentation may contain forward-looking statements that involve risks, uncertainties, and assumptions. If any such uncertainties
materialize or if any of the assumptions proves incorrect, the results of salesforce.com, inc. could differ materially from the results
expressed or implied by the forward-looking statements we make. All statements other than statements of historical fact could be
deemed forward-looking, including any projections of product or service availability, subscriber growth, earnings, revenues, or other
financial items and any statements regarding strategies or plans of management for future operations, statements of belief, any
statements concerning new, planned, or upgraded services or technology developments and customer contracts or use of our services.
The risks and uncertainties referred to above include – but are not limited to – risks associated with developing and delivering new
functionality for our service, new products and services, our new business model, our past operating losses, possible fluctuations in our
operating results and rate of growth, interruptions or delays in our Web hosting, breach of our security measures, the outcome of any
litigation, risks associated with completed and any possible mergers and acquisitions, the immature market in which we operate, our
relatively limited operating history, our ability to expand, retain, and motivate our employees and manage our growth, new releases of our
service and successful customer deployment, our limited history reselling non-salesforce.com products, and utilization and selling to
larger enterprise customers. Further information on potential factors that could affect the financial results of salesforce.com, inc. is
included in our annual report on Form 10-K for the most recent fiscal year and in our quarterly report on Form 10-Q for the most recent
fiscal quarter. These documents and others containing important disclosures are available on the SEC Filings section of the Investor
Information section of our Web site.
Any unreleased services or features referenced in this or other presentations, press releases or public statements are not currently
available and may not be delivered on time or at all. Customers who purchase our services should make the purchase decisions
based upon features that are currently available. Salesforce.com, inc. assumes no obligation and does not intend to update these
forward-looking statements.
Apps Require Infrastructure
This is what the Salesforce Data Centers provide
for Salesforce Orgs
Servers Networking Operations
Apps Require Infrastructure
What if a customer wants to deliver apps outside of
their Salesforce Org ?
Servers Networking Operations
Apps Require Infrastructure
Servers Networking Operations
Managing your own Data Center is expensive
Provisioning Servers is often a bottleneck,
even when they are virtualised
Heroku: The Developers Choice
“Heroku lets us focus on our app and deliver more
value to customers.” – Aaron Peckham, Urban Dictionary
Example apps on Heroku
Retail
Media
Marketing
Campaigns
Customer &
Web Sites
E-Commerce &
Media
Mobile &
SaaS Apps
App
Portfolios
success.heroku.com
SolutionChallenge
A highly-scalable system
Supporting over 1 million customers
Processing 3 million payments
Thousands of payment partners
- Allow people to buy food & provisions
when nothing works
- Fast response times
- No down-time
Hurricane Sandy proof
payments via your mobile
SolutionChallenge
NEB bio-freezers provide live enzymes for genomic
research in labs around the world
Heroku + Force.com connects
NEB to customers with live
support and bi-directional
access to inventory and usage
for automated restocking
Manual process of distribution,
inventory control and customer
engagement created business
inefficiencies
Proven Success
5 Billion
Requests per day
4+ Million
Apps Created
125+
Add-on Services
“Heroku enables us to build, test and ship faster
than we ever would be able to otherwise"
– Jay Stakelon, VP of Product, Fullscreen
Heroku is the developers’ choice
“I recommend Heroku to anyone that wants to spend
time working on their product and not on servers.”
– Ryan Twomey, Lead Platform Engineer, LevelUp
Free Developer Environment
Using only 1 dyno for your Heroku App is free
- Your app will sleep after 1 hour of inactivity
What is Heroku?
Database
Enterprise grade
Postgres as a service
Add-ons
Marketplace for data
stores and app services
Dynos
Run virtually any
language at any scale
Everything you need to build, run and scale customer apps
Connected
easy linking of the Heroku Postgres database
driving your apps with your Salesforce Org
Transforming
customer data translated into business
applicable information
Managed
2-way synchronization of high volumes of
data at a sustainable rate
Heroku1 Connect
Heroku & Force.com
Heroku: Technical Overview
Heroku core language support
Ruby, Java, NodeJS & Python
Virtually every language you can think of is supported by
community buildpacks
https://devcenter.heroku.com/articles/third-party-buildpacks
Developer driven deployment
Deploy using Git version control
- the most popular software versioning tool for developers
git push heroku master
Continuous Deployment
Easy to deploy changes, so developers deploy smaller
changes more often
- quickly understand the value of software you create
Consistent Deployment
Build scripts ensure that the entire environment is built in the
same way
git push heroku master
Consistent Deployment
Creating an Heroku app provides a placeholder for your app
heroku create app-name --region us|eu
Consistent Deployment
Pushing code to Heroku creates brand new infrastructure
git push heroku master
Heroku Demo Time
Demo Gods, please by kind
Traceable deployment
Every deployment is traceable to the exact code version in
your Git repository
git log --graph --oneline --decorate
Traceable deployment
Heroku dashboard shows your deployment versions
Repeatable deployment
You app is deployed from the code in your Git repository
git push my-app-test master
git push my-app-staging master
Establish a complete set of consistent
environments to support your development
Consistent Environments
Buildpacks ensure consistency across environment setups
Test
Environment
Staging
Environment
Production
Environment
Environment variables used for specific database connections,
services, etc.
Collaborative deployment
Using Git is an effective way for developers and teams to
collaborate around projects
Heroku Orgs for apps oversight
and collaboration
Heroku Orgs
Manage all your applications under one organisation
heroku create app-name --org org-name
Heroku Orgs Resource Management
Creating an Heroku Org
Heroku Orgs
Manage your apps in one place
Controlling access to Org Apps
Controlling access to Org Apps
3rd Party Orgs
Manage access to
applications under
one organisation
- 3rd party
developers can be
limited to specific
apps
Scaling your apps on Heroku
Scaling your apps on Heroku
Dynos can be spun up on demand, scaling resources almost instantaneously
heroku ps:scale web=10
heroku ps:scale web=0
Dynos can also be scaled down instantaneously when not needed
Scaling your apps on Heroku
Dynos can run different processes, enabling fine grain scaling
heroku ps:scale web=10
heroku ps:scale background=3
Heroku ps:scale queue=1
Web processes listen to http[s] requests, other are background processes
Scaling your apps on Heroku
Performance Dynos - Px
Have a whole block of resources to scale your Heroku app
- routing latency advantages when you scale past 10 dynos
heroku ps:resize web=PX
https://blog.heroku.com/archives/2014/2/3/heroku-xl
Performance Dynos - Px
https://blog.heroku.com/archives/2014/2/3/heroku-xl
Managing your apps on Heroku
Troubleshooting your app
Heroku Logplex gives a unified log to find the real root cause of issues
heroku logs
Managing Heroku infrastructure
Dynos are automatically patched for security vulnerabilities
- a new dyno is established before the current one is decommissioned
- requests are automatically routed to the new dyno
Unresponsive & run-away processes have their dyno “recycled”
New DynoCurrent Dyno
Current
Slug
Production access without the risk
Connect via secure shell to a copy of your Production app
Temporary
dyno
Production
dyno
heroku run bash
Current
Slug
Production access without the risk
Heroku Production
Health Check
Quickly review your app to ensure it is
configured to be used in production
status.heroku.com
status.heroku.com
Fast Rollbacks
Roll-forward a previously working deployment
- allowing time to fix the root cause of a deployment issue
Roll-forward dyno
Version 22
(cloned from v20)
Production Dyno
Version 21
heroku releases
heroku releases:info 20
Heroku releases:rollback 20
Fast Rollbacks
You can see your release history via the command line or the
Heroku dashboard
Boosting app development with
Heroku add-ons
Largest Paas
Marketplace
Developer-focused add-
ons allow you to
provision datastores &
services on demand
Heroku Postgres
Heroku Postgres Services
New Relic – end 2 end monitoring
Hirefire – auto-scaling
Building Scalable apps
12 Factor App
Even if your platform is scalable, it does not mean your app is
- or it may not scale efficiently
12factor.net
Heroku engineers defined a set of principles to help you create and manage a
highly scalable application.
Heroku1 Connect In action
Automated syncronisation between Heroku
Postgress and your Salesforce Org
www.heroku.com/1
Heroku1 Connect
Heroku
Salesforce Org
Auto synchronization of data
Customer
facing
App /
website
Customer data
captured
Understanding
about your
customers
Turn customer interaction to valuable business insight
Add Heroku Postgres to your App
Adding the Heroku1 Connect
addon to your App
Your app on the Heroku Dashboard
Choosing an Heroku Postgress
Database
Authorising access to your
Salesforce Org
Your Heroku1 Connect Dashboard
Choose a Salesforce Object for
Syncronisation
Example: Selecting a Plant object
Choosing Fields to sync on the
Salesforce Object
Example: Selecting Plant fields to
synchronize
Summary of Object Fields to be
synchronised
Your mapped objects
First Sync happens as soon as an
object is mapped
Viewing your Database
configuration
Pause & Resume Sync’ing
Developer tools can access your
Heroku Postgress Database
Heroku1 Connect Summary
Get a single view of all your customer data
- from every single touch point you create
- connecting only that data that will provide value
An easy service to configure & monitor
- ensuring you maximize the resources of your Salesforce
Org
Save time & costs by not building your own solution
- no value in building & maintaining commodity services
Heroku Summary
Developer driven deployment
- using tools developers are used to using
Easy scaling to support your growth
- scale quickly and easily view your usage
Save time & costs by building on Heroku services
- reduce the operations effort and build innovate apps
quickly
Try Heroku for yourself
Learn more at:
http://heroku.com/
Getting started with Heroku guides:
http://developers.salesforce.com
Scaling Apps with Heroku

Más contenido relacionado

La actualidad más candente

Understanding Native, Hybrid, and Web Mobile Architectures
Understanding Native, Hybrid, and Web Mobile ArchitecturesUnderstanding Native, Hybrid, and Web Mobile Architectures
Understanding Native, Hybrid, and Web Mobile ArchitecturesSalesforce Developers
 
Build Cloud & Mobile App on Salesforce Force.com Platform in 15 mins
Build Cloud & Mobile App on Salesforce Force.com Platform in 15 minsBuild Cloud & Mobile App on Salesforce Force.com Platform in 15 mins
Build Cloud & Mobile App on Salesforce Force.com Platform in 15 minsKashi Ahmed
 
Trailhead Live Developer Workshop - Salesforce App Cloud
Trailhead Live Developer Workshop - Salesforce App CloudTrailhead Live Developer Workshop - Salesforce App Cloud
Trailhead Live Developer Workshop - Salesforce App CloudSam Garforth
 
Elevate Your Continuous Delivery Strategy Above the Rolling Clouds (Interconn...
Elevate Your Continuous Delivery Strategy Above the Rolling Clouds (Interconn...Elevate Your Continuous Delivery Strategy Above the Rolling Clouds (Interconn...
Elevate Your Continuous Delivery Strategy Above the Rolling Clouds (Interconn...Michael Elder
 
Dreamforce 2013 - Heroku 5 use cases
Dreamforce 2013 - Heroku 5 use casesDreamforce 2013 - Heroku 5 use cases
Dreamforce 2013 - Heroku 5 use casesVincent Spehner
 
Enterprise Integration - Solution Patterns From the Field
Enterprise Integration - Solution Patterns From the FieldEnterprise Integration - Solution Patterns From the Field
Enterprise Integration - Solution Patterns From the FieldSalesforce Developers
 
Getting More Out of the Node.js, PHP, and Python Agents - AppSphere16
Getting More Out of the Node.js, PHP, and Python Agents - AppSphere16Getting More Out of the Node.js, PHP, and Python Agents - AppSphere16
Getting More Out of the Node.js, PHP, and Python Agents - AppSphere16AppDynamics
 
Application Migration: How to Start, Scale and Succeed
Application Migration: How to Start, Scale and SucceedApplication Migration: How to Start, Scale and Succeed
Application Migration: How to Start, Scale and SucceedVMware Tanzu
 
Hands-On Lab: From Zero to Compliance Using CA Software Asset Management
Hands-On Lab: From Zero to Compliance Using CA Software Asset ManagementHands-On Lab: From Zero to Compliance Using CA Software Asset Management
Hands-On Lab: From Zero to Compliance Using CA Software Asset ManagementCA Technologies
 
Connecting Applications from Mobile to Mainframe in the Application Economy
Connecting Applications from Mobile to Mainframe in the Application EconomyConnecting Applications from Mobile to Mainframe in the Application Economy
Connecting Applications from Mobile to Mainframe in the Application EconomyCA Technologies
 
PayU's Digital Transformation: Transparency from Dev to Prod, Monitoring Micr...
PayU's Digital Transformation: Transparency from Dev to Prod, Monitoring Micr...PayU's Digital Transformation: Transparency from Dev to Prod, Monitoring Micr...
PayU's Digital Transformation: Transparency from Dev to Prod, Monitoring Micr...AppDynamics
 
Microservices and the Modern IT Stack: Trends of Tomorrow - AppSphere16
Microservices and the Modern IT Stack: Trends of Tomorrow - AppSphere16Microservices and the Modern IT Stack: Trends of Tomorrow - AppSphere16
Microservices and the Modern IT Stack: Trends of Tomorrow - AppSphere16AppDynamics
 
DevOps: Where in the World Is Test?
DevOps: Where in the World Is Test?DevOps: Where in the World Is Test?
DevOps: Where in the World Is Test?TechWell
 
Use AppDynamics SDK to Integrate with your Applications - AppSphere16
Use AppDynamics SDK to Integrate with your Applications - AppSphere16Use AppDynamics SDK to Integrate with your Applications - AppSphere16
Use AppDynamics SDK to Integrate with your Applications - AppSphere16AppDynamics
 
Hands-On Lab: Let's Build an ITSM Dashboard
Hands-On Lab: Let's Build an ITSM DashboardHands-On Lab: Let's Build an ITSM Dashboard
Hands-On Lab: Let's Build an ITSM DashboardCA Technologies
 
Click to Disk Troubleshooting with AppDynamics and OpsDataStore - AppSphere16
Click to Disk Troubleshooting with AppDynamics and OpsDataStore - AppSphere16Click to Disk Troubleshooting with AppDynamics and OpsDataStore - AppSphere16
Click to Disk Troubleshooting with AppDynamics and OpsDataStore - AppSphere16AppDynamics
 
Anypoint monitoring capabilities
Anypoint monitoring capabilitiesAnypoint monitoring capabilities
Anypoint monitoring capabilitiesMarioMartinez88103
 
Disruptive Trends in Application Development
Disruptive Trends in Application DevelopmentDisruptive Trends in Application Development
Disruptive Trends in Application DevelopmentWaveMaker, Inc.
 
Best Practices for Managing IaaS, PaaS, and Container-Based Deployments - App...
Best Practices for Managing IaaS, PaaS, and Container-Based Deployments - App...Best Practices for Managing IaaS, PaaS, and Container-Based Deployments - App...
Best Practices for Managing IaaS, PaaS, and Container-Based Deployments - App...AppDynamics
 
Hewlett Packard Enterprise (HPE) Service Virtualization (SV)
Hewlett Packard Enterprise (HPE) Service Virtualization (SV)Hewlett Packard Enterprise (HPE) Service Virtualization (SV)
Hewlett Packard Enterprise (HPE) Service Virtualization (SV)Jeffrey Nunn
 

La actualidad más candente (20)

Understanding Native, Hybrid, and Web Mobile Architectures
Understanding Native, Hybrid, and Web Mobile ArchitecturesUnderstanding Native, Hybrid, and Web Mobile Architectures
Understanding Native, Hybrid, and Web Mobile Architectures
 
Build Cloud & Mobile App on Salesforce Force.com Platform in 15 mins
Build Cloud & Mobile App on Salesforce Force.com Platform in 15 minsBuild Cloud & Mobile App on Salesforce Force.com Platform in 15 mins
Build Cloud & Mobile App on Salesforce Force.com Platform in 15 mins
 
Trailhead Live Developer Workshop - Salesforce App Cloud
Trailhead Live Developer Workshop - Salesforce App CloudTrailhead Live Developer Workshop - Salesforce App Cloud
Trailhead Live Developer Workshop - Salesforce App Cloud
 
Elevate Your Continuous Delivery Strategy Above the Rolling Clouds (Interconn...
Elevate Your Continuous Delivery Strategy Above the Rolling Clouds (Interconn...Elevate Your Continuous Delivery Strategy Above the Rolling Clouds (Interconn...
Elevate Your Continuous Delivery Strategy Above the Rolling Clouds (Interconn...
 
Dreamforce 2013 - Heroku 5 use cases
Dreamforce 2013 - Heroku 5 use casesDreamforce 2013 - Heroku 5 use cases
Dreamforce 2013 - Heroku 5 use cases
 
Enterprise Integration - Solution Patterns From the Field
Enterprise Integration - Solution Patterns From the FieldEnterprise Integration - Solution Patterns From the Field
Enterprise Integration - Solution Patterns From the Field
 
Getting More Out of the Node.js, PHP, and Python Agents - AppSphere16
Getting More Out of the Node.js, PHP, and Python Agents - AppSphere16Getting More Out of the Node.js, PHP, and Python Agents - AppSphere16
Getting More Out of the Node.js, PHP, and Python Agents - AppSphere16
 
Application Migration: How to Start, Scale and Succeed
Application Migration: How to Start, Scale and SucceedApplication Migration: How to Start, Scale and Succeed
Application Migration: How to Start, Scale and Succeed
 
Hands-On Lab: From Zero to Compliance Using CA Software Asset Management
Hands-On Lab: From Zero to Compliance Using CA Software Asset ManagementHands-On Lab: From Zero to Compliance Using CA Software Asset Management
Hands-On Lab: From Zero to Compliance Using CA Software Asset Management
 
Connecting Applications from Mobile to Mainframe in the Application Economy
Connecting Applications from Mobile to Mainframe in the Application EconomyConnecting Applications from Mobile to Mainframe in the Application Economy
Connecting Applications from Mobile to Mainframe in the Application Economy
 
PayU's Digital Transformation: Transparency from Dev to Prod, Monitoring Micr...
PayU's Digital Transformation: Transparency from Dev to Prod, Monitoring Micr...PayU's Digital Transformation: Transparency from Dev to Prod, Monitoring Micr...
PayU's Digital Transformation: Transparency from Dev to Prod, Monitoring Micr...
 
Microservices and the Modern IT Stack: Trends of Tomorrow - AppSphere16
Microservices and the Modern IT Stack: Trends of Tomorrow - AppSphere16Microservices and the Modern IT Stack: Trends of Tomorrow - AppSphere16
Microservices and the Modern IT Stack: Trends of Tomorrow - AppSphere16
 
DevOps: Where in the World Is Test?
DevOps: Where in the World Is Test?DevOps: Where in the World Is Test?
DevOps: Where in the World Is Test?
 
Use AppDynamics SDK to Integrate with your Applications - AppSphere16
Use AppDynamics SDK to Integrate with your Applications - AppSphere16Use AppDynamics SDK to Integrate with your Applications - AppSphere16
Use AppDynamics SDK to Integrate with your Applications - AppSphere16
 
Hands-On Lab: Let's Build an ITSM Dashboard
Hands-On Lab: Let's Build an ITSM DashboardHands-On Lab: Let's Build an ITSM Dashboard
Hands-On Lab: Let's Build an ITSM Dashboard
 
Click to Disk Troubleshooting with AppDynamics and OpsDataStore - AppSphere16
Click to Disk Troubleshooting with AppDynamics and OpsDataStore - AppSphere16Click to Disk Troubleshooting with AppDynamics and OpsDataStore - AppSphere16
Click to Disk Troubleshooting with AppDynamics and OpsDataStore - AppSphere16
 
Anypoint monitoring capabilities
Anypoint monitoring capabilitiesAnypoint monitoring capabilities
Anypoint monitoring capabilities
 
Disruptive Trends in Application Development
Disruptive Trends in Application DevelopmentDisruptive Trends in Application Development
Disruptive Trends in Application Development
 
Best Practices for Managing IaaS, PaaS, and Container-Based Deployments - App...
Best Practices for Managing IaaS, PaaS, and Container-Based Deployments - App...Best Practices for Managing IaaS, PaaS, and Container-Based Deployments - App...
Best Practices for Managing IaaS, PaaS, and Container-Based Deployments - App...
 
Hewlett Packard Enterprise (HPE) Service Virtualization (SV)
Hewlett Packard Enterprise (HPE) Service Virtualization (SV)Hewlett Packard Enterprise (HPE) Service Virtualization (SV)
Hewlett Packard Enterprise (HPE) Service Virtualization (SV)
 

Similar a Scaling Apps with Heroku

Salesforce CCT Munich 2013 Introducing heroku - elastic, polyglot platform as...
Salesforce CCT Munich 2013 Introducing heroku - elastic, polyglot platform as...Salesforce CCT Munich 2013 Introducing heroku - elastic, polyglot platform as...
Salesforce CCT Munich 2013 Introducing heroku - elastic, polyglot platform as...John Stevenson
 
Heroku - developer playground
Heroku - developer playground Heroku - developer playground
Heroku - developer playground Troy Sellers
 
Enterprise Heroku for Java
Enterprise Heroku for JavaEnterprise Heroku for Java
Enterprise Heroku for JavaAyumu Aizawa
 
Heroku for team collaboration
Heroku for team collaborationHeroku for team collaboration
Heroku for team collaborationJohn Stevenson
 
Heroku for-team-collaboration
Heroku for-team-collaborationHeroku for-team-collaboration
Heroku for-team-collaborationJohn Stevenson
 
Srecon18americas lightning talk: Auto-Cascading Security Updates Through Dock...
Srecon18americas lightning talk: Auto-Cascading Security Updates Through Dock...Srecon18americas lightning talk: Auto-Cascading Security Updates Through Dock...
Srecon18americas lightning talk: Auto-Cascading Security Updates Through Dock...Andrey Falko
 
Lightning Developer Experience, Eclipse IDE Evolved
Lightning Developer Experience, Eclipse IDE EvolvedLightning Developer Experience, Eclipse IDE Evolved
Lightning Developer Experience, Eclipse IDE EvolvedSalesforce Developers
 
CloudOps evening presentation from Salesforce.com
CloudOps evening presentation from Salesforce.comCloudOps evening presentation from Salesforce.com
CloudOps evening presentation from Salesforce.comAlistair Croll
 
Using Python on Heroku and Force.com Canvas to Enhance Salesforce.com
Using Python on Heroku and Force.com Canvas to Enhance Salesforce.comUsing Python on Heroku and Force.com Canvas to Enhance Salesforce.com
Using Python on Heroku and Force.com Canvas to Enhance Salesforce.comSalesforce Developers
 
Modern App Dev: Modular Development Strategies
Modern App Dev: Modular Development StrategiesModern App Dev: Modular Development Strategies
Modern App Dev: Modular Development StrategiesSalesforce Developers
 
Building Mobile Apps on Salesforce Platform with Mobile SDK
Building Mobile Apps on Salesforce Platform with Mobile SDKBuilding Mobile Apps on Salesforce Platform with Mobile SDK
Building Mobile Apps on Salesforce Platform with Mobile SDKSalesforce Developers
 
Mobile architecture overview
Mobile architecture overviewMobile architecture overview
Mobile architecture overviewDavid Scruggs
 
ISV Monthly Tech Enablement (August 2017)
ISV Monthly Tech Enablement (August 2017)ISV Monthly Tech Enablement (August 2017)
ISV Monthly Tech Enablement (August 2017)Salesforce Partners
 
Build and Package Lightning Components for Lightning Exchange
Build and Package Lightning Components for Lightning ExchangeBuild and Package Lightning Components for Lightning Exchange
Build and Package Lightning Components for Lightning ExchangeSalesforce Developers
 
Igor Androsov on Mobilizing Salesforce Data with 12 Factor App on Heroku
Igor Androsov on Mobilizing Salesforce Data with 12 Factor App on HerokuIgor Androsov on Mobilizing Salesforce Data with 12 Factor App on Heroku
Igor Androsov on Mobilizing Salesforce Data with 12 Factor App on HerokuIgor Androsov
 
Sandboxes: The Future of App Development by Evan Barnet & Pam Barnet
Sandboxes: The Future of App Development by Evan Barnet & Pam BarnetSandboxes: The Future of App Development by Evan Barnet & Pam Barnet
Sandboxes: The Future of App Development by Evan Barnet & Pam BarnetSalesforce Admins
 

Similar a Scaling Apps with Heroku (20)

Introduction to Heroku
Introduction to HerokuIntroduction to Heroku
Introduction to Heroku
 
Salesforce CCT Munich 2013 Introducing heroku - elastic, polyglot platform as...
Salesforce CCT Munich 2013 Introducing heroku - elastic, polyglot platform as...Salesforce CCT Munich 2013 Introducing heroku - elastic, polyglot platform as...
Salesforce CCT Munich 2013 Introducing heroku - elastic, polyglot platform as...
 
Heroku - developer playground
Heroku - developer playground Heroku - developer playground
Heroku - developer playground
 
Enterprise Heroku for Java
Enterprise Heroku for JavaEnterprise Heroku for Java
Enterprise Heroku for Java
 
Heroku for team collaboration
Heroku for team collaborationHeroku for team collaboration
Heroku for team collaboration
 
Heroku for-team-collaboration
Heroku for-team-collaborationHeroku for-team-collaboration
Heroku for-team-collaboration
 
Srecon18americas lightning talk: Auto-Cascading Security Updates Through Dock...
Srecon18americas lightning talk: Auto-Cascading Security Updates Through Dock...Srecon18americas lightning talk: Auto-Cascading Security Updates Through Dock...
Srecon18americas lightning talk: Auto-Cascading Security Updates Through Dock...
 
Coding in the App Cloud
Coding in the App CloudCoding in the App Cloud
Coding in the App Cloud
 
Lightning Developer Experience, Eclipse IDE Evolved
Lightning Developer Experience, Eclipse IDE EvolvedLightning Developer Experience, Eclipse IDE Evolved
Lightning Developer Experience, Eclipse IDE Evolved
 
CloudOps evening presentation from Salesforce.com
CloudOps evening presentation from Salesforce.comCloudOps evening presentation from Salesforce.com
CloudOps evening presentation from Salesforce.com
 
Using Python on Heroku and Force.com Canvas to Enhance Salesforce.com
Using Python on Heroku and Force.com Canvas to Enhance Salesforce.comUsing Python on Heroku and Force.com Canvas to Enhance Salesforce.com
Using Python on Heroku and Force.com Canvas to Enhance Salesforce.com
 
Modern App Dev: Modular Development Strategies
Modern App Dev: Modular Development StrategiesModern App Dev: Modular Development Strategies
Modern App Dev: Modular Development Strategies
 
Building Mobile Apps on Salesforce Platform with Mobile SDK
Building Mobile Apps on Salesforce Platform with Mobile SDKBuilding Mobile Apps on Salesforce Platform with Mobile SDK
Building Mobile Apps on Salesforce Platform with Mobile SDK
 
Salesforce platform session 2
 Salesforce platform session 2 Salesforce platform session 2
Salesforce platform session 2
 
Mobile architecture overview
Mobile architecture overviewMobile architecture overview
Mobile architecture overview
 
ISV Monthly Tech Enablement (August 2017)
ISV Monthly Tech Enablement (August 2017)ISV Monthly Tech Enablement (August 2017)
ISV Monthly Tech Enablement (August 2017)
 
Get Into Lightning Flow Development
Get Into Lightning Flow DevelopmentGet Into Lightning Flow Development
Get Into Lightning Flow Development
 
Build and Package Lightning Components for Lightning Exchange
Build and Package Lightning Components for Lightning ExchangeBuild and Package Lightning Components for Lightning Exchange
Build and Package Lightning Components for Lightning Exchange
 
Igor Androsov on Mobilizing Salesforce Data with 12 Factor App on Heroku
Igor Androsov on Mobilizing Salesforce Data with 12 Factor App on HerokuIgor Androsov on Mobilizing Salesforce Data with 12 Factor App on Heroku
Igor Androsov on Mobilizing Salesforce Data with 12 Factor App on Heroku
 
Sandboxes: The Future of App Development by Evan Barnet & Pam Barnet
Sandboxes: The Future of App Development by Evan Barnet & Pam BarnetSandboxes: The Future of App Development by Evan Barnet & Pam Barnet
Sandboxes: The Future of App Development by Evan Barnet & Pam Barnet
 

Más de John Stevenson

ClojureX Conference 2017 - 10 amazing years of Clojure
ClojureX Conference 2017 - 10 amazing years of ClojureClojureX Conference 2017 - 10 amazing years of Clojure
ClojureX Conference 2017 - 10 amazing years of ClojureJohn Stevenson
 
Confessions of a developer community builder
Confessions of a developer community builderConfessions of a developer community builder
Confessions of a developer community builderJohn Stevenson
 
Progscon 2017: Taming the wild fronteer - Adventures in Clojurescript
Progscon 2017: Taming the wild fronteer - Adventures in ClojurescriptProgscon 2017: Taming the wild fronteer - Adventures in Clojurescript
Progscon 2017: Taming the wild fronteer - Adventures in ClojurescriptJohn Stevenson
 
Introduction to Functional Reactive Web with Clojurescript
Introduction to Functional Reactive Web with ClojurescriptIntroduction to Functional Reactive Web with Clojurescript
Introduction to Functional Reactive Web with ClojurescriptJohn Stevenson
 
Thinking Functionally with Clojure
Thinking Functionally with ClojureThinking Functionally with Clojure
Thinking Functionally with ClojureJohn Stevenson
 
Communication improbable
Communication improbableCommunication improbable
Communication improbableJohn Stevenson
 
Getting into public speaking at conferences
Getting into public speaking at conferencesGetting into public speaking at conferences
Getting into public speaking at conferencesJohn Stevenson
 
Functional web with clojure
Functional web with clojureFunctional web with clojure
Functional web with clojureJohn Stevenson
 
Get into Functional Programming with Clojure
Get into Functional Programming with ClojureGet into Functional Programming with Clojure
Get into Functional Programming with ClojureJohn Stevenson
 
Guiding people into Clojure
Guiding people into ClojureGuiding people into Clojure
Guiding people into ClojureJohn Stevenson
 
Git and github - Verson Control for the Modern Developer
Git and github - Verson Control for the Modern DeveloperGit and github - Verson Control for the Modern Developer
Git and github - Verson Control for the Modern DeveloperJohn Stevenson
 
Get Functional Programming with Clojure
Get Functional Programming with ClojureGet Functional Programming with Clojure
Get Functional Programming with ClojureJohn Stevenson
 
So you want to run a developer event, are you crazy?
So you want to run a developer event, are you crazy?So you want to run a developer event, are you crazy?
So you want to run a developer event, are you crazy?John Stevenson
 
Trailhead live - Overview of Salesforce App Cloud
Trailhead live - Overview of Salesforce App CloudTrailhead live - Overview of Salesforce App Cloud
Trailhead live - Overview of Salesforce App CloudJohn Stevenson
 
Clojure for Java developers
Clojure for Java developersClojure for Java developers
Clojure for Java developersJohn Stevenson
 
Introducing the Salesforce platform
Introducing the Salesforce platformIntroducing the Salesforce platform
Introducing the Salesforce platformJohn Stevenson
 
Dreamforce14 Metadata Management with Git Version Control
Dreamforce14 Metadata Management with Git Version ControlDreamforce14 Metadata Management with Git Version Control
Dreamforce14 Metadata Management with Git Version ControlJohn Stevenson
 
Getting started with Clojure
Getting started with ClojureGetting started with Clojure
Getting started with ClojureJohn Stevenson
 
Salesforce Summer of Hacks London - Introduction
Salesforce Summer of Hacks London - IntroductionSalesforce Summer of Hacks London - Introduction
Salesforce Summer of Hacks London - IntroductionJohn Stevenson
 
Developers guide to the Salesforce1 Platform
Developers guide to the Salesforce1 PlatformDevelopers guide to the Salesforce1 Platform
Developers guide to the Salesforce1 PlatformJohn Stevenson
 

Más de John Stevenson (20)

ClojureX Conference 2017 - 10 amazing years of Clojure
ClojureX Conference 2017 - 10 amazing years of ClojureClojureX Conference 2017 - 10 amazing years of Clojure
ClojureX Conference 2017 - 10 amazing years of Clojure
 
Confessions of a developer community builder
Confessions of a developer community builderConfessions of a developer community builder
Confessions of a developer community builder
 
Progscon 2017: Taming the wild fronteer - Adventures in Clojurescript
Progscon 2017: Taming the wild fronteer - Adventures in ClojurescriptProgscon 2017: Taming the wild fronteer - Adventures in Clojurescript
Progscon 2017: Taming the wild fronteer - Adventures in Clojurescript
 
Introduction to Functional Reactive Web with Clojurescript
Introduction to Functional Reactive Web with ClojurescriptIntroduction to Functional Reactive Web with Clojurescript
Introduction to Functional Reactive Web with Clojurescript
 
Thinking Functionally with Clojure
Thinking Functionally with ClojureThinking Functionally with Clojure
Thinking Functionally with Clojure
 
Communication improbable
Communication improbableCommunication improbable
Communication improbable
 
Getting into public speaking at conferences
Getting into public speaking at conferencesGetting into public speaking at conferences
Getting into public speaking at conferences
 
Functional web with clojure
Functional web with clojureFunctional web with clojure
Functional web with clojure
 
Get into Functional Programming with Clojure
Get into Functional Programming with ClojureGet into Functional Programming with Clojure
Get into Functional Programming with Clojure
 
Guiding people into Clojure
Guiding people into ClojureGuiding people into Clojure
Guiding people into Clojure
 
Git and github - Verson Control for the Modern Developer
Git and github - Verson Control for the Modern DeveloperGit and github - Verson Control for the Modern Developer
Git and github - Verson Control for the Modern Developer
 
Get Functional Programming with Clojure
Get Functional Programming with ClojureGet Functional Programming with Clojure
Get Functional Programming with Clojure
 
So you want to run a developer event, are you crazy?
So you want to run a developer event, are you crazy?So you want to run a developer event, are you crazy?
So you want to run a developer event, are you crazy?
 
Trailhead live - Overview of Salesforce App Cloud
Trailhead live - Overview of Salesforce App CloudTrailhead live - Overview of Salesforce App Cloud
Trailhead live - Overview of Salesforce App Cloud
 
Clojure for Java developers
Clojure for Java developersClojure for Java developers
Clojure for Java developers
 
Introducing the Salesforce platform
Introducing the Salesforce platformIntroducing the Salesforce platform
Introducing the Salesforce platform
 
Dreamforce14 Metadata Management with Git Version Control
Dreamforce14 Metadata Management with Git Version ControlDreamforce14 Metadata Management with Git Version Control
Dreamforce14 Metadata Management with Git Version Control
 
Getting started with Clojure
Getting started with ClojureGetting started with Clojure
Getting started with Clojure
 
Salesforce Summer of Hacks London - Introduction
Salesforce Summer of Hacks London - IntroductionSalesforce Summer of Hacks London - Introduction
Salesforce Summer of Hacks London - Introduction
 
Developers guide to the Salesforce1 Platform
Developers guide to the Salesforce1 PlatformDevelopers guide to the Salesforce1 Platform
Developers guide to the Salesforce1 Platform
 

Último

A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024Results
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...apidays
 
Top 5 Benefits OF Using Muvi Live Paywall For Live Streams
Top 5 Benefits OF Using Muvi Live Paywall For Live StreamsTop 5 Benefits OF Using Muvi Live Paywall For Live Streams
Top 5 Benefits OF Using Muvi Live Paywall For Live StreamsRoshan Dwivedi
 
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...gurkirankumar98700
 
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Igalia
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerThousandEyes
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking MenDelhi Call girls
 
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure serviceWhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure servicePooja Nehwal
 
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
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityPrincipled Technologies
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptxHampshireHUG
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonAnna Loughnan Colquhoun
 
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxMalak Abu Hammad
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationMichael W. Hawkins
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024The Digital Insurer
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processorsdebabhi2
 
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfThe Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfEnterprise Knowledge
 
Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024The Digital Insurer
 
Developing An App To Navigate The Roads of Brazil
Developing An App To Navigate The Roads of BrazilDeveloping An App To Navigate The Roads of Brazil
Developing An App To Navigate The Roads of BrazilV3cube
 
Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101Paola De la Torre
 

Último (20)

A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
 
Top 5 Benefits OF Using Muvi Live Paywall For Live Streams
Top 5 Benefits OF Using Muvi Live Paywall For Live StreamsTop 5 Benefits OF Using Muvi Live Paywall For Live Streams
Top 5 Benefits OF Using Muvi Live Paywall For Live Streams
 
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...
 
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men
 
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure serviceWhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
 
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
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivity
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt Robison
 
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptx
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day Presentation
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processors
 
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfThe Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
 
Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024
 
Developing An App To Navigate The Roads of Brazil
Developing An App To Navigate The Roads of BrazilDeveloping An App To Navigate The Roads of Brazil
Developing An App To Navigate The Roads of Brazil
 
Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101
 

Scaling Apps with Heroku

  • 1. Introduction to Heroku Scaling Customer facing apps and services
  • 2. Safe harbor Safe harbor statement under the Private Securities Litigation Reform Act of 1995: This presentation may contain forward-looking statements that involve risks, uncertainties, and assumptions. If any such uncertainties materialize or if any of the assumptions proves incorrect, the results of salesforce.com, inc. could differ materially from the results expressed or implied by the forward-looking statements we make. All statements other than statements of historical fact could be deemed forward-looking, including any projections of product or service availability, subscriber growth, earnings, revenues, or other financial items and any statements regarding strategies or plans of management for future operations, statements of belief, any statements concerning new, planned, or upgraded services or technology developments and customer contracts or use of our services. The risks and uncertainties referred to above include – but are not limited to – risks associated with developing and delivering new functionality for our service, new products and services, our new business model, our past operating losses, possible fluctuations in our operating results and rate of growth, interruptions or delays in our Web hosting, breach of our security measures, the outcome of any litigation, risks associated with completed and any possible mergers and acquisitions, the immature market in which we operate, our relatively limited operating history, our ability to expand, retain, and motivate our employees and manage our growth, new releases of our service and successful customer deployment, our limited history reselling non-salesforce.com products, and utilization and selling to larger enterprise customers. Further information on potential factors that could affect the financial results of salesforce.com, inc. is included in our annual report on Form 10-K for the most recent fiscal year and in our quarterly report on Form 10-Q for the most recent fiscal quarter. These documents and others containing important disclosures are available on the SEC Filings section of the Investor Information section of our Web site. Any unreleased services or features referenced in this or other presentations, press releases or public statements are not currently available and may not be delivered on time or at all. Customers who purchase our services should make the purchase decisions based upon features that are currently available. Salesforce.com, inc. assumes no obligation and does not intend to update these forward-looking statements.
  • 3. Apps Require Infrastructure This is what the Salesforce Data Centers provide for Salesforce Orgs Servers Networking Operations
  • 4. Apps Require Infrastructure What if a customer wants to deliver apps outside of their Salesforce Org ? Servers Networking Operations
  • 5. Apps Require Infrastructure Servers Networking Operations Managing your own Data Center is expensive Provisioning Servers is often a bottleneck, even when they are virtualised
  • 6. Heroku: The Developers Choice “Heroku lets us focus on our app and deliver more value to customers.” – Aaron Peckham, Urban Dictionary
  • 7. Example apps on Heroku Retail Media Marketing Campaigns Customer & Web Sites E-Commerce & Media Mobile & SaaS Apps App Portfolios success.heroku.com
  • 8. SolutionChallenge A highly-scalable system Supporting over 1 million customers Processing 3 million payments Thousands of payment partners - Allow people to buy food & provisions when nothing works - Fast response times - No down-time Hurricane Sandy proof payments via your mobile
  • 9. SolutionChallenge NEB bio-freezers provide live enzymes for genomic research in labs around the world Heroku + Force.com connects NEB to customers with live support and bi-directional access to inventory and usage for automated restocking Manual process of distribution, inventory control and customer engagement created business inefficiencies
  • 10. Proven Success 5 Billion Requests per day 4+ Million Apps Created 125+ Add-on Services “Heroku enables us to build, test and ship faster than we ever would be able to otherwise" – Jay Stakelon, VP of Product, Fullscreen
  • 11. Heroku is the developers’ choice “I recommend Heroku to anyone that wants to spend time working on their product and not on servers.” – Ryan Twomey, Lead Platform Engineer, LevelUp
  • 12. Free Developer Environment Using only 1 dyno for your Heroku App is free - Your app will sleep after 1 hour of inactivity
  • 13. What is Heroku? Database Enterprise grade Postgres as a service Add-ons Marketplace for data stores and app services Dynos Run virtually any language at any scale Everything you need to build, run and scale customer apps
  • 14. Connected easy linking of the Heroku Postgres database driving your apps with your Salesforce Org Transforming customer data translated into business applicable information Managed 2-way synchronization of high volumes of data at a sustainable rate Heroku1 Connect Heroku & Force.com
  • 16. Heroku core language support Ruby, Java, NodeJS & Python Virtually every language you can think of is supported by community buildpacks https://devcenter.heroku.com/articles/third-party-buildpacks
  • 17. Developer driven deployment Deploy using Git version control - the most popular software versioning tool for developers git push heroku master
  • 18. Continuous Deployment Easy to deploy changes, so developers deploy smaller changes more often - quickly understand the value of software you create
  • 19. Consistent Deployment Build scripts ensure that the entire environment is built in the same way git push heroku master
  • 20. Consistent Deployment Creating an Heroku app provides a placeholder for your app heroku create app-name --region us|eu
  • 21. Consistent Deployment Pushing code to Heroku creates brand new infrastructure git push heroku master
  • 22.
  • 23.
  • 24. Heroku Demo Time Demo Gods, please by kind
  • 25. Traceable deployment Every deployment is traceable to the exact code version in your Git repository git log --graph --oneline --decorate
  • 26. Traceable deployment Heroku dashboard shows your deployment versions
  • 27. Repeatable deployment You app is deployed from the code in your Git repository git push my-app-test master git push my-app-staging master Establish a complete set of consistent environments to support your development
  • 28. Consistent Environments Buildpacks ensure consistency across environment setups Test Environment Staging Environment Production Environment Environment variables used for specific database connections, services, etc.
  • 29. Collaborative deployment Using Git is an effective way for developers and teams to collaborate around projects
  • 30.
  • 31.
  • 32. Heroku Orgs for apps oversight and collaboration
  • 33. Heroku Orgs Manage all your applications under one organisation heroku create app-name --org org-name
  • 34. Heroku Orgs Resource Management
  • 37. Manage your apps in one place
  • 40. 3rd Party Orgs Manage access to applications under one organisation - 3rd party developers can be limited to specific apps
  • 41. Scaling your apps on Heroku
  • 42. Scaling your apps on Heroku Dynos can be spun up on demand, scaling resources almost instantaneously heroku ps:scale web=10 heroku ps:scale web=0 Dynos can also be scaled down instantaneously when not needed
  • 43. Scaling your apps on Heroku Dynos can run different processes, enabling fine grain scaling heroku ps:scale web=10 heroku ps:scale background=3 Heroku ps:scale queue=1 Web processes listen to http[s] requests, other are background processes
  • 44. Scaling your apps on Heroku
  • 45. Performance Dynos - Px Have a whole block of resources to scale your Heroku app - routing latency advantages when you scale past 10 dynos heroku ps:resize web=PX https://blog.heroku.com/archives/2014/2/3/heroku-xl
  • 46. Performance Dynos - Px https://blog.heroku.com/archives/2014/2/3/heroku-xl
  • 47. Managing your apps on Heroku
  • 48. Troubleshooting your app Heroku Logplex gives a unified log to find the real root cause of issues heroku logs
  • 49. Managing Heroku infrastructure Dynos are automatically patched for security vulnerabilities - a new dyno is established before the current one is decommissioned - requests are automatically routed to the new dyno Unresponsive & run-away processes have their dyno “recycled” New DynoCurrent Dyno Current Slug
  • 50. Production access without the risk Connect via secure shell to a copy of your Production app Temporary dyno Production dyno heroku run bash Current Slug
  • 52. Heroku Production Health Check Quickly review your app to ensure it is configured to be used in production
  • 55. Fast Rollbacks Roll-forward a previously working deployment - allowing time to fix the root cause of a deployment issue Roll-forward dyno Version 22 (cloned from v20) Production Dyno Version 21 heroku releases heroku releases:info 20 Heroku releases:rollback 20
  • 56. Fast Rollbacks You can see your release history via the command line or the Heroku dashboard
  • 57. Boosting app development with Heroku add-ons
  • 58. Largest Paas Marketplace Developer-focused add- ons allow you to provision datastores & services on demand
  • 61. New Relic – end 2 end monitoring
  • 64. 12 Factor App Even if your platform is scalable, it does not mean your app is - or it may not scale efficiently 12factor.net Heroku engineers defined a set of principles to help you create and manage a highly scalable application.
  • 65. Heroku1 Connect In action Automated syncronisation between Heroku Postgress and your Salesforce Org www.heroku.com/1
  • 66. Heroku1 Connect Heroku Salesforce Org Auto synchronization of data Customer facing App / website Customer data captured Understanding about your customers Turn customer interaction to valuable business insight
  • 67. Add Heroku Postgres to your App
  • 68. Adding the Heroku1 Connect addon to your App
  • 69. Your app on the Heroku Dashboard
  • 70. Choosing an Heroku Postgress Database
  • 71. Authorising access to your Salesforce Org
  • 72. Your Heroku1 Connect Dashboard
  • 73. Choose a Salesforce Object for Syncronisation
  • 74. Example: Selecting a Plant object
  • 75. Choosing Fields to sync on the Salesforce Object
  • 76. Example: Selecting Plant fields to synchronize
  • 77. Summary of Object Fields to be synchronised
  • 79. First Sync happens as soon as an object is mapped
  • 81. Pause & Resume Sync’ing
  • 82. Developer tools can access your Heroku Postgress Database
  • 83. Heroku1 Connect Summary Get a single view of all your customer data - from every single touch point you create - connecting only that data that will provide value An easy service to configure & monitor - ensuring you maximize the resources of your Salesforce Org Save time & costs by not building your own solution - no value in building & maintaining commodity services
  • 84. Heroku Summary Developer driven deployment - using tools developers are used to using Easy scaling to support your growth - scale quickly and easily view your usage Save time & costs by building on Heroku services - reduce the operations effort and build innovate apps quickly
  • 85. Try Heroku for yourself Learn more at: http://heroku.com/ Getting started with Heroku guides: http://developers.salesforce.com

Notas del editor

  1. Apps obviously require infrastructure to run on and someone needs to commission and manage that infrastructure. The infrastructure needs to be established quickly to meet growth in the business and deliver a level of trust through reliability and security.Which parts of managing your own infrastructure provides value or can be done so more effectively than service providers?Can you provide an easy way to consume this infrastructure whist keeping the flexibility of a traditional server?
  2. Apps obviously require infrastructure to run on and someone needs to commission and manage that infrastructure. The infrastructure needs to be established quickly to meet growth in the business and deliver a level of trust through reliability and security.Which parts of managing your own infrastructure provides value or can be done so more effectively than service providers?Can you provide an easy way to consume this infrastructure whist keeping the flexibility of a traditional server?
  3. Apps obviously require infrastructure to run on and someone needs to commission and manage that infrastructure. The infrastructure needs to be established quickly to meet growth in the business and deliver a level of trust through reliability and security.Which parts of managing your own infrastructure provides value or can be done so more effectively than service providers?Can you provide an easy way to consume this infrastructure whist keeping the flexibility of a traditional server?
  4. Build scripts provide a standard way to deploy your apps over and over again. Every time you push to heroku a new environment is created
  5. Build scripts provide a standard way to deploy your apps over and over again. Every time you push to heroku a new environment is created
  6. Build scripts provide a standard way to deploy your apps over and over again. Every time you push to heroku a new environment is created
  7. Build scripts provide a standard way to deploy your apps over and over again. Every time you push to heroku a new environment is created
  8. Build scripts provide a standard way to deploy your apps over and over again. Every time you push to heroku a new environment is created
  9. The deployment version is taken from the Git commit number
  10. use environment variables to configure database connections, etc.
  11. Team deployment around Heroku, using Github as an example of how to collaborate on code effectively.Heroku do not recommend using the HerokuGit repository as the canonical source code repository.
  12. Team deployment around Heroku, using Github as an example of how to collaborate on code effectively.Heroku do not recommend using the HerokuGit repository as the canonical source code repository.
  13. You can manage your 3rd party relationships at the code and app level easilyYou can selectively give scaling access to people in the org, so that 3rd party developers can only push and scale specific apps
  14. Build scripts provide a standard way to deploy your apps over and over again. Every time you push to heroku a new environment is created
  15. Build scripts provide a standard way to deploy your apps over and over again. Every time you push to heroku a new environment is created
  16. Build scripts provide a standard way to deploy your apps over and over again. Every time you push to heroku a new environment is created
  17. Build scripts provide a standard way to deploy your apps over and over again. Every time you push to heroku a new environment is created
  18. Build scripts provide a standard way to deploy your apps over and over again. Every time you push to heroku a new environment is created
  19. Some advanced user roles are planned for Heroku Orgs
  20. Apps in an HerokuOrganisation can be locked to prevent collaborators joining without being invited by the current collaborators.
  21. You can manage your 3rd party relationships at the code and app level easilyYou could set up an Heroku Org with another company and share services at the app level. You could publish apps to the Org and selectively give access to the 3rd party you are working with. Or just allow the 3rd party to publish their apps within the org.Or you could do the reverse. The 3rd party owns the org and you can push any commodity apps and services to them easily.
  22. . By abstracting away the infrastructure, Heroku lets developers focus on their application and not on servers. Using known tools like Git and the command line, developers can instantly and continuously deploy their application to the cloud. By leveraging a broad catalog of add-ons, developers can accelerate their development and quickly add features to their applications.A simplified definition of resourcesRuns one or more application processesRequires no patching or other maintenance a typical (virtual) server would need
  23. . By abstracting away the infrastructure, Heroku lets developers focus on their application and not on servers. Using known tools like Git and the command line, developers can instantly and continuously deploy their application to the cloud. By leveraging a broad catalog of add-ons, developers can accelerate their development and quickly add features to their applications.A simplified definition of resourcesRuns one or more application processesRequires no patching or other maintenance a typical (virtual) server would need
  24. . By abstracting away the infrastructure, Heroku lets developers focus on their application and not on servers. Using known tools like Git and the command line, developers can instantly and continuously deploy their application to the cloud. By leveraging a broad catalog of add-ons, developers can accelerate their development and quickly add features to their applications.A simplified definition of resourcesRuns one or more application processesRequires no patching or other maintenance a typical (virtual) server would need
  25. Every HerokuDyno is recycled every 24 hours. This ensures any patches or upgrades to the underlying system (eg. OS) are applied.If there is a problem with the process running on a dyno, eg. It fails to respond in a timely manor or consumes all its memory then a new dyno is created from the current application slug and requests are routed to this new dyno. The existing dyno is asked to kill its running processes gracefully and is then decommissioned.Creating a new dyno from an application slug is almost instantaneous, however your application process may take a few seconds to start up. The quicker your application starts the sooner your new dyno is able to handle requests.
  26. Heroku can give you an almost instantaneous rollback, without the need for a new deployment. You can view all the previous releases of your app on Heroku from the command line using heroku releases. You can see the details of each release to help you determine the release to roll back to.Once you have choses the most appropriate release to roll back to, the command herokurleases: rollback number will create a new deployment from the slug already created from the version number release you specified. This slug was stored in local storage (relative to your app deployment – an Amazon S3 bucket). This slug creates a new release version.This approach gives you a fast way to back out of a error-prone app deployment. It does not take care of any database rollback, so you may want to put your app in maintenance mode. This approach also does not fix the error for you. So if there is an issue with the code, you should fix it and check that code fix into Git and push it up to the Heroku repository to create a new deployment version (version 23).
  27. Heroku can give you an almost instantaneous rollback, without the need for a new deployment. You can view all the previous releases of your app on Heroku from the command line using heroku releases. You can see the details of each release to help you determine the release to roll back to.Once you have choses the most appropriate release to roll back to, the command herokurleases: rollback number will create a new deployment from the slug already created from the version number release you specified. This slug was stored in local storage (relative to your app deployment – an Amazon S3 bucket). This slug creates a new release version.This approach gives you a fast way to back out of a error-prone app deployment. It does not take care of any database rollback, so you may want to put your app in maintenance mode. This approach also does not fix the error for you. So if there is an issue with the code, you should fix it and check that code fix into Git and push it up to the Heroku repository to create a new deployment version (version 23).
  28. Heroku has over 100 services and datastores available via addons.heroku.com
  29. I am unsure if the command “herokupg:wait”
  30. Click on the names of the addons in order to configure them. So co start using Heroku1 Connect, click on the herokuconnectaddon name.(Note: this screenshot was taken before the application was deployed)
  31. This is the first pop-up dialog you see when you click on the herokuconnectaddon in your Apps heroku dashboard (see previous slide).
  32. There are two rows of data (records) in the Salesforce Org for Plant. As soon as the mapping is complete, Heroku1 connect will synchronise the data (at least that is what it seems like happens).Note that when viewing the Activity dashboard then Heroku1 connect will synchronise all changes every 3 minutes, rather than the default 10 minutes.Customers are requesting to be able to configure the time duration between synchronisation from within the dashboard settings.
  33. You can still access your HerokuPostgress database using the typical developer tooling, eg. Postress Admin (pictured), Postgres command line shell, etc.