MemcachedをWindows(x64)64ビット環境で実行できますか?


87

誰もが知っていIFWHENまたはどのように私は得ることができますMemcachedのWindowsの64ビット環境で実行していますか?

私は新しいホスティングソリューションをセットアップしていて、64ビットOSを実行することを強く望んでいます。これは、SQL ServerDBを備えたASP.NetMVCソリューションであるため、OSはWindows Server 2003または(願わくば!)2008のいずれかになります。

これがサーバー上の32ビットと64ビットに関する議論に波及する可能性があることは知っていますが、私の好みは64ビットであり、いくつかの非常に 正当な理由があるとだけ言っておきましょう。

これまでのところ、私はいくつかのオプションを試し、32ビットマシンでこれを起動することに関連する少し助けを見つけました(そして私が追加するかもしれませんが成功しました)が、元のWindowsポートはWin32固有であるため、これはほとんど役に立ちませんx64にサービスとしてインストールする場合。また、Win32でコンパイルされたバージョンしか取得できないlibeventにも依存しています。

特に32ビットと64ビットのアーキテクチャの複雑な違いのために、これらすべてをC ++にロードして「コンパイル」(64ビットの場合)を押すだけでは機能しないと思いますが、誰かがこれを取り除くことに取り組んでいるのではないかと思います地面?残念ながら、私の専門知識はマネージコード(C#)のみにあります。それ以外の場合は、これを自分で試してみますが、64ビットWindowsサーバーでmemcachedを実行しようとしているのは私だけだとは信じられません。 ..私ですか?


更新

はい、私はまだこれに対する答えを探しているのではないかと思います-安定したビルドを作成するための(私の哀れなC ++スキルを使った)すべての努力が失敗しました-1台のサーバーと3台のVMをゴミ箱に捨てて、今試してみました本当の専門家に頼ってください。これを64ビットに移植することを計画している人はいますか?それとも、代わりにMS Velocityを使用することを本当に提案していますか?私はその考えに身震いします。


更新:@ Lars-私は実際にEnyimを使用しています-それは非常に良いですが、あなたが言及しているのはサーバー部分ではなくクライアントです。

@ DannySmurf-私はそれをサービスとして32ビットOSにしかインストールできなかった。64ビットOSは、このWin32サービスのインストールを拒否します。もちろん、はい、多くのWin32コードはx64アーキテクチャでシームレスに動作するため、32ビットアプリ(Officeなど)やゲ​​ームをVista / XP 64などで実行できますが、サービスに関しては直接変換されません。私は専門家ではありません。サービスがサブスクライブする必要のある同期やイベントに関係しているのではないかと思います。64と32はうまく機能しないのではないかと思います。私はこれについて訂正できてうれしいですが、あなたの質問に答えるために-はい、私は試しました。

@ OJ-率直な回答をありがとうございました。私は同じように考えましたが、他の誰かが提案を持っているか、またはすでにこのルートを進んでいるかどうかはわかりませんでした。StackOverflowがLIVEの場合、より多くの人が応答して、これが調査中のものであるかどうかを知らせてくれます。自分でコンパイルしてみることができますが、(C ++の経験レベルでは)それを「信頼」することはできません。大規模でスケーラブルなソリューションのこのような重要なコンポーネントで「エンタープライズレベル」の信頼性を提供します。自信を持てるようになるには、消毒されていない実験的アプローチではなく、教育を受けた介入が必要だと思います。私の側の少しの見落としは、サイトをダウンさせる可能性があります。まあ...次回まで。


サービスを登録しようとすると、どのエラーが発生しますか?32ビット、64ビット環境で開発されたいくつかのサービスをインストールしましたが、問題は発生しませんでした。32ビットのコマンド・ラインを開放しようとするプログラムSC.EXEを使用してサービスを登録する
lsalamon

回答:


52

North Scaleラボは、Windowsx64用のmemcached1.4.4のビルドをリリースしました。

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

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

更新:彼らは最近Memcachedサーバーをリリースしました-それでも無料ですが、クラスタリング、Webベースのadmin / stats UIなどで強化されたディストリビューションです(私はそれらとはまったく関係ありません)http://northscale.com/でチェックしてくださいproducts / memcached.htmlおよびダウンロード:http//www.northscale.com/download.php?a = d

更新2:NorthScaleMemcachedはスタンドアロンダウンロードとして利用できなくなりました。現在、彼らはそれをMembaseと呼ばれる商用のNo-SQLDBオファリングの一部にしています。Memcachedのみのモード(つまり、永続性なし)で実行するように構成でき、100%無料のバージョンもあります。ここでそれをチェックしてください:http//www.membase.org/downloads

更新3:MemBaseはCouchDBと一緒に眠り、CouchBaseと呼ばれるハイブリッド製品を提供しました。彼らはまだhttp://www.couchbase.com/downloadで無料の「コミュニティ」バージョンを提供しています


3
編集する担当者がいませんが、ここの最初のリンクは現在正しくありません。64とビットの間にハイフンが必要です:blog.northscale.com/northscale-blog/2009/12/…–
Maggie

22
ダウンロードリンクは引き続き機能します:s3.amazonaws.com/downloads.northscale.com/…–
IEnumerator

Windowsのコマンドラインを使用してmemcachedサーバーを構成するにはどうすればよいですか?codeproject.com/Articles/96698/…リンクを試しました。しかし、カントは設定することができます。
ナレン2014年

25

人々が知っているように、membase / couchbase /まだ利用可能なものから善良な人々によって構築された32ビットおよび64ビットバージョンはブログのURLが変更されました:

Windowsサービスとしてのmemcached1.4.4の32ビットバイナリ:

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

Windowsサービスとしてのmemcached1.4.4の64ビットバイナリ:

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/

MemCacheDManagerに含まれている32ビットバージョンは、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


Couchbaseは現在、別のアプローチを推進しているようですcouchbase.com/memcached
Mike Gifford

6

winx64のMemcached1.4.5バイナリはここにあります: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

最新のバイナリ

NorthScaleには本当に古いバージョンがあります(最新は2010年4月の1.4.5です)が、Cygwinを使用してコンパイルされたWindows用の64ビットMemcachedバイナリを提供している人がいます(ただし、インストールする必要はありません)。彼のGitHubリポジトリgithubにあります。 com / nono303 / memcached

たとえば、最近リリースされたバージョン(この回答を書いている時点)1.5.16のバイナリはここにあります。32ビットバージョンと64ビットバージョンの両方があります。

WindowsサービスとしてMemcached

Windowsサービスとしてインストールする場合は、たとえば、オープンソースのNon-Sucking ServiceManagerを使用できます。

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

詳細については、ドキュメントを参照してください。


3

個人的には、64ビットプラットフォームでMemcachedを最大限に活用するには、64ビットコンパイラ(明らかに64ビットマシン上)を使用してアプリケーションを再コンパイルする必要があると感じています。コードによっては、これは簡単な作業ではない場合があります。64ビットの移植性を念頭に置いて作成された場合は、単純な再コンパイルである可能性があります。そうでない場合は、ビルドする前にかなりのパッチを適用する必要があります。その後、何も壊れていないことを確認する必要があります。

32ビットと64ビットの違いを過大評価しているとは思いません。よくある間違いは、実際にはそうではないのに、ジョブが単純な再コンパイルであると想定することです。ほとんどの人が認識しているよりも多くの移植性の問題があります。アプリケーションがビルドされてバイナリになってしまうからといって、バイナリが正常に動作するという意味ではありません。特に、他の32ビットコードと相互作用する可能性がある場合。

そうは言っても、試してみる価値があるかもしれません!

幸運を。乾杯!


@Lars:答えを試す前に質問を読むことをお勧めします。

@ John Sibly&@ DannySmurf:Memcachedの性質とそれが達成しようとしていることを考えると、64ビットマシンで32ビットバージョンを実行したくないのは確かですか?64ビット対応のマシンを使用している場合は、ハードウェアの機能を最大限に活用するために64ビットバージョンを実行するのが理にかなっています。


3

私は元々ここからダウンロードしたwin32用のmemcached-1.2.1を持っています:http//jehiah.cz/projects/memcached-win32/(しかし今は何らかの理由で壊れたリンクです)。

これが、Windows Server 2008 R2、64ビットでWin32用のmemcachedを実行する方法です。 memcached.exe- >プロパティ->互換性->このプログラムを互換モードで実行します:Windows XP(SP 3)。ユーザーUrielKatzがこのディスカッションで、この方法は2GBの使用メモリに制限されていると述べていることに注意してください。


2

64ビットWindowsシステムでmemcachedを検索していたところ、これが見つかりました。これまでのところ、Win64memcachedバージョンはありません。しかし、cmdを介して適切なコマンドでmemcached.exeを起動したところ、正常に実行されています。Windows Vista 64ビットを使用していますが、Vistaとサーバーのバージョンに違いがあるかどうかわかりません。

よろしくお願いしますFleshgrinder


これをありがとう-cmdからそれを始めることは問題ではなかった-サービスとしてそれをインストールすることは問題でした。よろしく、Rob G
RobertTheGrey 2009年

1

おい、Codeplexはあなたの友達です->このポートチェックしてください。以前は64ビットリリースでしたが、最新のものをダウンロードして64ビット用にコンパイルするか(非常に簡単)、以前のリリースを確認することができます。


1
こんにちはPure.Krome、情報をありがとう、しかし私はこのページを見たことがあり、64ビットサーバーバージョンを見たことがありません。いいえ-上記のOJの回答によると、コードがそのように記述されていない限り、64ビットに「簡単に」コンパイルすることはできません。メモリを操作することは、その理論をテストするのに常に悪い場所です...
RobertTheGrey 2008

うーん。ahh-> x64ビットはベータ版だったので、いくつかのより最近のアップデートに置き換えられました。ここで見つかりました:codeplex.com/memcachedproviders/Release/…– Pure.Krome 2009
1

1

32ビットバージョンはWOW64を介して64ビットで実行されますが、プロセスは2GBに制限されており、64ビットバージョンではそれを超えて複数のマシンに対応できます。


0

32ビットバージョンは、変更なしで64ビットWindowsで実行されるだけではありませんか?ほとんどのことはします。

それが失敗した場合、実際に64ビット用にコンパイルしてみましたか?人々がこれと同じ質問をしたいくつかのグーグルグループなどの簡単なスキャンは、それがまさにこれに対する解決策であるかもしれないことを示唆しています。おそらく、32ビットと64ビットのWindowsの違いを過大評価していると思います(少なくともネイティブアプリケーションのコンパイルに関しては)。


0

参考までに、64ビットバージョンを入手できませんでした(ここからhttp://labs.northscale.com/memcached-packages/までに、管理者としてmemcachedを実行するまで)をサービスとしてインストールする。

実行可能ファイルのプロパティに移動し、[互換性]タブに移動して、[このプログラムを管理者として実行する]をオンにしました(これを行う方法は他にもたくさんありますが、最も簡単なようです)

その後、ようやく正常に実行できました:memcached -d install

インストール後にサービスを開始することも忘れないでください:)


0

1つのボックスで32ビットmemcachedプロセスの複数のインスタンスをいつでも実行できるため、そのマシンは合計2GBを超えるmemcacheスペースを提供できます。


弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.