Могу ли я запустить Memcached в 64-битной среде Windows (x64)?

Кто-нибудь знает, ЕСЛИ , КОГДА или КАК я могу запустить Memcached в среде Windows 64bit?

Я настраиваю новое решение для хостинга и предпочитаю запускать 64-битную ОС, и, поскольку это решение ASP.Net MVC с базой данных SQL Server, ОС будет либо Windows Server 2003, либо (надеюсь!) 2008 года.

Я знаю, что это может перерасти в дискуссию о 32-битных и 64-битных серверах, но давайте просто скажем, что я предпочитаю 64-битные и у меня есть несколько очень веских причин.

До сих пор, я попробовал несколько вариантов и нашел немного о помощи , связанные с получением этого вверх на 32 - битный компьютере (и преуспел я мог бы добавить), но так как исходный порт для Windows является Win32 специфическими, это вряд ли будет помощь при установке в качестве службы на x64. Он также зависит от libevent, для которого я могу получить только скомпилированную версию Win32.

Я подозреваю, что простая загрузка всего этого в C ++ и нажатие кнопки «compile» (для 64-битных систем) не сработает, не в последнюю очередь из-за сложных различий в 32- и 64-битных архитектурах, но мне интересно, работает ли кто-нибудь над этим. земля? К сожалению, мой опыт заключается только в управляемом коде (C #), в противном случае я бы попытался взять это на себя, но я не могу поверить, что я единственный, кто пытается запустить memcached на 64-битном сервере Windows .. ... я?


Обновить

Да, я боюсь, что я все еще ищу ответ на этот вопрос - все мои усилия (с моими жалкими навыками C ++) сделать стабильную сборку потерпели неудачу - я потерял один сервер и 3 виртуальные машины просто пробовал это, так что теперь я обратиться к настоящим специалистам. Кто-нибудь планирует портировать это на 64bit? Или вы действительно предлагаете вместо этого использовать MS Velocity? Я содрогаюсь от этой мысли.


Обновление: @Lars - я действительно использую Enyim - это очень хорошо, но вы обращаетесь к клиенту, а не к серверной части.

@DannySmurf - я смог установить его как службу только на 32-битной ОС. 64-битная ОС отклоняет установку этой службы Win32. Конечно, да, большая часть кода Win32 без проблем работает на архитектуре x64, поэтому вы можете запускать 32-битные приложения (например, Office) или игры на Vista / XP 64 и т. Д., Но это напрямую не влияет на сервисы. Я не эксперт, я подозреваю, что это связано с синхронизацией или событиями, на которые сервисы должны подписаться, и я подозреваю, что 64 и 32 не играют хорошо. Я рад, что меня поправили, но чтобы ответить на ваш вопрос - да, я пытался.

@OJ - большое спасибо за прямой ответ. Я так и думал, но не был уверен, есть ли у кого-то еще предложения или уже пошел по этому пути. Может быть, когда StackOverflow LIVE, тогда больше людей ответят и дадут мне знать, если это что-то изучается, и хотя я могу попытаться скомпилировать это сам - я просто не могу «доверять» (с моим уровнем опыта C ++), что оно обеспечит надежность уровня предприятия в таком важном компоненте больших масштабируемых решений. Я думаю, что прежде чем я смогу быть уверенным, для этого понадобится образованное вмешательство, а не мой неанимированный экспериментальный подход. Один небольшой недосмотр с моей стороны может привести к сбою сайта. Ну хорошо ... до следующего раза.

12.08.2008 14:37:28
Какая ошибка возникает при попытке зарегистрировать сервис? Я установил несколько сервисов, разработанных в 32-битных, в 64-битных средах, и у меня никогда не было проблем. Попробуйте открыть командную строку в 32-битном режиме и зарегистрировать сервис с помощью программы sc.exe
lsalamon 30.06.2010 19:03:21
13 ОТВЕТОВ
РЕШЕНИЕ

Лаборатории North Scale выпустили сборку memcached 1.4.4 для Windows x64:

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

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

ОБНОВЛЕНИЕ: недавно они выпустили Memcached Server - все еще БЕСПЛАТНО, но улучшенный дистрибутив с кластеризацией, веб-интерфейсом администратора / статистики и т. Д. (Я не имею к ним никакого отношения). Проверьте его на http://northscale.com/ products / memcached.html и загрузить по адресу: http://www.northscale.com/download.php?a=d

ОБНОВЛЕНИЕ 2: NorthScale Memcached больше не доступен как отдельная загрузка. Теперь они сделали это частью своего коммерческого предложения No-SQL DB под названием Membase. Он может быть настроен для работы в режиме только с Memcached (то есть без сохранения), а также на 100% бесплатной версии. Проверьте это здесь: http://www.membase.org/downloads

ОБНОВЛЕНИЕ 3: MemBase спала с CouchDB и выпустила гибридный продукт под названием CouchBase. Они по-прежнему предлагают бесплатную версию "Сообщество" на http://www.couchbase.com/download

52
29.01.2014 17:19:23
У меня нет представителя для редактирования, но 1-я ссылка здесь в настоящее время неверна; между 64 и битом нужен дефис: blog.northscale.com/northscale-blog/2009/12/…
Maggie 30.06.2010 15:55:33
Ссылка на скачивание все еще работает: s3.amazonaws.com/downloads.northscale.com/…
IEnumerator 22.02.2011 17:23:35
Как я могу настроить memcached сервер, используя командную строку для Windows? Я попробовал codeproject.com/Articles/96698/… ссылку. Но не могу настроить.
Naren 29.01.2014 12:03:17

Вы уверены, что 32-разрядная версия работает без 64-разрядной Windows без изменений? Большинство вещей делают.

В противном случае вы пытались просто скомпилировать его для 64-битной? Краткое сканирование нескольких групп Google и т. Д., Где люди задавали этот же вопрос, позволяет предположить, что это может быть именно таким решением. Я думаю, что вы, вероятно, переоцениваете разницу между 32-битной и 64-битной Windows (по крайней мере, насколько компилируется нативное приложение).

0
12.08.2008 14:48:31

Я лично чувствую, что вам придется перекомпилировать приложение с помощью 64-битного компилятора (очевидно, на 64-битной машине), чтобы получить большую часть Memcached на 64-битной платформе. Это может быть непростой задачей в зависимости от кода. Если он написан с учетом 64-битной переносимости, то это может быть простая перекомпиляция. Если этого не произойдет, то вы вполне можете потратить немало времени на исправления, прежде чем начинать его сборку ... и тогда вам нужно будет убедиться, что вы ничего не сломали!

Я не думаю, что вы вообще переоцениваете разницу между 32-битной и 64-битной версиями. Распространенной ошибкой является предположение, что задание является простой перекомпиляцией, хотя на самом деле это не так. Есть больше проблем с переносимостью, чем думает большинство людей. Тот факт, что приложение создается, и в результате получается двоичный файл, не означает, что двоичный файл будет работать так, как должен. Особенно, когда он может взаимодействовать с другим 32-битным кодом.

Сказав это, возможно, стоит дать ему вращение!

Удачи. Ура!


@Lars: я рекомендую прочитать вопрос, прежде чем пытаться ответить.

@John Sbly & @DannySmurf: учитывая природу Memcached и то, к чему он стремится, неужели вы не хотели бы запускать 32-битную версию на 64-битной машине? Если у вас есть машина с 64-битной поддержкой, имеет смысл запустить 64-битную версию, чтобы максимально использовать возможности аппаратного обеспечения.

3
13.08.2008 02:30:09

Чувак, Codeplex твой друг -> проверь этот порт . Раньше у него была 64-битная версия, но вы можете либо скачать последнюю версию и скомпилировать для 64-битной (довольно просто), либо проверить предыдущие версии.

1
20.11.2008 04:27:27
Привет Pure.Krome, спасибо за информацию, но я видел эту страницу, и я никогда не видел 64-битную версию сервера. И нет - согласно ответу OJ выше, вы не можете просто "легко" скомпилировать в 64-битную версию, если код не был написан таким образом, а работа с памятью всегда плохое место для проверки этой теории ...
RobertTheGrey 29.12.2008 14:04:07
хмм. ааа -> бит x64 был бета-версией, поэтому его заменили некоторые более свежие обновления. это было найдено здесь: codeplex.com/memcachedproviders/Release/…
Pure.Krome 11.01.2009 02:34:08

Я просто искал memcached в 64-битной системе Windows и нашел это. Пока что нет ни одной Win6 memcached версии. Но я только запустил memcached.exe с соответствующими командами через cmd, и он работает нормально. Я использую Windows Vista 64bit, не знаю, есть ли различия между Vista и серверной версией.

С наилучшими пожеланиями Fleshgrinder

2
4.03.2009 19:44:40
Спасибо за это - запуск с cmd не был проблемой - установка его в качестве службы была проблемой. С уважением, Роб Г
RobertTheGrey 10.03.2009 15:01:22

32-разрядная версия работает на 64-разрядной версии через WOW64, но процесс по-прежнему ограничен 2 ГБ, а с 64-разрядной версией вы можете выйти за пределы этой возможности более чем на одну машину.

1
18.12.2009 17:53:59

К вашему сведению, я не мог заставить 64-битную версию (отсюда http://labs.northscale.com/memcached-packages/ ) установить в качестве службы, пока не запустил memcached от имени администратора.

Я просто зашел в свойства исполняемого файла, затем на вкладку «Совместимость» и установил флажок «Запустить эту программу от имени администратора» (существует множество других способов сделать это, но это кажется самым простым)

Тогда я наконец смог успешно запустить: memcached -d install

Не забудьте запустить сервис и после его установки :)

0
22.07.2010 17:35:33

У меня есть memcached-1.2.1 для win32, первоначально скачанный отсюда: http://jehiah.cz/projects/memcached-win32/ (но теперь по какой-то причине это неработающая ссылка).

Вот так мне удалось запустить memcached для Win32 на 64-битной Windows Server 2008 R2. memcached.exe -> свойства -> совместимость -> запустить эту программу в режиме совместимости для: Windows XP (SP 3) . Обратите внимание, что пользователь Уриэль Кац упоминает в этом обсуждении, что этот метод ограничен использованием 2 ГБ памяти.

3
9.01.2011 16:59:55

Вы всегда можете запустить несколько экземпляров 32-битных процессов memcached на одном блоке, что позволит этой машине обслуживать в общей сложности> 2 ГБ памяти memcache.

0
4.05.2011 17:14:51

Люди знают, что 32-разрядная и 64-разрядная версия, созданная хорошими людьми из membase / couchbase / независимо от того, что еще доступно, URL блога изменилась:

32-битный двоичный файл memcached 1.4.4 в качестве Windows-сервиса:

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-битный двоичный файл memcached 1.4.4 в качестве Windows-сервиса:

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

64-битная версия имеет неправильное время безотказной работы.

Так что, может быть, вы хотите этот двоичный файл 1.4.2 вместо:

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

32-разрядная версия, включенная в MemCacheDManager, также поддерживает работу в Windows 2000 (без 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

Чтобы распаковать MSI:

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

25
21.03.2012 15:25:25
Couchbase, кажется, теперь продвигает другой подход couchbase.com/memcached
Mike Gifford 31.07.2013 03:50:34

Memcached 1.4.5 бинарный для win x64 можно найти здесь: http://downloads.northscale.com/memcached-1.4.5-amd64.zip

Другой вариант - установить Couchbase Server 1.8.0 x64 отсюда: http://www.couchbase.com/download , встроенный memcached выглядит как версия 1.7.1.1 (звучит как внутренняя версия, я не могу сказать, какая настоящий)

Что касается запуска memcached как сервиса, этого урока может быть достаточно:

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

6
5.04.2012 09:36:45

Если это может помочь, я сделал обертку на основе компиляции 64- битных memcached 1.4.5, найденных на этой странице ( прямая ссылка на двоичный файл NorthScale ).

Это служба Windows, и она отлично работает в производственной среде:
https://github.com/eric-b/MemcachedService64

0
5.10.2012 20:49:57

Современные бинарные файлы

У NorthScale действительно старые версии (последняя версия 1.4.5, выпущенная в апреле 2010 года), но есть парень, который предлагает 64-битные двоичные файлы Memcached для Windows, скомпилированные с использованием Cygwin (но они не требуют его установки) в своем gitHub-хранилище GitHub. com / nono303 / memcached .

Например, двоичные файлы самой последней выпущенной версии (на момент написания этого ответа) 1.5.16 находятся здесь . Существуют как 32-, так и 64-битные версии.

Memcached как служба Windows

Если вы хотите установить его в качестве службы Windows, вы можете использовать, например, диспетчер не-сосущих служб с открытым исходным кодом :

nssm install memcached c:\path\to\memcached.exe
nssm start memcached

Смотрите документацию для деталей.

4
1.10.2019 13:23:49