SlideShare ist ein Scribd-Unternehmen logo
1 von 14
Architecting in the Cloud: Choosing the
Right Technologies for your Solution
    Jeff Douglas - Appirio
    Richard Cummings - IdeaArc
Safe Harbor Statement
“Safe harbor” statement under the Private Securities Litigation Reform Act of 1995: This presentation may contain forward-
looking statements including but not limited to statements concerning the potential market for our existing service offerings
and future offerings. All of our forward looking statements involve risks, uncertainties and assumptions. If any such risks or
uncertainties materialize or if any of the assumptions proves incorrect, our results could differ materially from the results
expressed or implied by the forward-looking statements we make.

The risks and uncertainties referred to above include - but are not limited to - risks associated with possible fluctuations in
our operating results and cash flows, rate of growth and anticipated revenue run rate, errors, interruptions or delays in our
service or our Web hosting, our new business model, our history of operating losses, the possibility that we will not remain
profitable, breach of our security measures, the emerging market in which we operate, our relatively limited operating
history, our ability to hire, retain and motivate our employees and manage our growth, competition, our ability to continue to
release and gain customer acceptance of new and improved versions of our service, customer and partner acceptance of
the AppExchange, successful customer deployment and utilization of our services, unanticipated changes in our effective
tax rate, fluctuations in the number of shares outstanding, the price of such shares, foreign currency exchange rates and
interest rates.

Further information on these and other factors that could affect our financial results is included in the reports on Forms 10-
K, 10-Q and 8-K and in other filings we make with the Securities and Exchange Commission from time to time. These
documents are available on the SEC Filings section of the Investor Information section of our website at
www.salesforce.com/investor. Salesforce.com, inc. assumes no obligation and does not intend to update these forward-
looking statements, except as required by law.
Appirio Cloud Solutions: Products & Services
 for Acceleration of Cloud Adoption

    2500+ Enterprises…             …have turned to Appirio…                 ...to build solutions on
                                                                                cloud platforms




• 150+ services customers         • 300%+ revenue growth in past year    • Strategic partner of salesforce.com
• 2500 product customers          • Funded by Sequoia, GGV                 and Google



                     “The speed and agility has really helped us automate more and
                     processes within our enterprise”
                                                                   - NavinGaneshan, Network Solutions
Informa plc Case Study

      InformaOverview
      Worked on this Project while an Informa Employee
      Taylor & Francis Inspection Copy Application
       Overview
      Force.com Sites Pilot
      Force.com Toolkit for Google App Engine Java



                 Thanks to our friends at Informa for letting us use this
                 case study



3
Force.com Sites

    Why Informa chose Force.com
    Sites:
      Data Model
      Integration
      Authentication
      Centralized Administration
      Validation Rules




4
Taylor & Francis Force.com Site




5
DeVry University Case Study

      DeVry University Overview
      Application Overview
        – Orchestrate long-running transactions that initiate
          and complete on the Force.com platform
        – Pushing the Force.com platform to its limits
        – Running into Governor issues
        – Understand transactions and @future methods
      Fire an event from outside of Salesforce (aka
       “heartbeat”)




6
Apex Transactions

      Transaction begins when Apex is invoked
      Commits automatically when Apex code successfully
       finishes running
        – All state changes, including all subsequent triggers and all
          declarative processing like validations, workflows, emails, are
          in this transaction.
      Long running Apex can result in HTTP 503 errors.
      The empirical rule of thumb: Apex processes should
       execute under 10 seconds.




7
Using Future Methods

      Salesforce concept of a "micro-batch" job.
      Have their own Governor limits associated with callouts.
      When any @future transaction fails, only resort is to save data.
      Since @future cannot fire trigger that starts @future, Apex code
       must stop before current transaction commits.
      Recursive @future method calls




8
Preventing Recursive Future Method Calls




9
“Heartbeat” Pattern




10
Sample “Heartbeat” Test Runner




11
Sample “Heartbeat” Code




12
Questions?

                  jeff.douglas@appirio.com
                  http://blog.jeffdouglas.com




