First thing i tried was i deployed multiple websites (with minimum templates and config) in one packages. And then from the background task i was downloading all the dynamic templates (*.aspx, *.ascx) from the corresponding blob and copying to site root. I got an exception because it exceed the size limit of 1GB. In my project every site consumed 300MB worth of dynamic templates including some static files. I had 10+ sites and hence i need atleast 3GB application drive size but by default Azure will provide only 1GB of application drive either E or F. Unfortunately this cannot be changed. Then I tried this work arounds proposed by microsoft support person. it seems to be working for me but yet to run the performance test…
- Create the empty or minimum files with package for all the sites so that your package is deployed
- Move the rest of the dynamic template or static files to blob storage.
- Run the background task (you must configure this in your package)
- Use Local Storage in your code and download all the data in specific folders at local storage
- Windows Server 2008 supports Symbolic links and this way even when your files are stored in Local Storage, still they appear to be inside the Application drive.
- After you download the blob from Azure Storage please create symbolic link from your application folder to local storage.
- Use mklink command to create the symbolic link to the folder (ex.,)
i. Mklink /D <targetdrive> <source drive>
ii. Ex., MKLINK /d E:\Sitesroot\help C:\Resource\help
iii. MKLINK /d E:\Sitesroot\1\help C:\Resource\help
iv. MKLINK /d E:\Sitesroot\2\help C:\Resource\help
You can find related documents from the following url: