SlideShare a Scribd company logo
Heroku – Pitfalls and Solutions
Taking the very best of Heroku without surprise !!
Vincent Spehner, Tquila, Heroku Practice Manager
@vzmind
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.
Introduction
Last year at Dreamforce to interview speakers talking about
Heroku and meet other early adopters of the Platform.
 Released the first version of Heroku Salesforce Playbook on Xmas
2012
• Heroku history
• Introduction to Heroku Toolbelt
• Java and Ruby tutorial to get started
 Next release available soon (Xmas 2013)
• Presenting 15 detailed use cases
• Introduction to the different Salesforce APIs
Introduction
Today the objective is to present some common mistakes done
when building Cloud app (including on Heroku) and learn how to
avoid them
 Platform / language neutral
 First we need to understand how Cloud Apps are different ?
• Heroku 12 factors
• Cloud App with remote Data/API
Cloud App Architecture
The API latency syndrome
How to detect it ?
 Pages taking ages to display
 API Quota reached quickly
 More than 5 API calls per action
SOLUTION : CACHE EVERYWHERE IT’S REQUIRED !!
Cache OR Call pattern
Reduce overall API Latency:
Understanding Caching options
Cache vs Data replication vs Data synchronization:
 Caching weakness is that you need to sweep it regularly and automate it
 Data replication weakness is that bi-directional update replication implies
potential conflict which need a proper management
 Data synchronization using third party tools such as CloudConnect is a really
convenient way to avoid
API cache warming
Principle
 You already know that your application need to get the list of remote
static objects
 Add a worker dedicated to Cache warming
 Store all remote Static records locally
 Define refreshing strategy on the worker itself
API cache warming
Environment management
Is your local machine the Test env ?
 Heroku app might behave differently than on your Local Machine or
Test Server
• Assets compilation failing
• Process running differently
• Static Configuration
• Memory management
Environment management
Solutions:
 Dev ENV as clause of Heroku PROD ENV than possible
 Duplicate your Production ENV for TEST
 Use Foreman locally
 Share Heroku config with your team and load it as part of your ENV
 Of course you can spin up and down TEST env
Salesforce custom APEX End Point
Objective:
 Reduce API calls
 Access Hidden Business Logic
Creating custom APEX endpoint:
 Group API calls
 Aggregate multiple records in ONE call
 Trigger complex Apex code from a REST endpoint
No clues on errors
Logplex principle
 Logs are an event Stream (12 Factor number XI)
Monitor early, drive safely:
 Start recording logs from the beginning with enough storage capacity
 Monitor your app
 Make sure your logs are relevant
Log stream , Papertrail, New Relic
App capacity estimation
Load test your app
Conclusion
 Be creative
 PoC are not expensive
 Use the right technology/language for the right challenge
 Check the playbook, share your ideas with Book authors
All about Tquila
Click to add brief company overview here. Lorem ipsum
dolor sit amet, consectetur adipiscing elit. Sed lectus tortor,
pulvinar sit amet blandit ac, bibendum vitae sapien.
 Click to add implementation highlights; no more than four
 Click to add implementation highlights; no more than four. Lorem
ipsum dolor sit amet, consectetur adipiscing elit.
 Click to add implementation highlights; no more than four
 Click to add implementation highlights; no more than four
Vincent Spehner
Heroku Practice Manager,
@vzmind
“If there's anything more important than my ego around, I want it
caught and shot now.” Douglas Adams
“So long, and thanks for all the fish.”
"So once you do know what the question actually is, you'll know what
the answer means.”
“How many roads must a man walk down?”
“Looking up into the night sky is looking into infinity — distance is
incomprehensible and therefore meaningless”
Slide parts
Slide parts
Slide parts
Slide parts

More Related Content

What's hot

Innovation Showcase: How Amazon and USAA Build Inspiring Apps on App Cloud
Innovation Showcase: How Amazon and USAA Build Inspiring Apps on App CloudInnovation Showcase: How Amazon and USAA Build Inspiring Apps on App Cloud
Innovation Showcase: How Amazon and USAA Build Inspiring Apps on App Cloud
Dreamforce
 
CodeLive with Adam Daw - Building a mobile friendly geolocation aware candy t...
CodeLive with Adam Daw - Building a mobile friendly geolocation aware candy t...CodeLive with Adam Daw - Building a mobile friendly geolocation aware candy t...
CodeLive with Adam Daw - Building a mobile friendly geolocation aware candy t...
JackGuo20
 
An Insider's Guide to Security Review (October 13, 2014)
An Insider's Guide to Security Review (October 13, 2014)An Insider's Guide to Security Review (October 13, 2014)
An Insider's Guide to Security Review (October 13, 2014)
Salesforce Partners
 