13

Weitere ähnliche Inhalte

Was ist angesagt?

Creating HTML5 Applications with jQuery Mobile, Ruby and Database.com
Creating HTML5 Applications with jQuery Mobile, Ruby and Database.comCreating HTML5 Applications with jQuery Mobile, Ruby and Database.com
Creating HTML5 Applications with jQuery Mobile, Ruby and Database.com
Salesforce Developers
 
Creating HTML5 Applications with jQuery Mobile, Ruby and Database.com
Creating HTML5 Applications with jQuery Mobile, Ruby and Database.comCreating HTML5 Applications with jQuery Mobile, Ruby and Database.com
Creating HTML5 Applications with jQuery Mobile, Ruby and Database.com
Salesforce Developers
 
Intro to Salesforce Mobile SDK: Building Hybrid Apps Webinar
Intro to Salesforce Mobile SDK: Building Hybrid Apps WebinarIntro to Salesforce Mobile SDK: Building Hybrid Apps Webinar
Intro to Salesforce Mobile SDK: Building Hybrid Apps Webinar
Salesforce Developers
 

Was ist angesagt? (20)

Build Consumer-Facing Apps with Heroku Connect
Build Consumer-Facing Apps with Heroku ConnectBuild Consumer-Facing Apps with Heroku Connect
Build Consumer-Facing Apps with Heroku Connect
 
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
 
Intro to the Salesforce Mobile SDK: Building Android Apps
Intro to the Salesforce Mobile SDK: Building Android AppsIntro to the Salesforce Mobile SDK: Building Android Apps
Intro to the Salesforce Mobile SDK: Building Android Apps
 
Creating HTML5 Applications with jQuery Mobile, Ruby and Database.com
Creating HTML5 Applications with jQuery Mobile, Ruby and Database.comCreating HTML5 Applications with jQuery Mobile, Ruby and Database.com
Creating HTML5 Applications with jQuery Mobile, Ruby and Database.com
 
Creating HTML5 Applications with jQuery Mobile, Ruby and Database.com
Creating HTML5 Applications with jQuery Mobile, Ruby and Database.comCreating HTML5 Applications with jQuery Mobile, Ruby and Database.com
Creating HTML5 Applications with jQuery Mobile, Ruby and Database.com
 
Intro to Salesforce Mobile SDK: Building Hybrid Apps Webinar
Intro to Salesforce Mobile SDK: Building Hybrid Apps WebinarIntro to Salesforce Mobile SDK: Building Hybrid Apps Webinar
Intro to Salesforce Mobile SDK: Building Hybrid Apps Webinar
 
Tour of Heroku + Salesforce Integration Methods
Tour of Heroku + Salesforce Integration MethodsTour of Heroku + Salesforce Integration Methods
Tour of Heroku + Salesforce Integration Methods
 
Migrating Visualforce Pages to Lightning
Migrating Visualforce Pages to LightningMigrating Visualforce Pages to Lightning
Migrating Visualforce Pages to Lightning
 
Salesforce Mobile architecture introduction
Salesforce Mobile architecture introductionSalesforce Mobile architecture introduction
Salesforce Mobile architecture introduction
 
Introduction to Developing Android Apps With the Salesforce Mobile SDK
Introduction to Developing Android Apps With the Salesforce Mobile SDKIntroduction to Developing Android Apps With the Salesforce Mobile SDK
Introduction to Developing Android Apps With the Salesforce Mobile SDK
 
Integrating Force.com with Heroku
Integrating Force.com with HerokuIntegrating Force.com with Heroku
Integrating Force.com with Heroku
 
Intro to the Salesforce Mobile SDK: Building iOS Apps Webinar
Intro to the Salesforce Mobile SDK: Building iOS Apps WebinarIntro to the Salesforce Mobile SDK: Building iOS Apps Webinar
Intro to the Salesforce Mobile SDK: Building iOS Apps Webinar
 
