Domanda

Qualcuno sa SE, QUANDO o COME Posso ottenere Memcached in esecuzione su un Windows a 64bit ambiente?

Io sono la creazione di una nuova soluzione di hosting e preferirei di eseguire un OS a 64bit, e poiché è un ASP.Net MVC soluzione con DB SQL Server, il sistema operativo è o sarà Windows Server 2003 o (hopfully!) 2008.

So che questo potrebbe influire sul dibattito riguardante 32bit vs 64bit sul server, ma diciamo che la mia preferenza è a 64bit e che ho un po' molto buona motivi.

Finora, ho provato un certo numero di opzioni e trovare un bit di aiuto correlati per ottenere questo su una macchina a 32bit (e riuscito mi permetto di aggiungere), ma dal momento che l'originale Porta Windows è Win32 specifico, questo non è certo andando per aiutare quando si installa come servizio su x64.Essa ha anche una dipendenza di libevent per cui posso solo ottenere una di Win32 versione compilata.

Ho il sospetto che semplicemente caricando tutto questo in C++ e colpire "compilare" (per 64bit) non funzionerebbe, non da ultimo a causa dell'intricata differenze in 32 e architetture a 64 bit, ma mi chiedo se qualcuno è workng su come ottenere questo fuori della terra?Purtroppo, la mia esperienza bugia in codice gestito (C#), altrimenti vorrei provare a prendere questo su di me, ma non posso credere che io sono l'unico ragazzo là fuori cercando di ottenere memcached in esecuzione su una versione a 64 bit di Windows server....sono????

Qualsiasi aiuto o di consigli apprezzato...


Aggiornamento

Sì ho paura di essere ancora alla ricerca di una risposta a questo, tutti i miei sforzi (con il mio patetico C++ competenze) per fare una build stabile hanno fallito, l'ho cestinato un server e 3 VM solo cercando fuori, così ora mi rivolgo ai veri esperti.È chiunque pensa di porting a 64 bit?O sei davvero suggerendo che io uso MS Velocità, invece?Mi vengono i brividi al pensiero...


Aggiornamento:@Lars - io uso Enyim in realtà - è molto buona, ma a cosa ti stai riferendo è un cliente, piuttosto che la parte server.

@DannySmurf - io sono stato solo in grado di installarlo come servizio su un OS a 32 bit.OS a 64 bit rifiuta l'installazione di questo servizio di Win32.Naturalmente sì, un sacco di Win32 codice funziona perfettamente su architettura a 64 bit, quindi è possibile eseguire applicazioni a 32bit (come l'Ufficio, per esempio) o giochi su Vista/XP 64 ecc, ma questo non si traduce direttamente quando si tratta di servizi.Non sono un esperto, ho il sospetto che abbia a che fare con la sincronizzazione di gestione degli eventi o che i servizi devono sottoscrivere, e ho il sospetto che a 64 e 32 non giocare bene.Sono felice di essere corretti in qualsiasi di questo, ma per rispondere alla tua domanda - sì, ho provato.

@GU - grazie molto per la semplice risposta.Ho pensato tanto, ma non ero sicuro se qualcuno avesse suggerimenti o era già andato giù questo percorso.Forse quando StackOverflow è LIVE, quindi più gente risponderà e fatemi sapere se questo è qualcosa che è stato esaminato, e anche se posso provare a compilarlo - semplicemente non riesco a "fiducia" (con il mio C++ livello di esperienza) che sarebbe "Enterprise" Livello di affidabilità in un componente fondamentale di grandi soluzioni scalabili.Penso che sarebbe necessario educato intervento piuttosto che il mio unsanitised approccio sperimentale prima di poter essere sicuri.Una piccola svista da parte mia, potrebbe portare il sito verso il basso.Oh bene...fino alla prossima volta...

È stato utile?

Soluzione

Nord Scala labs hanno rilasciato una versione di memcached 1.4.4 per Windows x64:

http://blog.couchbase.com/memcached-windows-64-bit-pre-release-available

http://labs.northscale.com/memcached-packages/

AGGIORNAMENTO:hanno recentemente rilasciato il Server Memcached - ancora LIBERO, ma migliorata distro con il clustering, di amministrazione basata sul web/stats UI etc.(Io non sono legati a loro in qualche modo) il Check-out a http://northscale.com/products/memcached.html e scaricare su: http://www.northscale.com/download.php?a=d

AGGIORNA 2:NorthScale Memcached è più disponibile come download in versione standalone.Ora hanno fatto parte del loro No-SQL DB offerta Membase.Può essere configurato per l'esecuzione in Memcached-solo modalità (es.senza persistenza) e c'è un 100% libero versione troppo.Check it out qui: http://www.membase.org/downloads

AGGIORNA 3:MemBase ha dormito con CouchDB e realizzato un prodotto ibrido che offre, chiamato CouchBase.Fanno ancora offrire un servizio gratuito di "Comunità" versione http://www.couchbase.com/download

Altri suggerimenti

Solo così la gente sa, la versione a 32-bit e 64-bit versione build da persone di membase/couchbase/quello-che-è ancora disponibile l'URL del blog è cambiato, però:

Binario a 32 bit di memcached 1.4.4 come Windows-servizio di:

http://blog.couchbase.com/memcached-144-windows-32-bit-binary-now-available

http://s3.amazonaws.com/downloads.northscale.com/memcached-win32-1.4.4-14.zip

64-bit binario di memcached 1.4.4 come Windows-servizio di:

http://blog.couchbase.com/memcached-windows-64-bit-pre-release-available

http://s3.amazonaws.com/downloads.northscale.com/memcached-win64-1.4.4-14.zip

La versione a 64 bit non hanno sbagliato i tempi di servizio.