The Ideal Salesforce Development Lifecycle
The Ideal Salesforce Development LifecycleThe Ideal Salesforce Development Lifecycle
The Ideal Salesforce Development Lifecycle
Joshua Hoskins
 
How Appian Supports Agency DevOps
How Appian Supports Agency DevOpsHow Appian Supports Agency DevOps
How Appian Supports Agency DevOps
Appian
 
Infrastructure Performance Management: Flexibility Combining Breadth, Depth ...
Infrastructure Performance Management: Flexibility Combining Breadth, Depth ...Infrastructure Performance Management: Flexibility Combining Breadth, Depth ...
Infrastructure Performance Management: Flexibility Combining Breadth, Depth ...
CA Technologies
 
Salesforce's Trusted Enterprise Platform and Apache Phoenix
Salesforce's Trusted Enterprise Platform and Apache PhoenixSalesforce's Trusted Enterprise Platform and Apache Phoenix
Salesforce's Trusted Enterprise Platform and Apache Phoenix
Salesforce Engineering
 
9 Principles for Salesforce Application Architecture
9 Principles for Salesforce Application Architecture9 Principles for Salesforce Application Architecture
9 Principles for Salesforce Application Architecture
Steven Herod
 
Intergen Think! Seminar: Assesing your fit for ERP cloud
Intergen Think! Seminar: Assesing your fit for ERP cloudIntergen Think! Seminar: Assesing your fit for ERP cloud
Intergen Think! Seminar: Assesing your fit for ERP cloud
Intergen
 
The Modern Salesforce Development Workflow with Visual Studio Code
The Modern Salesforce Development Workflow with Visual Studio CodeThe Modern Salesforce Development Workflow with Visual Studio Code
The Modern Salesforce Development Workflow with Visual Studio Code
Salesforce Developers
 
ISV Tech Talk: Distributing Lightning Components
ISV Tech Talk: Distributing Lightning ComponentsISV Tech Talk: Distributing Lightning Components
ISV Tech Talk: Distributing Lightning Components
CodeScience
 
Rapise 7.1: New Functionality and Enhancements
Rapise 7.1: New Functionality and EnhancementsRapise 7.1: New Functionality and Enhancements
Rapise 7.1: New Functionality and Enhancements
Inflectra
 
Inflectra CodeCamp Internship Introduction
Inflectra CodeCamp Internship IntroductionInflectra CodeCamp Internship Introduction
Inflectra CodeCamp Internship Introduction
Adam Sandman
 
The John Hancock Monitoring Story, FutureStack17
The John Hancock Monitoring Story, FutureStack17The John Hancock Monitoring Story, FutureStack17
The John Hancock Monitoring Story, FutureStack17
New Relic
 
Dreamforce Debrief - From 0 to 360 in No time with a CRM Cloud Solution
Dreamforce Debrief - From 0 to 360 in No time with a CRM Cloud SolutionDreamforce Debrief - From 0 to 360 in No time with a CRM Cloud Solution
Dreamforce Debrief - From 0 to 360 in No time with a CRM Cloud Solution
Capgemini
 
5 Signs its Time to Change Your Change Management System
5 Signs its Time to Change Your Change Management System5 Signs its Time to Change Your Change Management System
5 Signs its Time to Change Your Change Management System
Rocket Software ALM
 
AppDynamics the Missing Link to DevOps - AppSphere16
AppDynamics the Missing Link to DevOps - AppSphere16AppDynamics the Missing Link to DevOps - AppSphere16
AppDynamics the Missing Link to DevOps - AppSphere16
AppDynamics
 
Agile Capitalization For Greater Business Value
Agile Capitalization For Greater Business ValueAgile Capitalization For Greater Business Value
Agile Capitalization For Greater Business Value
CA Technologies
 
Code live with ryan headley code reviews done right
Code live with ryan headley   code reviews done rightCode live with ryan headley   code reviews done right
Code live with ryan headley code reviews done right
JackGuo20
 
Art of Agile Estimation
Art of Agile EstimationArt of Agile Estimation
Art of Agile Estimation
Sriram Rajagopalan
 

What's hot (20)

Innovation Showcase: How Amazon and USAA Build Inspiring Apps on App Cloud
Innovation Showcase: How Amazon and USAA Build Inspiring Apps on App CloudInnovation Showcase: How Amazon and USAA Build Inspiring Apps on App Cloud
Innovation Showcase: How Amazon and USAA Build Inspiring Apps on App Cloud
 