Reinvent your App Dev Lifecycle with Continuous Delivery on Heroku
Reinvent your App Dev Lifecycle with Continuous Delivery on HerokuReinvent your App Dev Lifecycle with Continuous Delivery on Heroku
Reinvent your App Dev Lifecycle with Continuous Delivery on Heroku
 
iBeans = Dead-simple integration for web app development
iBeans = Dead-simple integration for web app developmentiBeans = Dead-simple integration for web app development
iBeans = Dead-simple integration for web app development
 
Introduction to Building E-Commerce Solutions on Heroku and Salesforce
Introduction to Building E-Commerce Solutions on Heroku and SalesforceIntroduction to Building E-Commerce Solutions on Heroku and Salesforce
Introduction to Building E-Commerce Solutions on Heroku and Salesforce
 
Force.com: A Walk on the Enterprise Side
Force.com: A Walk on the Enterprise SideForce.com: A Walk on the Enterprise Side
Force.com: A Walk on the Enterprise Side
 
Dreamforce 2013 - Heroku 5 use cases
Dreamforce 2013 - Heroku 5 use casesDreamforce 2013 - Heroku 5 use cases
Dreamforce 2013 - Heroku 5 use cases
 
Mulesoft Alfresco webinar
Mulesoft Alfresco webinarMulesoft Alfresco webinar
Mulesoft Alfresco webinar
 
Let's Learn About Heroku and How to Integrate with Salesforce
Let's Learn About Heroku and How to Integrate with SalesforceLet's Learn About Heroku and How to Integrate with Salesforce
Let's Learn About Heroku and How to Integrate with Salesforce
 
Unite Customer-Facing Apps with a Salesforce Backend: Heroku Connect in Practice
Unite Customer-Facing Apps with a Salesforce Backend: Heroku Connect in PracticeUnite Customer-Facing Apps with a Salesforce Backend: Heroku Connect in Practice
Unite Customer-Facing Apps with a Salesforce Backend: Heroku Connect in Practice
 

Ähnlich wie Architecting in the Cloud: Choosing the Right Technologies for your Solution

CCT London 2013 Theatre Intro to Apex
CCT London 2013 Theatre Intro to ApexCCT London 2013 Theatre Intro to Apex
CCT London 2013 Theatre Intro to Apex
Peter Chittum
 
Robin Daniels Presentation / CloudViews.Org - Cloud Computing Conference 2009
Robin Daniels Presentation / CloudViews.Org - Cloud Computing  Conference 2009Robin Daniels Presentation / CloudViews.Org - Cloud Computing  Conference 2009
Robin Daniels Presentation / CloudViews.Org - Cloud Computing Conference 2009
EuroCloud
 
Peter Coffee on Cloud Transformation
Peter Coffee on Cloud TransformationPeter Coffee on Cloud Transformation
Peter Coffee on Cloud Transformation
Peter Coffee
 

Ähnlich wie Architecting in the Cloud: Choosing the Right Technologies for your Solution (20)

Introduction to Apex Triggers
Introduction to Apex TriggersIntroduction to Apex Triggers
Introduction to Apex Triggers
 
Understanding Salesforce Streaming API
Understanding Salesforce Streaming APIUnderstanding Salesforce Streaming API
Understanding Salesforce Streaming API
 
CCT London 2013 Theatre Intro to Apex
CCT London 2013 Theatre Intro to ApexCCT London 2013 Theatre Intro to Apex
CCT London 2013 Theatre Intro to Apex
 
Salesforce platform session 2
 Salesforce platform session 2 Salesforce platform session 2
Salesforce platform session 2
 
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
 
Introduction to WebRTC on the Force.com Platform
Introduction to WebRTC on the Force.com PlatformIntroduction to WebRTC on the Force.com Platform
Introduction to WebRTC on the Force.com Platform
 
Robin Daniels Presentation / CloudViews.Org - Cloud Computing Conference 2009
Robin Daniels Presentation / CloudViews.Org - Cloud Computing  Conference 2009Robin Daniels Presentation / CloudViews.Org - Cloud Computing  Conference 2009
Robin Daniels Presentation / CloudViews.Org - Cloud Computing Conference 2009
 
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
 
