All Projects → financialforcedev → df17-heroku-compute

financialforcedev / df17-heroku-compute

Licence: BSD-3-Clause License
Accompanies the Dreamforce '17 session: 'Beat Governor Limits By Taking Your Compute Processes to Heroku'

Programming Languages

javascript
184084 projects - #8 most used programming language
Apex
172 projects

ffdc-df17-heroku-compute Build Status

Background

Sample App

This repo accompanies the Dreamforce '17 session Beat Governor Limits By Taking Your Compute Processes to Heroku. It demonstrates a distributed architecture which spans Force.com and Heroku.

Why might you want to build such an app? I'm glad you asked! Heroku does what force.com don't.

  • Heroku gives you access to industry standard external libraries and tooling
    • For example, this app uses the open source NPM module is-prime to check for primality
  • Is not constrained by governor limits
    • Process large volumes of data without batch apex
    • Make callouts to other web services with impunity
  • Gives you far greater control
    • Continuous delivery instead of waiting for users to pull managed package versions

Getting Started

Deploy the Salesforce and Heroku components of the app using the buttons below.

Important! Remember to change the Named Credential endpoint to match your newly created Heroku app (e.g. https://my-app-123.herokuapp.com).

Deploy Deploy

Or if you want to get your hands dirty... see the wiki for local development and manual deployment instructions.

Architecture

Architecture

Repository Structure

  • This repository has 2 distinct components
    • force: The Force.com component of the application
    • heroku: The Heroku component of the application
  • In production, you should use a separate repo for the force and heroku components

Contributing to the Repository

If you find any issues or opportunities for improving this respository, fix them! Feel free to contribute to this project by forking this repository and make changes to the content. Once you've made your changes, share them back with the community by sending a pull request. Please see How to send pull requests for more information about contributing to Github projects.

Reporting Issues

If you find any issues with this demo that you can't fix, feel free to report them in the issues section of this repository.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].