CodeLive with Adam Daw - Building a mobile friendly geolocation aware candy t...
CodeLive with Adam Daw - Building a mobile friendly geolocation aware candy t...CodeLive with Adam Daw - Building a mobile friendly geolocation aware candy t...
CodeLive with Adam Daw - Building a mobile friendly geolocation aware candy t...
 
An Insider's Guide to Security Review (October 13, 2014)
An Insider's Guide to Security Review (October 13, 2014)An Insider's Guide to Security Review (October 13, 2014)
An Insider's Guide to Security Review (October 13, 2014)
 
The Ideal Salesforce Development Lifecycle
The Ideal Salesforce Development LifecycleThe Ideal Salesforce Development Lifecycle
The Ideal Salesforce Development Lifecycle
 
How Appian Supports Agency DevOps
How Appian Supports Agency DevOpsHow Appian Supports Agency DevOps
How Appian Supports Agency DevOps
 
Infrastructure Performance Management: Flexibility Combining Breadth, Depth ...
Infrastructure Performance Management: Flexibility Combining Breadth, Depth ...Infrastructure Performance Management: Flexibility Combining Breadth, Depth ...
Infrastructure Performance Management: Flexibility Combining Breadth, Depth ...
 
Salesforce's Trusted Enterprise Platform and Apache Phoenix
Salesforce's Trusted Enterprise Platform and Apache PhoenixSalesforce's Trusted Enterprise Platform and Apache Phoenix
Salesforce's Trusted Enterprise Platform and Apache Phoenix
 
9 Principles for Salesforce Application Architecture
9 Principles for Salesforce Application Architecture9 Principles for Salesforce Application Architecture
9 Principles for Salesforce Application Architecture
 
Intergen Think! Seminar: Assesing your fit for ERP cloud
Intergen Think! Seminar: Assesing your fit for ERP cloudIntergen Think! Seminar: Assesing your fit for ERP cloud
Intergen Think! Seminar: Assesing your fit for ERP cloud
 
The Modern Salesforce Development Workflow with Visual Studio Code
The Modern Salesforce Development Workflow with Visual Studio CodeThe Modern Salesforce Development Workflow with Visual Studio Code
The Modern Salesforce Development Workflow with Visual Studio Code
 
ISV Tech Talk: Distributing Lightning Components
ISV Tech Talk: Distributing Lightning ComponentsISV Tech Talk: Distributing Lightning Components
ISV Tech Talk: Distributing Lightning Components
 
Rapise 7.1: New Functionality and Enhancements
Rapise 7.1: New Functionality and EnhancementsRapise 7.1: New Functionality and Enhancements
Rapise 7.1: New Functionality and Enhancements
 
Inflectra CodeCamp Internship Introduction
Inflectra CodeCamp Internship IntroductionInflectra CodeCamp Internship Introduction
Inflectra CodeCamp Internship Introduction
 
The John Hancock Monitoring Story, FutureStack17
The John Hancock Monitoring Story, FutureStack17The John Hancock Monitoring Story, FutureStack17
The John Hancock Monitoring Story, FutureStack17
 
Dreamforce Debrief - From 0 to 360 in No time with a CRM Cloud Solution
Dreamforce Debrief - From 0 to 360 in No time with a CRM Cloud SolutionDreamforce Debrief - From 0 to 360 in No time with a CRM Cloud Solution
Dreamforce Debrief - From 0 to 360 in No time with a CRM Cloud Solution
 
5 Signs its Time to Change Your Change Management System
5 Signs its Time to Change Your Change Management System5 Signs its Time to Change Your Change Management System
5 Signs its Time to Change Your Change Management System
 
AppDynamics the Missing Link to DevOps - AppSphere16
AppDynamics the Missing Link to DevOps - AppSphere16AppDynamics the Missing Link to DevOps - AppSphere16
AppDynamics the Missing Link to DevOps - AppSphere16
 
Agile Capitalization For Greater Business Value
Agile Capitalization For Greater Business ValueAgile Capitalization For Greater Business Value
Agile Capitalization For Greater Business Value
 
Code live with ryan headley code reviews done right
Code live with ryan headley   code reviews done rightCode live with ryan headley   code reviews done right
Code live with ryan headley code reviews done right
 
Art of Agile Estimation
Art of Agile EstimationArt of Agile Estimation
Art of Agile Estimation
 

Similar to Dreamforce 2013 - Pitfalls and solutions

Best Practices for Creating Scalable Apps with Heroku
Best Practices for Creating Scalable Apps with HerokuBest Practices for Creating Scalable Apps with Heroku
Best Practices for Creating Scalable Apps with Heroku
Salesforce Developers
 
Dreamforce 2013 - Heroku 5 use cases
Dreamforce 2013 - Heroku 5 use casesDreamforce 2013 - Heroku 5 use cases
Dreamforce 2013 - Heroku 5 use cases
Vincent Spehner
 