Innovation Showcase: Top Public Sector Apps Built on Salesforce App Cloud
Innovation Showcase: Top Public Sector Apps Built on Salesforce App CloudInnovation Showcase: Top Public Sector Apps Built on Salesforce App Cloud
Innovation Showcase: Top Public Sector Apps Built on Salesforce App Cloud
 
API Design for Your Packaged App
API Design for Your Packaged AppAPI Design for Your Packaged App
API Design for Your Packaged App
 
Mds cloud saturday 2015 salesforce intro
Mds cloud saturday 2015 salesforce introMds cloud saturday 2015 salesforce intro
Mds cloud saturday 2015 salesforce intro
 
Streaming API with Java
Streaming API with JavaStreaming API with Java
Streaming API with Java
 
Aen001 Tate 091707
Aen001 Tate 091707Aen001 Tate 091707
Aen001 Tate 091707
 
Coding in the App Cloud
Coding in the App CloudCoding in the App Cloud
Coding in the App Cloud
 
Diving Into Heroku Private Spaces
Diving Into Heroku Private SpacesDiving Into Heroku Private Spaces
Diving Into Heroku Private Spaces
 
Peter Coffee on Cloud Transformation
Peter Coffee on Cloud TransformationPeter Coffee on Cloud Transformation
Peter Coffee on Cloud Transformation
 
Phoenix - A High Performance Open Source SQL Layer over HBase
Phoenix - A High Performance Open Source SQL Layer over HBasePhoenix - A High Performance Open Source SQL Layer over HBase
Phoenix - A High Performance Open Source SQL Layer over HBase
 
Designing custom REST and SOAP interfaces on Force.com
Designing custom REST and SOAP interfaces on Force.comDesigning custom REST and SOAP interfaces on Force.com
Designing custom REST and SOAP interfaces on Force.com
 
Designing Custom REST and SOAP Interfaces on Force.com
Designing Custom REST and SOAP Interfaces on Force.comDesigning Custom REST and SOAP Interfaces on Force.com
Designing Custom REST and SOAP Interfaces on Force.com
 
Get Started with Lightning Web Components Open Source
Get Started with Lightning Web Components Open SourceGet Started with Lightning Web Components Open Source
Get Started with Lightning Web Components Open Source
 

Kürzlich hochgeladen

Structuring Teams and Portfolios for Success
Structuring Teams and Portfolios for SuccessStructuring Teams and Portfolios for Success
Structuring Teams and Portfolios for Success
UXDXConf
 

Kürzlich hochgeladen (20)

Integrating Telephony Systems with Salesforce: Insights and Considerations, B...
Integrating Telephony Systems with Salesforce: Insights and Considerations, B...Integrating Telephony Systems with Salesforce: Insights and Considerations, B...
Integrating Telephony Systems with Salesforce: Insights and Considerations, B...
 
The Value of Certifying Products for FDO _ Paul at FIDO Alliance.pdf
The Value of Certifying Products for FDO _ Paul at FIDO Alliance.pdfThe Value of Certifying Products for FDO _ Paul at FIDO Alliance.pdf
The Value of Certifying Products for FDO _ Paul at FIDO Alliance.pdf
 
Unpacking Value Delivery - Agile Oxford Meetup - May 2024.pptx
Unpacking Value Delivery - Agile Oxford Meetup - May 2024.pptxUnpacking Value Delivery - Agile Oxford Meetup - May 2024.pptx
Unpacking Value Delivery - Agile Oxford Meetup - May 2024.pptx
 
Salesforce Adoption – Metrics, Methods, and Motivation, Antone Kom
Salesforce Adoption – Metrics, Methods, and Motivation, Antone KomSalesforce Adoption – Metrics, Methods, and Motivation, Antone Kom
Salesforce Adoption – Metrics, Methods, and Motivation, Antone Kom
 
10 Differences between Sales Cloud and CPQ, Blanka Doktorová
10 Differences between Sales Cloud and CPQ, Blanka Doktorová10 Differences between Sales Cloud and CPQ, Blanka Doktorová
10 Differences between Sales Cloud and CPQ, Blanka Doktorová
 
