Developing Cloud Applications
Appmethod provides Cloud components, which allow you to easily use cloud services from Amazon and Microsoft Azure. Appmethod provides a framework that allows you to build cloud services and easily connect to your back-end services and databases.
With the Appmethod RAD Cloud deployment, you can move your data and services to the Cloud, making your applications accessible from virtually any platform or device from anywhere in the world.
High-Level Overview of RAD Cloud Services
Appmethod Cloud Services
The CloudAPI unit:
- Holds the common functionality for the Amazon and Azure APIs, and any other Cloud service that could be implemented, which uses a REST API and the same (or a very similar) authentication mechanism.
- Has SHA1 and SHA256 authentication implementations. Because of this, OpenSSL libraries are required when using any API that extends this unit.
- Contains useful classes that are common across multiple APIs, such as TCloudResponseInfo and TCloudTableRow.
- Contains the TCloudService class, which is the base service class which the Amazon and Azure API service classes extend.
Azure Cloud Service
The AzureAPI unit is a redesign of the original DSAzure API shipped with Appmethod. The API is now more intuitive. It is easier to find the function you want to call, and it is obvious how to get the result of the API call. It should also now be thread safe, so you do not need to make a new instance of the service class in new threads, if you do not want to. Also, functions have been introduced to do the XML parsing of results for you. There are now classes and lists that wrap various XML responses. You can still call the versions of these functions that return XML, if you want to do the parsing yourself. The service classes are: TAzureBlobService, TAzureQueueService, TAzureTableService. The designer component for creating a connection info instance is TAzureConnectionInfo.
Amazon Cloud Service
The AmazonAPI unit is completely new to Appmethod. It includes support for the Amazon Simple Queue Service (SQS), Amazon Simple Storage Service (S3) and Amazon SimpleDB service. These are very similar to their comparable services offered by Amazon. You use this API in the same way you use the AzureAPI, but each of the services has subtle differences. You can see the Amazon REST API documentation and Azure REST API documentation for a better idea of the similarities and differences. Like the Azure API, the Amazon API has functions that will do the XML parsing for you, unless you want to implement that yourself. The service classes are: TAmazonTableService, TAmazonQueueService, TAmazonStorageService. The designer component for creating a connection info instance is TAmazonConnectionInfo.
Connect to Your Data From Any Platform
You can connect to your data from mobile platforms (such as the iOS, Android, Blackberry, and Windows Phone 7) using the FireDAC universal data access components.
Deploy the Application to the Cloud
You can deploy the application to either Amazon EC2 or Microsoft Microsoft Azure using the Deployment Manager.
The Deployment Manager replaces the formal Deploy to Cloud wizard (for Amazon EC2 infrastructure) shipped with Appmethod. You can deploy your application to an Amazon EC2 server just as you would deploy to any other computer. Developers need to install the Platform Assistant on the EC2 server, then set up a local profile in Appmethod with the machine name and port of the server. After that, developers will be able to deploy to the EC2 server. If the remote debugger is installed on the EC2 server, then it can be used to debug deployed applications.
To learn more about the Deployment Manager, go to the Deployment Manager page.
- OpenSSL Libraries
- OpenSSL Support for iOS
- Microsoft Azure Platform Documentation (msdn.microsoft.com)
- Amazon Simple Queue Service Documentation (aws.amazon.com)
- Amazon Simple Storage Service(S3)(aws.amazon.com)
- Amazon SimpleDB service (aws.amazon.com)
- Deployment Manager
- paserver, the Platform Assistant Server Application
- Overview of Remote Debugging
- Data.Cloud API Test