Introduction to Heroku
Introduction to HerokuIntroduction to Heroku
Introduction to Heroku
Salesforce Developers
 
Coding in the App Cloud
Coding in the App CloudCoding in the App Cloud
Coding in the App Cloud
Salesforce Developers
 
Heroku - developer playground
Heroku - developer playground Heroku - developer playground
Heroku - developer playground
Troy Sellers
 
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
Igor Androsov
 
Dreamforce 13 developer session: Introduction to Heroku
Dreamforce 13 developer session: Introduction to HerokuDreamforce 13 developer session: Introduction to Heroku
Dreamforce 13 developer session: Introduction to Heroku
John Stevenson
 
Examples of Using Heroku With Force.com to Build Apps
Examples of Using Heroku With Force.com to Build AppsExamples of Using Heroku With Force.com to Build Apps
Examples of Using Heroku With Force.com to Build Apps
Salesforce Developers
 
Introduction to Apex Triggers
Introduction to Apex TriggersIntroduction to Apex Triggers
Introduction to Apex Triggers
Salesforce Developers
 
Lightning Developer Experience, Eclipse IDE Evolved
Lightning Developer Experience, Eclipse IDE EvolvedLightning Developer Experience, Eclipse IDE Evolved
Lightning Developer Experience, Eclipse IDE Evolved
Salesforce Developers
 
Turbocharging AppExchange
Turbocharging AppExchangeTurbocharging AppExchange
Turbocharging AppExchange
dreamforce2006
 
How to Launch Your AppExchange App at Dreamforce
How to Launch Your AppExchange App at DreamforceHow to Launch Your AppExchange App at Dreamforce
How to Launch Your AppExchange App at Dreamforce
CodeScience
 
Sharing APIs at Scale for a Great Developer Experience
Sharing APIs at Scale for a Great Developer ExperienceSharing APIs at Scale for a Great Developer Experience
Sharing APIs at Scale for a Great Developer Experience
Postman
 
Dreamforce 2014 - Salesforce Python SDK for REST/SOAP APIs
Dreamforce 2014 - Salesforce Python SDK for REST/SOAP APIsDreamforce 2014 - Salesforce Python SDK for REST/SOAP APIs
Dreamforce 2014 - Salesforce Python SDK for REST/SOAP APIs
Hormoz Tarevern
 
Design Patterns: ISV Recipes for Success (Dreamforce 2015)
Design Patterns: ISV Recipes for Success (Dreamforce 2015)Design Patterns: ISV Recipes for Success (Dreamforce 2015)
Design Patterns: ISV Recipes for Success (Dreamforce 2015)
Salesforce Partners
 
Integrating with salesforce
Integrating with salesforceIntegrating with salesforce
Integrating with salesforce
Mark Adcock
 
Dreamforce '06 Keynote: Part 2
Dreamforce '06 Keynote: Part 2Dreamforce '06 Keynote: Part 2
Dreamforce '06 Keynote: Part 2
dreamforce2006
 
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
Salesforce Developers
 
Building Lightning Components for ISVs (Dreamforce 2015)
Building Lightning Components for ISVs (Dreamforce 2015)Building Lightning Components for ISVs (Dreamforce 2015)
Building Lightning Components for ISVs (Dreamforce 2015)
Salesforce Partners
 
Introduction to HEROKU Salesforce1 Platform DevDay
Introduction to HEROKU Salesforce1 Platform DevDayIntroduction to HEROKU Salesforce1 Platform DevDay
Introduction to HEROKU Salesforce1 Platform DevDay
Salesforce Developers
 

Similar to Dreamforce 2013 - Pitfalls and solutions (20)

Best Practices for Creating Scalable Apps with Heroku
Best Practices for Creating Scalable Apps with HerokuBest Practices for Creating Scalable Apps with Heroku
Best Practices for Creating Scalable Apps with Heroku
 
Dreamforce 2013 - Heroku 5 use cases
Dreamforce 2013 - Heroku 5 use casesDreamforce 2013 - Heroku 5 use cases
Dreamforce 2013 - Heroku 5 use cases
 
Introduction to Heroku
Introduction to HerokuIntroduction to Heroku
Introduction to Heroku
 
Coding in the App Cloud
Coding in the App CloudCoding in the App Cloud
Coding in the App Cloud
 
Heroku - developer playground
Heroku - developer playground Heroku - developer playground
Heroku - developer playground
 
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
 
Dreamforce 13 developer session: Introduction to Heroku
Dreamforce 13 developer session: Introduction to HerokuDreamforce 13 developer session: Introduction to Heroku
Dreamforce 13 developer session: Introduction to Heroku
 
