none
memcached latest version(1.4.5) with Azure

    Question

  • Hi all the Azure developers,

    I have searched all the posts related to Azure with memcached server, and it seems like the only version that works in Azure is 1.2.1.0 from http://jehiah.cz/projects/memcached-win32/

     

    I was trying to use the latest version of memcached server 1.4.5. It works in development fabric, but not in Azure. Has anyone successfully use 1.4.5 with Azure? If so, how do you do to make it work?

     

    How I tested in development fabric is as follow

    1. Downloaded Windows Azure Memcached Solution Accelerator http://code.msdn.microsoft.com/winazurememcached
    2. Downloaded v1.4.5 windows binaries from http://labs.northscale.com/memcached-packages/
        Windows, (64-bit) zip file      memcached-1.4.5-amd64.zip
        According to memcached.org, it says NorthScale builds memcached binaries for windows platforms.

    3. Include 1.4.5's one binary(pthreadGC2.dll) and memcached.exe in WorkerRole project (Build Action: Content , Copy to Output Directory : Copy Always )

    4. Compile and run

     

    it all worked fine in Dev Fabric, but not in cloud.

    Is there any other version of memcached server that I can use or I have to stick with 1.2.1.0.
    Or maybe there are others that are better than memcached?

     

    Thanks,

     

    Sunday, August 08, 2010 3:19 AM

Answers

  • Hi Lanfong,

    We are trying to use cloudcache - since its a newer version than the Microsoft Memcache Accelerator which is quite old and isn't being supported at all. 

    MSFT own "Velocity" is - in my understanding - a considerable ways off yet [>6 months] so Memcache is pretty important for us to reduce cost but most critically improve speed and reliability - so we are really viewing this as a fundamental hole in our app at the moment that our competitors already have [who are using Amazon, RackSpaceCloud etc].

    If we get Memcache working and we are happy with it - we'll probably stick with it and continue using it until MSFT allow the newer versions. It shouldn't then be all that hard to upgrade.

    The more people supporting one type of cache - the more reliable it will work on Azure - so I'd stick to cloudcache and help extend it :)

     

    • Marked as answer by Yi-Lun Luo Friday, August 13, 2010 5:40 AM
    Tuesday, August 10, 2010 5:48 AM

All replies

  • Hi,

    There is a discussion regarding this here. Note that Azure works on 64-bit - so you should try and use a 64-bit version.

    Basically, the memcache provider from MSFT is quite old [9 months] and more recent wrapper is here = http://cloudcache.codeplex.com/. It uses http://code.google.com/p/beitmemcached/

    You could try updating CloudCache to the most recent build of beitmemcached [r77] and running that / improving it.

    As I advocated in the discussion above, extending and more fully supporting CloudCache seems to be a worthwhile option ?

     

    Sunday, August 08, 2010 6:59 AM
  • As I recall, newer versions of memcached try to use local ports via the loopback address and thus don't work in Windows Azure (where loopback is disabled).  For now, I think you need to stick with the older version of memcached.  (We're working on ways to enable new versions.)
    Sunday, August 08, 2010 3:10 PM
  • Thanks SparkCode and Steve Marx,

    Now I have two options

    1. Use older version of memcached.

    2. Use beitmemcached.

     

    Anyone wants to share thoughts about other caching server or the options provided above??

     

     

     

    Monday, August 09, 2010 10:22 PM
  • Hi Lanfong,

    We are trying to use cloudcache - since its a newer version than the Microsoft Memcache Accelerator which is quite old and isn't being supported at all. 

    MSFT own "Velocity" is - in my understanding - a considerable ways off yet [>6 months] so Memcache is pretty important for us to reduce cost but most critically improve speed and reliability - so we are really viewing this as a fundamental hole in our app at the moment that our competitors already have [who are using Amazon, RackSpaceCloud etc].

    If we get Memcache working and we are happy with it - we'll probably stick with it and continue using it until MSFT allow the newer versions. It shouldn't then be all that hard to upgrade.

    The more people supporting one type of cache - the more reliable it will work on Azure - so I'd stick to cloudcache and help extend it :)

     

    • Marked as answer by Yi-Lun Luo Friday, August 13, 2010 5:40 AM
    Tuesday, August 10, 2010 5:48 AM
  • Thanks guys,

     

    I think I will go with CloudCache as mentioned by SparkCode and marked Answer by Luo.

    If there are other suggestions, please share it. :)

    Friday, August 13, 2010 5:57 AM