Così forse si desidera che questo binario di 1.4.2 invece:

http://www.urielkatz.com/archive/detail/memcached-64-bit-windows/

La versione a 32 bit, incluso con MemCacheDManager anche suppors in esecuzione su Windows 2000 (no IPv6):

http://allegiance.chi-town.com/MemCacheDManager.aspx http://allegiance.chi-town.com/Download.aspx?dl=Releases/MemCacheDManager_1_0_3_0.msi&rurl=MemCacheDManager.aspx

Per decomprimere il msi:

msiexec /a Releases_MemCacheDManager_1_0_3_0.msi /qb TARGETDIR=c:\memcached

Memcached 1.4.5 binario per win x64 può essere trovato qui: http://downloads.northscale.com/memcached-1.4.5-amd64.zip

Un'altra opzione sarebbe quella di installare Couchbase Server 1.8.0 x64 da qui: http://www.couchbase.com/download, il bundle memcached sembra essere la versione 1.7.1.1 (suona come una versione interna, posso dire che è reale)

Come per l'esecuzione di memcached come un servizio, questo tutorial potrebbe essere sufficiente:

http://www.richardnichols.net/2010/08/install-memcached-on-windows-server/

Io personalmente credo che dovresti ricompilare l'applicazione utilizza un compilatore a 64 bit (ovviamente su un computer a 64 bit) per ottenere il la maggior parte di Memcached su una piattaforma a 64 bit.Questo potrebbe non essere un compito facile, a seconda del codice.Se è stato scritto con 64-bit in mente la portabilità, quindi potrebbe essere una semplice ricompilazione.Se non, allora si potrebbe ben essere per un bel po ' di patch prima di andare a costruire..e poi dovresti verificare che non hai niente di rotto!

Non credo che si stia sopravvalutando le differenze tra 32 e 64-bit a tutti.Un errore comune è quello di assumere che si tratta di un lavoro semplice ricompilazione quando in realtà non lo è.Non ci sono più problemi di portabilità che la maggior parte delle persone realizzare.Solo perché l'applicazione crea e si finisce con un binario, non significa che il binario è di andare a comportarsi come si deve.Soprattutto quando si può interagire con altri di codice a 32 bit.

Detto questo, potrebbe essere la pena di dare un giro!

Buona fortuna.Evviva!


@Lars:Mi raccomando di leggere la domanda prima di tentare una risposta.

@Giovanni Sibly & @DannySmurf:data la natura di Memcached e ciò che mira a raggiungere, sicuramente non si desidera eseguire una versione a 32 bit su un computer a 64 bit?Se si ha un processore a 64 bit macchina avrebbe senso lanciare una versione a 64 bit per rendere al meglio le caratteristiche dell'hardware.

Ho un memcached-1.2.1 per win32 originariamente scaricato da qui: http://jehiah.cz/projects/memcached-win32/ (ma ora, per qualche motivo, non è un broken link).

Questo è quanto sono riuscito a correre memcached per Win32 di Windows Server 2008 R2 64 bit.memcached.exe -> proprietà -> Compatibilità -> Esegui il programma in modalità compatibilità per:Windows XP (service pack 3).Si noti che l'utente Uriel Katz parlare in questa discussione che questo metodo è limitato a 2GB di memoria di utilizzo.

Stavo solo cercando memcached su un 64bit di sistema di Windows e ho trovato questo.Finora non c'è alcuna Win64 memcached versione.Ma ho appena iniziato il memcached.exe con i comandi appropriati via cmd ed è solo in esecuzione bene.Sto utilizzando Windows Vista 64bit, non so se ci sono differenze tra Vista e le versioni del server.

Cordiali saluti Fleshgrinder

Tizio, Codeplex è il tuo amico -> check out questa porta di esso.Ha usato per avere una versione 64bit, ma u può scaricare il più recente e compilare per i 64bit (abbastanza facile) o di controllo delle versioni precedenti.

La versione a 32 bit di esecuzione a 64 bit tramite WOW64 ma il processo è ancora limitata a 2 gb,con una versione a 64 bit si può andare oltre per più di una singola macchina avrà.

Sei sicuro che la versione a 32 bit non basta eseguire su Windows a 64 bit, senza modifiche?La maggior parte delle cose da fare.

In mancanza di questo, hai provato a compilare per 64 bit?Una breve scansione di un paio di Google Gruppi, ecc, dove la gente ha chiesto la stessa domanda suggerisce che questo può essere esattamente la soluzione a questo.Penso che probabilmente stai sopravvalutando la differenza tra 32 bit e 64-bit di Windows (almeno per quanto riguarda la compilazione di un'applicazione nativa va).

FYI, non ho potuto ottenere la versione a 64 bit (da qui http://labs.northscale.com/memcached-packages/ per installare come servizio fino a quando mi sono imbattuto memcached come amministratore.

Ho appena andato per il file eseguibile proprietà, quindi sulla scheda "Compatibilità" e la casella "Esegui questo programma come amministratore" (C'è un sacco di altri modi per fare questo, ma sembrava più semplice)

Poi mi è stato finalmente in grado di eseguire correttamente:memcached -d installare

Non dimenticare di avviare il servizio dopo l'installazione di troppo :)

Si può sempre eseguire più istanze di 32-bit memcached processi in una sola casella, lasciando che la macchina di per servire un totale di > 2GB memcache spazio.

Se questo può aiutare, ho fatto un wrapper basato su una raccolta di memcached 1.4.5 64-bit trovato attraverso questa pagina (link diretto al NorthScale binario).

È un servizio di windows e funziona perfettamente in un ambiente di produzione:
https://github.com/eric-b/MemcachedService64

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top