Examples of Using Heroku With Force.com to Build Apps
Examples of Using Heroku With Force.com to Build AppsExamples of Using Heroku With Force.com to Build Apps
Examples of Using Heroku With Force.com to Build Apps
 
Introduction to Apex Triggers
Introduction to Apex TriggersIntroduction to Apex Triggers
Introduction to Apex Triggers
 
Lightning Developer Experience, Eclipse IDE Evolved
Lightning Developer Experience, Eclipse IDE EvolvedLightning Developer Experience, Eclipse IDE Evolved
Lightning Developer Experience, Eclipse IDE Evolved
 
Turbocharging AppExchange
Turbocharging AppExchangeTurbocharging AppExchange
Turbocharging AppExchange
 
How to Launch Your AppExchange App at Dreamforce
How to Launch Your AppExchange App at DreamforceHow to Launch Your AppExchange App at Dreamforce
How to Launch Your AppExchange App at Dreamforce
 
Sharing APIs at Scale for a Great Developer Experience
Sharing APIs at Scale for a Great Developer ExperienceSharing APIs at Scale for a Great Developer Experience
Sharing APIs at Scale for a Great Developer Experience
 
Dreamforce 2014 - Salesforce Python SDK for REST/SOAP APIs
Dreamforce 2014 - Salesforce Python SDK for REST/SOAP APIsDreamforce 2014 - Salesforce Python SDK for REST/SOAP APIs
Dreamforce 2014 - Salesforce Python SDK for REST/SOAP APIs
 
Design Patterns: ISV Recipes for Success (Dreamforce 2015)
Design Patterns: ISV Recipes for Success (Dreamforce 2015)Design Patterns: ISV Recipes for Success (Dreamforce 2015)
Design Patterns: ISV Recipes for Success (Dreamforce 2015)
 
Integrating with salesforce
Integrating with salesforceIntegrating with salesforce
Integrating with salesforce
 
Dreamforce '06 Keynote: Part 2
Dreamforce '06 Keynote: Part 2Dreamforce '06 Keynote: Part 2
Dreamforce '06 Keynote: Part 2
 
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
 
Building Lightning Components for ISVs (Dreamforce 2015)
Building Lightning Components for ISVs (Dreamforce 2015)Building Lightning Components for ISVs (Dreamforce 2015)
Building Lightning Components for ISVs (Dreamforce 2015)
 
Introduction to HEROKU Salesforce1 Platform DevDay
Introduction to HEROKU Salesforce1 Platform DevDayIntroduction to HEROKU Salesforce1 Platform DevDay
Introduction to HEROKU Salesforce1 Platform DevDay
 

Recently uploaded

Programming Foundation Models with DSPy - Meetup Slides
Programming Foundation Models with DSPy - Meetup SlidesProgramming Foundation Models with DSPy - Meetup Slides
Programming Foundation Models with DSPy - Meetup Slides
Zilliz
 
みなさんこんにちはこれ何文字まで入るの?40文字以下不可とか本当に意味わからないけどこれ限界文字数書いてないからマジでやばい文字数いけるんじゃないの?えこ...
みなさんこんにちはこれ何文字まで入るの?40文字以下不可とか本当に意味わからないけどこれ限界文字数書いてないからマジでやばい文字数いけるんじゃないの?えこ...みなさんこんにちはこれ何文字まで入るの?40文字以下不可とか本当に意味わからないけどこれ限界文字数書いてないからマジでやばい文字数いけるんじゃないの?えこ...
みなさんこんにちはこれ何文字まで入るの?40文字以下不可とか本当に意味わからないけどこれ限界文字数書いてないからマジでやばい文字数いけるんじゃないの?えこ...
名前 です男
 
GraphSummit Singapore | The Art of the Possible with Graph - Q2 2024
GraphSummit Singapore | The Art of the  Possible with Graph - Q2 2024GraphSummit Singapore | The Art of the  Possible with Graph - Q2 2024
GraphSummit Singapore | The Art of the Possible with Graph - Q2 2024
Neo4j
 
Driving Business Innovation: Latest Generative AI Advancements & Success Story
Driving Business Innovation: Latest Generative AI Advancements & Success StoryDriving Business Innovation: Latest Generative AI Advancements & Success Story
Driving Business Innovation: Latest Generative AI Advancements & Success Story
Safe Software
 
Climate Impact of Software Testing at Nordic Testing Days
Climate Impact of Software Testing at Nordic Testing DaysClimate Impact of Software Testing at Nordic Testing Days
Climate Impact of Software Testing at Nordic Testing Days
Kari Kakkonen
 
