2012-04-13 18 views
35

Ho visto diversi riferimenti a persone che eseguono Redis su Azure, ma nessuna implementazione o alcun tipo di "howto" su di esso. Qualcuno ha visto un simile esempio?Come ottenere Redis in esecuzione su Azure?

+0

Collegamenti a questi riferimenti per favore? – kristianp

+0

Vedere i commenti su questa domanda: http://stackoverflow.com/questions/5766815/does-azure-support-things-like-mongodb-and-redis – noocyte

+1

E ora, naturalmente, Microsoft esegue Redis come servizio in Azure: http://azure.microsoft.com/en-us/documentation/services/cache/#redis – noocyte

risposta

47
  1. Scarica Redis per Windows: consultare la sezione 'Redis Service builds for Windows' su https://github.com/ServiceStack/ServiceStack.Redis. Ho finito per utilizzare la versione win64 di dmajkic https://github.com/dmajkic/redis/downloads
  2. Creare un ruolo di lavoro di Azure, eliminare la classe predefinita (non è necessario il codice C#). Aggiungi il file redis-server.exe dall'origine redis scaricata (l'exe può essere trovato in redis/src).
  3. nel file di definizione di servizio aggiungere la seguente configurazione

    <WorkerRole name="my.Worker" vmsize="Small"> 
        <Runtime executionContext="limited"> 
        <EntryPoint> 
         <ProgramEntryPoint commandLine="redis-server.exe" setReadyOnProcessStart="true" /> 
        </EntryPoint> 
        </Runtime> 
        <Imports> 
        <Import moduleName="Diagnostics" /> 
        <Import moduleName="RemoteAccess" /> 
        <Import moduleName="RemoteForwarder" /> 
        </Imports> 
        <Endpoints> 
        <InternalEndpoint name="Redis" protocol="tcp" port="6379" /> 
        </Endpoints> 
    </WorkerRole> 
    
  4. è possibile fare riferimento al server Redis dal ruolo web utilizzando il seguente

    var ipEndpoint = RoleEnvironment.Roles["my.Worker"].Instances[0].InstanceEndpoints["Redis"].IPEndpoint; 
    host = string.Format("{0}:{1}", ipEndpoint.Address, ipEndpoint.Port); 
    

Speranza che aiuta.

+0

Fantastico! Grazie mille! – noocyte

14

Cordiali saluti, la suddetta Redis sul progetto Windows da MS Aprire Tech ora ha un programma di installazione Azure disponibili, il che lo rende facile da ottenere Redis up e in esecuzione su un ruolo di lavoratore PaaS. Ecco un tutorial dettagliato: http://ossonazure.interoperabilitybridges.com/articles/how-to-deploy-redis-to-windows-azure-using-the-command-line-tool (Divulgazione completa: sono nel team MS Open Tech.)

+0

Sarebbe bello avere una piccola interfaccia grafica (applicazione WPF) per 'RedisInstWA.exe' per renderlo più accessibile alle persone per eseguire Redis su Azure. Ho usato il metodo della macchina virtuale Linux a causa della mia conoscenza limitata dei file di configurazione di Azure. Ma ancora curioso di sapere cosa funziona meglio, ruolo di lavoratore PaaS o macchina virtuale di centOS. –

+0

Ciao JP, ho appena visto il tuo commento. Ottima idea di un front-end della GUI: saresti disposto a registrarlo come richiesta sul repository Guthub? (https://github.com/MSOpenTech/redis/issues) Seguirò per provare a farlo accadere. Per quanto riguarda i confronti perf tra PaaS e IaaS, lo esamineremo ma non abbiamo ancora risultati. –

+0

Certo, lo farò! https://github.com/MSOpenTech/redis/issues/50 p.s. non ho avuto modo di lavorare con il tutorial quindi ho finito per utilizzare una macchina Linux virtuale con questo tutorial: http://blogs.msdn.com/b/tconte/archive/2012/06/08/running-redis- on-a-centos-linux-vm-in-finestre-azure.aspx –

Problemi correlati