ASRock Industrial FDO Solutions in Action for Industrial Edge AI _ Kenny at A...
ASRock Industrial FDO Solutions in Action for Industrial Edge AI _ Kenny at A...ASRock Industrial FDO Solutions in Action for Industrial Edge AI _ Kenny at A...
ASRock Industrial FDO Solutions in Action for Industrial Edge AI _ Kenny at A...
 
Strategic AI Integration in Engineering Teams
Strategic AI Integration in Engineering TeamsStrategic AI Integration in Engineering Teams
Strategic AI Integration in Engineering Teams
 
Extensible Python: Robustness through Addition - PyCon 2024
Extensible Python: Robustness through Addition - PyCon 2024Extensible Python: Robustness through Addition - PyCon 2024
Extensible Python: Robustness through Addition - PyCon 2024
 
Structuring Teams and Portfolios for Success
Structuring Teams and Portfolios for SuccessStructuring Teams and Portfolios for Success
Structuring Teams and Portfolios for Success
 
Syngulon - Selection technology May 2024.pdf
Syngulon - Selection technology May 2024.pdfSyngulon - Selection technology May 2024.pdf
Syngulon - Selection technology May 2024.pdf
 
Intro in Product Management - Коротко про професію продакт менеджера
Intro in Product Management - Коротко про професію продакт менеджераIntro in Product Management - Коротко про професію продакт менеджера
Intro in Product Management - Коротко про професію продакт менеджера
 
How Red Hat Uses FDO in Device Lifecycle _ Costin and Vitaliy at Red Hat.pdf
How Red Hat Uses FDO in Device Lifecycle _ Costin and Vitaliy at Red Hat.pdfHow Red Hat Uses FDO in Device Lifecycle _ Costin and Vitaliy at Red Hat.pdf
How Red Hat Uses FDO in Device Lifecycle _ Costin and Vitaliy at Red Hat.pdf
 
AI revolution and Salesforce, Jiří Karpíšek
AI revolution and Salesforce, Jiří KarpíšekAI revolution and Salesforce, Jiří Karpíšek
AI revolution and Salesforce, Jiří Karpíšek
 
Free and Effective: Making Flows Publicly Accessible, Yumi Ibrahimzade
Free and Effective: Making Flows Publicly Accessible, Yumi IbrahimzadeFree and Effective: Making Flows Publicly Accessible, Yumi Ibrahimzade
Free and Effective: Making Flows Publicly Accessible, Yumi Ibrahimzade
 
AI presentation and introduction - Retrieval Augmented Generation RAG 101
AI presentation and introduction - Retrieval Augmented Generation RAG 101AI presentation and introduction - Retrieval Augmented Generation RAG 101
AI presentation and introduction - Retrieval Augmented Generation RAG 101
 
How we scaled to 80K users by doing nothing!.pdf
How we scaled to 80K users by doing nothing!.pdfHow we scaled to 80K users by doing nothing!.pdf
How we scaled to 80K users by doing nothing!.pdf
 
PLAI - Acceleration Program for Generative A.I. Startups
PLAI - Acceleration Program for Generative A.I. StartupsPLAI - Acceleration Program for Generative A.I. Startups
PLAI - Acceleration Program for Generative A.I. Startups
 
WSO2CONMay2024OpenSourceConferenceDebrief.pptx
WSO2CONMay2024OpenSourceConferenceDebrief.pptxWSO2CONMay2024OpenSourceConferenceDebrief.pptx
WSO2CONMay2024OpenSourceConferenceDebrief.pptx
 
ECS 2024 Teams Premium - Pretty Secure
ECS 2024   Teams Premium - Pretty SecureECS 2024   Teams Premium - Pretty Secure
ECS 2024 Teams Premium - Pretty Secure
 
What's New in Teams Calling, Meetings and Devices April 2024
What's New in Teams Calling, Meetings and Devices April 2024What's New in Teams Calling, Meetings and Devices April 2024
What's New in Teams Calling, Meetings and Devices April 2024
 