20240605 QFM017 Machine Intelligence Reading List May 2024
20240605 QFM017 Machine Intelligence Reading List May 202420240605 QFM017 Machine Intelligence Reading List May 2024
20240605 QFM017 Machine Intelligence Reading List May 2024
Matthew Sinclair
 
TrustArc Webinar - 2024 Global Privacy Survey
TrustArc Webinar - 2024 Global Privacy SurveyTrustArc Webinar - 2024 Global Privacy Survey
TrustArc Webinar - 2024 Global Privacy Survey
TrustArc
 
Full-RAG: A modern architecture for hyper-personalization
Full-RAG: A modern architecture for hyper-personalizationFull-RAG: A modern architecture for hyper-personalization
Full-RAG: A modern architecture for hyper-personalization
Zilliz
 
Let's Integrate MuleSoft RPA, COMPOSER, APM with AWS IDP along with Slack
Let's Integrate MuleSoft RPA, COMPOSER, APM with AWS IDP along with SlackLet's Integrate MuleSoft RPA, COMPOSER, APM with AWS IDP along with Slack
Let's Integrate MuleSoft RPA, COMPOSER, APM with AWS IDP along with Slack
shyamraj55
 
GraphSummit Singapore | Enhancing Changi Airport Group's Passenger Experience...
GraphSummit Singapore | Enhancing Changi Airport Group's Passenger Experience...GraphSummit Singapore | Enhancing Changi Airport Group's Passenger Experience...
GraphSummit Singapore | Enhancing Changi Airport Group's Passenger Experience...
Neo4j
 
Observability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdf
Observability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdfObservability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdf
Observability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdf
Paige Cruz
 
Cosa hanno in comune un mattoncino Lego e la backdoor XZ?
Cosa hanno in comune un mattoncino Lego e la backdoor XZ?Cosa hanno in comune un mattoncino Lego e la backdoor XZ?
Cosa hanno in comune un mattoncino Lego e la backdoor XZ?
Speck&Tech
 
HCL Notes und Domino Lizenzkostenreduzierung in der Welt von DLAU
HCL Notes und Domino Lizenzkostenreduzierung in der Welt von DLAUHCL Notes und Domino Lizenzkostenreduzierung in der Welt von DLAU
HCL Notes und Domino Lizenzkostenreduzierung in der Welt von DLAU
panagenda
 
HCL Notes and Domino License Cost Reduction in the World of DLAU
HCL Notes and Domino License Cost Reduction in the World of DLAUHCL Notes and Domino License Cost Reduction in the World of DLAU
HCL Notes and Domino License Cost Reduction in the World of DLAU
panagenda
 
20240609 QFM020 Irresponsible AI Reading List May 2024
20240609 QFM020 Irresponsible AI Reading List May 202420240609 QFM020 Irresponsible AI Reading List May 2024
20240609 QFM020 Irresponsible AI Reading List May 2024
Matthew Sinclair
 
Removing Uninteresting Bytes in Software Fuzzing
Removing Uninteresting Bytes in Software FuzzingRemoving Uninteresting Bytes in Software Fuzzing
Removing Uninteresting Bytes in Software Fuzzing
Aftab Hussain
 
“Building and Scaling AI Applications with the Nx AI Manager,” a Presentation...
“Building and Scaling AI Applications with the Nx AI Manager,” a Presentation...“Building and Scaling AI Applications with the Nx AI Manager,” a Presentation...
“Building and Scaling AI Applications with the Nx AI Manager,” a Presentation...
Edge AI and Vision Alliance
 
UiPath Test Automation using UiPath Test Suite series, part 5
UiPath Test Automation using UiPath Test Suite series, part 5UiPath Test Automation using UiPath Test Suite series, part 5
UiPath Test Automation using UiPath Test Suite series, part 5
DianaGray10
 
National Security Agency - NSA mobile device best practices
National Security Agency - NSA mobile device best practicesNational Security Agency - NSA mobile device best practices
National Security Agency - NSA mobile device best practices
Quotidiano Piemontese
 
Essentials of Automations: The Art of Triggers and Actions in FME
Essentials of Automations: The Art of Triggers and Actions in FMEEssentials of Automations: The Art of Triggers and Actions in FME
Essentials of Automations: The Art of Triggers and Actions in FME
Safe Software
 

Recently uploaded (20)

Programming Foundation Models with DSPy - Meetup Slides
Programming Foundation Models with DSPy - Meetup SlidesProgramming Foundation Models with DSPy - Meetup Slides
Programming Foundation Models with DSPy - Meetup Slides
 
