architecting in the cloud: choosing the right technologies for your solution
DESCRIPTION
Presentation from Dreamforce9 - November 2009TRANSCRIPT
![Page 1: Architecting in the Cloud: Choosing the Right Technologies for your Solution](https://reader033.vdocuments.site/reader033/viewer/2022061203/546d6a72b4af9f6b2c8b536c/html5/thumbnails/1.jpg)
Architecting in the Cloud: Choosing the Right Technologies for your Solution
Jeff Douglas - AppirioRichard Cummings - IdeaArc
![Page 2: Architecting in the Cloud: Choosing the Right Technologies for your Solution](https://reader033.vdocuments.site/reader033/viewer/2022061203/546d6a72b4af9f6b2c8b536c/html5/thumbnails/2.jpg)
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.
![Page 3: Architecting in the Cloud: Choosing the Right Technologies for your Solution](https://reader033.vdocuments.site/reader033/viewer/2022061203/546d6a72b4af9f6b2c8b536c/html5/thumbnails/3.jpg)
2500+ Enterprises… …have turned to Appirio… ...to build solutions on cloud platforms
“The speed and agility has really helped us automate more and processes within our enterprise”
- NavinGaneshan, Network Solutions
• 150+ services customers• 2500 product customers
• 300%+ revenue growth in past year• Funded by Sequoia, GGV
• Strategic partner of salesforce.com and Google
Appirio Cloud Solutions: Products & Services for Acceleration of Cloud Adoption
![Page 4: Architecting in the Cloud: Choosing the Right Technologies for your Solution](https://reader033.vdocuments.site/reader033/viewer/2022061203/546d6a72b4af9f6b2c8b536c/html5/thumbnails/4.jpg)
Informa plc Case Study
Informa Overview 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
4
Thanks to our friends at Informa for letting us use this case study
![Page 5: Architecting in the Cloud: Choosing the Right Technologies for your Solution](https://reader033.vdocuments.site/reader033/viewer/2022061203/546d6a72b4af9f6b2c8b536c/html5/thumbnails/5.jpg)
Force.com Sites
Data Model Integration Authentication Centralized Administration Validation Rules
5
Why Informa chose Force.com Sites:
![Page 6: Architecting in the Cloud: Choosing the Right Technologies for your Solution](https://reader033.vdocuments.site/reader033/viewer/2022061203/546d6a72b4af9f6b2c8b536c/html5/thumbnails/6.jpg)
Taylor & Francis Force.com Site
6
![Page 7: Architecting in the Cloud: Choosing the Right Technologies for your Solution](https://reader033.vdocuments.site/reader033/viewer/2022061203/546d6a72b4af9f6b2c8b536c/html5/thumbnails/7.jpg)
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”)
7
![Page 8: Architecting in the Cloud: Choosing the Right Technologies for your Solution](https://reader033.vdocuments.site/reader033/viewer/2022061203/546d6a72b4af9f6b2c8b536c/html5/thumbnails/8.jpg)
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.
8
![Page 9: Architecting in the Cloud: Choosing the Right Technologies for your Solution](https://reader033.vdocuments.site/reader033/viewer/2022061203/546d6a72b4af9f6b2c8b536c/html5/thumbnails/9.jpg)
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
9
![Page 10: Architecting in the Cloud: Choosing the Right Technologies for your Solution](https://reader033.vdocuments.site/reader033/viewer/2022061203/546d6a72b4af9f6b2c8b536c/html5/thumbnails/10.jpg)
Preventing Recursive Future Method Calls
10
![Page 11: Architecting in the Cloud: Choosing the Right Technologies for your Solution](https://reader033.vdocuments.site/reader033/viewer/2022061203/546d6a72b4af9f6b2c8b536c/html5/thumbnails/11.jpg)
“Heartbeat” Pattern
11
![Page 12: Architecting in the Cloud: Choosing the Right Technologies for your Solution](https://reader033.vdocuments.site/reader033/viewer/2022061203/546d6a72b4af9f6b2c8b536c/html5/thumbnails/12.jpg)
Sample “Heartbeat” Test Runner
12
![Page 13: Architecting in the Cloud: Choosing the Right Technologies for your Solution](https://reader033.vdocuments.site/reader033/viewer/2022061203/546d6a72b4af9f6b2c8b536c/html5/thumbnails/13.jpg)
Sample “Heartbeat” Code
13