Yesterday Microsoft launched a new product under Azure services: Azure Mobile. It is a cloud backend for mobile apps. This is a huge leap forward in Microsoft developer tools and cloud+mobile iteration in the company. Maybe someday, it will be language-independent and have SDKs for iOS, Android, Windows Phone. It is just like Parse.com. So things are getting crazy at backend-as-a-service (BaaS) market.
But is it always viable to use a BaaS for your app or startup? What are pros ad cons?
Well, that depends on the scale you’re aiming for.
If you are aiming to be a mobile startup that is going to be around in the market for a few months or at most one and a half years, then BaaS is a good option. The main reason is, you don’t want to buy a Linux VPS, write backend code (in Ruby, Python, Java whatever), don’t want do choose a DB (mysql, pgsql, mongo etc) and don’t want to configure a permanent domain and URLs for your communication endpoints.
These are considerably messy tasks. Most of the backend-as-a-service providers promote several points on their homepages:
If you would evaluate these features in terms of your needs, you’ll see that they are aimed mostly for small-scale apps. No serious apps rely on BaaS providers and probably they won’t in the near future. Even the security and privacy of services like EC2 (and therefore Dropbox) are questionable these days, so you wouldn’t expect large-scale apps to rely on some middleware service. If you are doing serious mobile development, then you won’t need BaaS mobile SDK and don’t need rapid prototyping etc.
I’ve been thinking about finding a neat comment service provider for my blog for some time. First off, my criteria were: **syncing: comments **that I should be able to download comments to my database which is part of freedom, allows crawling of comments: comments are sometimes more important than blog post itself, they should appear on search engines and **layout.
Today I would like to intoduce my side project, AzureFS. It is an open source command-line tool to mount Windows Azure Blob Storage (an AWS S3 alternative) on your local filesystem and play with it just like you are doing with your local files. It is implemented in Python and it is a FUSE wrapper that works on UNIX environments.
Sometimes we need to list files under a container, transfer a bunch of local files to the cloud, remove files matching a specific name pattern, rename files on the cloud, move files accross containers etc. There are not any file explorer tools for Azure Storage on Linux that I know of, so I developed this.
AzureFS allows you to do such everyday task practically with commands like ls, mkdir, rm, cp, mv etc.
Installation of the environment is described on GitHub project page. It is up to you. Now let’s create a storage account from azure.com management portal. (You don’t need to sign up, of course, I’ll show you the demo here). Then obtain your primary access key:
Create a directory with mkdir then we’ll mount our cloud storage onto it. (I’ll use my test account named “azurefs” here):
Don’t shut down this process, jump to some other tab, navigate into cloud directory and let’s create a directory named databases:
Then I’ll simply copy my database backups with cp command:
**That simple! **I have just backed up my data to the cloud.