みなさんこんにちはこれ何文字まで入るの?40文字以下不可とか本当に意味わからないけどこれ限界文字数書いてないからマジでやばい文字数いけるんじゃないの?えこ...
みなさんこんにちはこれ何文字まで入るの?40文字以下不可とか本当に意味わからないけどこれ限界文字数書いてないからマジでやばい文字数いけるんじゃないの?えこ...みなさんこんにちはこれ何文字まで入るの?40文字以下不可とか本当に意味わからないけどこれ限界文字数書いてないからマジでやばい文字数いけるんじゃないの?えこ...
みなさんこんにちはこれ何文字まで入るの?40文字以下不可とか本当に意味わからないけどこれ限界文字数書いてないからマジでやばい文字数いけるんじゃないの?えこ...
 
GraphSummit Singapore | The Art of the Possible with Graph - Q2 2024
GraphSummit Singapore | The Art of the  Possible with Graph - Q2 2024GraphSummit Singapore | The Art of the  Possible with Graph - Q2 2024
GraphSummit Singapore | The Art of the Possible with Graph - Q2 2024
 
Driving Business Innovation: Latest Generative AI Advancements & Success Story
Driving Business Innovation: Latest Generative AI Advancements & Success StoryDriving Business Innovation: Latest Generative AI Advancements & Success Story
Driving Business Innovation: Latest Generative AI Advancements & Success Story
 
Climate Impact of Software Testing at Nordic Testing Days
Climate Impact of Software Testing at Nordic Testing DaysClimate Impact of Software Testing at Nordic Testing Days
Climate Impact of Software Testing at Nordic Testing Days
 
20240605 QFM017 Machine Intelligence Reading List May 2024
20240605 QFM017 Machine Intelligence Reading List May 202420240605 QFM017 Machine Intelligence Reading List May 2024
20240605 QFM017 Machine Intelligence Reading List May 2024
 
TrustArc Webinar - 2024 Global Privacy Survey
TrustArc Webinar - 2024 Global Privacy SurveyTrustArc Webinar - 2024 Global Privacy Survey
TrustArc Webinar - 2024 Global Privacy Survey
 
Full-RAG: A modern architecture for hyper-personalization
Full-RAG: A modern architecture for hyper-personalizationFull-RAG: A modern architecture for hyper-personalization
Full-RAG: A modern architecture for hyper-personalization
 
Let's Integrate MuleSoft RPA, COMPOSER, APM with AWS IDP along with Slack
Let's Integrate MuleSoft RPA, COMPOSER, APM with AWS IDP along with SlackLet's Integrate MuleSoft RPA, COMPOSER, APM with AWS IDP along with Slack
Let's Integrate MuleSoft RPA, COMPOSER, APM with AWS IDP along with Slack
 
GraphSummit Singapore | Enhancing Changi Airport Group's Passenger Experience...
GraphSummit Singapore | Enhancing Changi Airport Group's Passenger Experience...GraphSummit Singapore | Enhancing Changi Airport Group's Passenger Experience...
GraphSummit Singapore | Enhancing Changi Airport Group's Passenger Experience...
 
Observability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdf
Observability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdfObservability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdf
Observability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdf
 
Cosa hanno in comune un mattoncino Lego e la backdoor XZ?
Cosa hanno in comune un mattoncino Lego e la backdoor XZ?Cosa hanno in comune un mattoncino Lego e la backdoor XZ?
Cosa hanno in comune un mattoncino Lego e la backdoor XZ?
 
HCL Notes und Domino Lizenzkostenreduzierung in der Welt von DLAU
HCL Notes und Domino Lizenzkostenreduzierung in der Welt von DLAUHCL Notes und Domino Lizenzkostenreduzierung in der Welt von DLAU
HCL Notes und Domino Lizenzkostenreduzierung in der Welt von DLAU
 
HCL Notes and Domino License Cost Reduction in the World of DLAU
HCL Notes and Domino License Cost Reduction in the World of DLAUHCL Notes and Domino License Cost Reduction in the World of DLAU
HCL Notes and Domino License Cost Reduction in the World of DLAU
 
20240609 QFM020 Irresponsible AI Reading List May 2024
20240609 QFM020 Irresponsible AI Reading List May 202420240609 QFM020 Irresponsible AI Reading List May 2024
20240609 QFM020 Irresponsible AI Reading List May 2024
 
Removing Uninteresting Bytes in Software Fuzzing
Removing Uninteresting Bytes in Software FuzzingRemoving Uninteresting Bytes in Software Fuzzing
Removing Uninteresting Bytes in Software Fuzzing
 
“Building and Scaling AI Applications with the Nx AI Manager,” a Presentation...
“Building and Scaling AI Applications with the Nx AI Manager,” a Presentation...“Building and Scaling AI Applications with the Nx AI Manager,” a Presentation...
“Building and Scaling AI Applications with the Nx AI Manager,” a Presentation...
 