Architecting in the Cloud: Choosing the Right Technologies for your Solution

  • 1. Architecting in the Cloud: Choosing the Right Technologies for your Solution Jeff Douglas - Appirio Richard Cummings - IdeaArc
  • 2. Safe Harbor Statement “Safe harbor” statement under the Private Securities Litigation Reform Act of 1995: This presentation may contain forward- looking statements including but not limited to statements concerning the potential market for our existing service offerings and future offerings. All of our forward looking statements involve risks, uncertainties and assumptions. If any such risks or uncertainties materialize or if any of the assumptions proves incorrect, our results could differ materially from the results expressed or implied by the forward-looking statements we make. The risks and uncertainties referred to above include - but are not limited to - risks associated with possible fluctuations in our operating results and cash flows, rate of growth and anticipated revenue run rate, errors, interruptions or delays in our service or our Web hosting, our new business model, our history of operating losses, the possibility that we will not remain profitable, breach of our security measures, the emerging market in which we operate, our relatively limited operating history, our ability to hire, retain and motivate our employees and manage our growth, competition, our ability to continue to release and gain customer acceptance of new and improved versions of our service, customer and partner acceptance of the AppExchange, successful customer deployment and utilization of our services, unanticipated changes in our effective tax rate, fluctuations in the number of shares outstanding, the price of such shares, foreign currency exchange rates and interest rates. Further information on these and other factors that could affect our financial results is included in the reports on Forms 10- K, 10-Q and 8-K and in other filings we make with the Securities and Exchange Commission from time to time. These documents are available on the SEC Filings section of the Investor Information section of our website at www.salesforce.com/investor. Salesforce.com, inc. assumes no obligation and does not intend to update these forward- looking statements, except as required by law.
  • 3. Appirio Cloud Solutions: Products & Services for Acceleration of Cloud Adoption 2500+ Enterprises… …have turned to Appirio… ...to build solutions on cloud platforms • 150+ services customers • 300%+ revenue growth in past year • Strategic partner of salesforce.com • 2500 product customers • Funded by Sequoia, GGV and Google “The speed and agility has really helped us automate more and processes within our enterprise” - NavinGaneshan, Network Solutions
  • 4. Informa plc Case Study  InformaOverview  Worked on this Project while an Informa Employee  Taylor & Francis Inspection Copy Application Overview  Force.com Sites Pilot  Force.com Toolkit for Google App Engine Java Thanks to our friends at Informa for letting us use this case study 3
  • 5. Force.com Sites Why Informa chose Force.com Sites:  Data Model  Integration  Authentication  Centralized Administration  Validation Rules 4
  • 6. Taylor & Francis Force.com Site 5
  • 7. DeVry University Case Study  DeVry University Overview  Application Overview – Orchestrate long-running transactions that initiate and complete on the Force.com platform – Pushing the Force.com platform to its limits – Running into Governor issues – Understand transactions and @future methods  Fire an event from outside of Salesforce (aka “heartbeat”) 6
  • 8. Apex Transactions  Transaction begins when Apex is invoked  Commits automatically when Apex code successfully finishes running – All state changes, including all subsequent triggers and all declarative processing like validations, workflows, emails, are in this transaction.  Long running Apex can result in HTTP 503 errors.  The empirical rule of thumb: Apex processes should execute under 10 seconds. 7
  • 9. Using Future Methods  Salesforce concept of a "micro-batch" job.  Have their own Governor limits associated with callouts.  When any @future transaction fails, only resort is to save data.  Since @future cannot fire trigger that starts @future, Apex code must stop before current transaction commits.  Recursive @future method calls 8
  • 10. Preventing Recursive Future Method Calls 9
  • 14. Questions? jeff.douglas@appirio.com http://blog.jeffdouglas.com 13

Hinweis der Redaktion

  1. Demo URL: http://informa.force.com/taylorandfrancis/ICFeedback?id=a1F600000008mZUEAY
  2. Log into the DeVry sandbox.