Question

Personne ne sait SI, LORSQUE ou COMMENT Je peux obtenir Memcached en cours d'exécution sur un Windows 64 bits de l'environnement?

Je suis la mise en place d'une nouvelle solution d'hébergement et d'où la préférence pour exécuter un système d'exploitation 64 bits, et depuis il est un ASP.Net MVC solution avec DB SQL Server, le système d'exploitation doit être Windows Server 2003 ou (hopfully!) 2008.

Je sais que cela n'ait des répercussions dans un débat sur 32 bits vs 64 bits sur des serveurs, mais disons simplement que ma préférence est 64 bits et que j'ai quelques très bon raisons.

Jusqu'à présent, j'ai essayé un certain nombre d'options et de fonder une peu de aider liées à l'obtention de ce sur une machine 32 bits (et réussi, je pourrais ajouter), mais depuis l'origine Windows port est Win32 spécifique, c'est à peine va l'aider lors de l'installation en tant que service sur x64.Il dispose également d'une dépendance de l' libevent pour laquelle je ne peux obtenir un Win32 version compilée.

Je soupçonne que le simple chargement de tout cela en C++ et de cliquer sur "compiler" (64bits) ne fonctionne pas, du moins pas à cause de la complexité des différences dans les architectures 32 et 64 bits, mais je me demandais si quelqu'un est workng sur l'obtention de ce hors-sol?Malheureusement, mes compétences se situent dans du code managé (C#) uniquement, sinon j'aurais essayer et de prendre ce sur moi-même, mais je ne peux pas croire que je suis le seul gars là-bas en essayant d'obtenir memcached en cours d'exécution sur une version 64 bits de Windows server....suis je??

De l'aide ou des recommandations apprécié...


Mise à jour

Oui j'ai peur, je suis toujours à la recherche d'une réponse à cette - tous mes efforts (avec mon pathétique C++ compétences) pour faire un stable de construire, ont échoué, j'ai mis à la corbeille d'un serveur et de 3 VM est juste de l'essayer, donc maintenant je me tourne vers les vrais experts.Quelqu'un est-il de la planification sur le portage de ce à 64 bits?Ou êtes-vous vraiment ce qui suggère que j'utilise MS Vitesse à la place?Je frissonne à la pensée...


Mise à jour:@Lars - je ne l'utilisation de Enyim, en fait - et c'est très bon, mais ce que vous faites allusion, est un client, plutôt que de la partie serveur.

@DannySmurf - je ne l'ai été capable de l'installer en tant que service sur un OS 32 bits.64 bits OS rejette l'installation de ce service Win32.Oui bien sûr, beaucoup de code Win32 fonctionne de manière transparente sur l'architecture 64 bits, d'où vous pouvez exécuter des applications 32 bits (comme le Bureau par exemple) ou des jeux sur Vista/XP 64 etc, mais cela ne se traduit pas directement quand il s'agit de services.Je ne suis pas expert, je soupçonne que cela a à voir avec les synchronisations ou concours complet que les services ont besoin de vous abonner, et je soupçonne que la version 64 et 32 ne jouent pas bien.Je suis heureux d'être corrigé sur tout cela, mais pour répondre à votre question, oui, j'ai essayé.

@JO - merci beaucoup pour la simple réponse.Je le pensais bien, mais n'étais pas sûr si quelqu'un a des suggestions ou avaient déjà emprunté cette route.Peut-être quand StackOverflow est en DIRECT, puis de plus en plus les gens vont réagir et laissez-moi savoir si c'est quelque chose sur la table, et bien que j'ai essayer de le compiler moi-même - je ne peux tout simplement pas "confiance" (avec mon C++ niveau d'expérience) qu'il permettrait "d'Entreprise" au Niveau de la fiabilité de telle composante essentielle de grandes solutions évolutives.Je pense qu'il aurait besoin d'être éduqués de l'intervention plutôt que mon unsanitised approche expérimentale avant que je puisse avoir confiance.Un peu de surveillance de ma part, pourrait rendre le site vers le bas.Eh bien...jusqu'à la prochaine fois...

Était-ce utile?

La solution

Nord de l'Échelle des laboratoires ont publié une version de memcached 1.4.4 pour Windows x64:

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

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

Mise à JOUR:ils ont récemment publié Serveur Memcache - toujours GRATUIT, mais amélioré de distribution avec le clustering, basé sur le web admin/stats de l'INTERFACE utilisateur, etc.(Je ne suis pas lié à eux de toute façon) Check it out à http://northscale.com/products/memcached.html et de le télécharger sur: http://www.northscale.com/download.php?a=d

Mise à JOUR 2:NorthScale Memcached n'est plus disponible en téléchargement autonome.Maintenant, ils ont fait une partie de leurs commerciaux No-SQL DB offrant appelé Membase.Il peut être configuré pour s'exécuter dans Memcached-mode (c'est à diresans persistance) et il y a une version 100% gratuite trop.Découvrez-le ici: http://www.membase.org/downloads

Mise à JOUR 3:MemBase a dormi avec CouchDB et produit un hybride offre de produits, appelée CouchBase.Ils le font encore offrons gratuitement une "Communauté" de la version à http://www.couchbase.com/download

Autres conseils

Juste pour que les gens le savent, le 32-bit et 64-bit version de construire par les gens de bonne membase/couchbase/tout ce qui est encore disponible à l'URL du blog a changé:

32-bit binaire de memcached 1.4.4 comme Windows-service:

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 binaire de memcached 1.4.4 comme Windows-service:

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 version 64 bits n'ont le tort de disponibilité.

Alors peut-être que vous voulez que ce binaire de 1.4.2 la place:

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

La version 32 bits inclus avec MemCacheDManager aussi suppors en cours d'exécution sur 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

Pour décompresser le fichier msi:

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

Memcached 1.4.5 binaire pour win x64 peuvent être trouvés ici: http://downloads.northscale.com/memcached-1.4.5-amd64.zip

Une autre option serait d'installer Couchbase Server 1.8.0 x64 à partir d'ici: http://www.couchbase.com/download, le lot de memcached semble être la version 1.7.1.1 (on dirait une version interne, je ne peux pas dire qui est le vrai)

Comme pour memcached comme un service, ce tutoriel peut être suffisant:

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

Personnellement, je pense que vous devez avoir à recompiler l'application à l'aide d'un compilateur 64 bits (évidemment sur une machine 64 bits) pour obtenir le plus de Memcached sur une plate-forme 64 bits.Cela peut ne pas être une tâche facile selon le code.Si il a été écrit avec la version 64 bits de portabilité à l'esprit, alors il pourrait être une simple recompilation.Si ce n'est pas le cas, alors vous pourriez bien être tout à fait un peu de patcher avant de faire construire..et puis, vous devez vérifier que vous n'avez rien de cassé!

Je ne pense pas que vous êtes en train de surestimer les différences entre les versions 32 et 64 bits à tous.Une erreur commune est de considérer que le travail est une simple recompilation, alors qu'en fait il ne l'est pas.Il y a plus de problèmes de portabilité que la plupart des gens réalisent.Tout simplement parce que l'application crée et vous vous retrouvez avec un fichier binaire, cela ne signifie pas que le binaire va se comporter comme il se doit.Surtout quand il peut interagir avec d'autres code 32 bits.

Cela dit, il pourrait être utile de donner un spin!

Bonne chance.Cheers!


@Lars:Je vous recommande de lire la question avant de tenter une réponse.

@John Sibly & @DannySmurf:compte tenu de la nature de Memcached et ce qu'il vise à atteindre, certainement vous ne voulez pas exécuter une version 32 bits sur une machine 64 bits?Si vous aviez une version 64 bits capable machine, il serait judicieux d'exécuter une version 64 bits pour faire la plupart des caractéristiques du matériel.

J'ai un memcached-1.2.1 pour win32 initialement téléchargé à partir d'ici: http://jehiah.cz/projects/memcached-win32/ (mais maintenant, pour une raison quelconque, il est un lien brisé).

C'est comment j'ai réussi à exécuter memcached pour Win32 sur Windows Server 2008 R2 64 bits.memcached.exe -> propriétés -> Compatibilité -> Exécuter ce programme en mode de compatibilité pour:Windows XP (SP 3).Notez que l'utilisateur Uriel Katz mentionner dans cette discussion que cette méthode est limitée à 2 go de mémoire d'utilisation.

Je viens de chercher pour memcached sur un système Windows 64 bits et de trouver ce.Jusqu'à présent il n'y a pas Win64 version memcached.Mais je viens de commencer la memcached.exe avec les commandes appropriées via cmd et il est juste en cours d'exécution fine.Je suis sous Windows Vista 64 bits, je ne sais pas si il y a des différences entre Vista et les versions du serveur.

Bien cordialement Fleshgrinder

Mec, Codeplex est votre ami -> découvrez ce port de il.Il l'habitude d'avoir une version 64bit, mais u peut soit télécharger les plus récentes et les compiler pour 64bit (assez facile), ou vérifier les versions précédentes.

La version 32 bits exécuter sur 64 bits via WOW64 mais le processus est encore limitée à 2 go,avec une version 64 bits, vous pouvez aller au-delà qu'à un seul ordinateur.

Êtes-vous sûr que la version 32 bits n'est pas seulement exécuté sur Windows 64 bits, sans modification?La plupart des choses à faire.

À défaut, avez-vous vraiment essayé tout simplement de le compiler pour 64 bits?Une brève analyse de quelques Groupes de Google etc où les gens posé cette même question suggère que peut-être exactement la solution à cette question.Je pense que vous êtes probablement à surestimer la différence entre 32 bits et 64 bits de Windows (au moins autant que la compilation d'une application native va).

Pour info, je ne pouvais pas obtenir la version 64 bits (à partir d'ici http://labs.northscale.com/memcached-packages/) pour installer en tant que service jusqu'à ce que j'ai couru memcached en tant qu'administrateur.

Je suis juste allé à l'exécutable, propriétés, puis l'onglet Compatibilité et cocher "Exécuter ce programme en tant qu'administrateur" (Il y a une tonne d'autres façons de le faire, mais il semblait plus simple)

Puis j'ai finalement été en mesure d'exécuter avec succès:memcached -d installer

N'oubliez pas de démarrer le service après il est installé trop :)

Vous pouvez toujours exécuter plusieurs instances de 32 bits memcached processus sur une case, permettant l'utilisation de cette machine pour servir un total de > 2 go de memcache de l'espace.

Si cela peut aider, j'ai fait un wrapper basé sur une compilation de memcached 1.4.5 64-bits trouvé par le biais de cette page (lien direct vers NorthScale binaire).

C'est un service windows et il fonctionne parfaitement dans un environnement de production:
https://github.com/eric-b/MemcachedService64

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top