UiPath Test Automation using UiPath Test Suite series, part 5
UiPath Test Automation using UiPath Test Suite series, part 5UiPath Test Automation using UiPath Test Suite series, part 5
UiPath Test Automation using UiPath Test Suite series, part 5
 
National Security Agency - NSA mobile device best practices
National Security Agency - NSA mobile device best practicesNational Security Agency - NSA mobile device best practices
National Security Agency - NSA mobile device best practices
 
Essentials of Automations: The Art of Triggers and Actions in FME
Essentials of Automations: The Art of Triggers and Actions in FMEEssentials of Automations: The Art of Triggers and Actions in FME
Essentials of Automations: The Art of Triggers and Actions in FME
 

Dreamforce 2013 - Pitfalls and solutions

  • 1. Heroku – Pitfalls and Solutions Taking the very best of Heroku without surprise !! Vincent Spehner, Tquila, Heroku Practice Manager @vzmind
  • 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. Introduction Last year at Dreamforce to interview speakers talking about Heroku and meet other early adopters of the Platform.  Released the first version of Heroku Salesforce Playbook on Xmas 2012 • Heroku history • Introduction to Heroku Toolbelt • Java and Ruby tutorial to get started  Next release available soon (Xmas 2013) • Presenting 15 detailed use cases • Introduction to the different Salesforce APIs
  • 4. Introduction Today the objective is to present some common mistakes done when building Cloud app (including on Heroku) and learn how to avoid them  Platform / language neutral  First we need to understand how Cloud Apps are different ? • Heroku 12 factors • Cloud App with remote Data/API
  • 6. The API latency syndrome How to detect it ?  Pages taking ages to display  API Quota reached quickly  More than 5 API calls per action SOLUTION : CACHE EVERYWHERE IT’S REQUIRED !!
  • 7. Cache OR Call pattern Reduce overall API Latency:
  • 8. Understanding Caching options Cache vs Data replication vs Data synchronization:  Caching weakness is that you need to sweep it regularly and automate it  Data replication weakness is that bi-directional update replication implies potential conflict which need a proper management  Data synchronization using third party tools such as CloudConnect is a really convenient way to avoid
  • 9. API cache warming Principle  You already know that your application need to get the list of remote static objects  Add a worker dedicated to Cache warming  Store all remote Static records locally  Define refreshing strategy on the worker itself
  • 11. Environment management Is your local machine the Test env ?  Heroku app might behave differently than on your Local Machine or Test Server • Assets compilation failing • Process running differently • Static Configuration • Memory management
  • 12. Environment management Solutions:  Dev ENV as clause of Heroku PROD ENV than possible  Duplicate your Production ENV for TEST  Use Foreman locally  Share Heroku config with your team and load it as part of your ENV  Of course you can spin up and down TEST env
  • 13. Salesforce custom APEX End Point Objective:  Reduce API calls  Access Hidden Business Logic Creating custom APEX endpoint:  Group API calls  Aggregate multiple records in ONE call  Trigger complex Apex code from a REST endpoint
  • 14. No clues on errors Logplex principle  Logs are an event Stream (12 Factor number XI) Monitor early, drive safely:  Start recording logs from the beginning with enough storage capacity  Monitor your app  Make sure your logs are relevant
  • 15. Log stream , Papertrail, New Relic
  • 17. Conclusion  Be creative  PoC are not expensive  Use the right technology/language for the right challenge  Check the playbook, share your ideas with Book authors
  • 18. All about Tquila Click to add brief company overview here. Lorem ipsum dolor sit amet, consectetur adipiscing elit. Sed lectus tortor, pulvinar sit amet blandit ac, bibendum vitae sapien.  Click to add implementation highlights; no more than four  Click to add implementation highlights; no more than four. Lorem ipsum dolor sit amet, consectetur adipiscing elit.  Click to add implementation highlights; no more than four  Click to add implementation highlights; no more than four
  • 19. Vincent Spehner Heroku Practice Manager, @vzmind “If there's anything more important than my ego around, I want it caught and shot now.” Douglas Adams “So long, and thanks for all the fish.” "So once you do know what the question actually is, you'll know what the answer means.” “How many roads must a man walk down?” “Looking up into the night sky is looking into infinity — distance is incomprehensible and therefore meaningless”
  • 20.

Editor's Notes

  1. http://www.youtube.com/watch?v=A8Xo4Tl5MIo
  2. Mickey mouse application with 2 endpoints (with and without cache) and Blitz
  3. Mickey mouse application with 2 endpoints (with and without cache) and Blitz
  4. Loggly demo or screenshot
  5. Loggly demo or screenshot