90

Windows 64 ビット環境で Memcached を実行できるIF いつ、またはどのようにすればよいか知っている人はいますか?

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

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

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

I suspect that simply loading all this up in C++ and hitting "compile" (for 64bit) wouldn't work, not least because of the intricate differences in 32 and 64bit architectures, but I'm wondering if anyone is working on getting this off the ground? Unfortunately, my expertise lie in managed code (C#) only, otherwise I would try and take this on myself, but I can't believe I'm the only guy out there trying to get memcached running on a 64 bit Windows server....am I?


Update

はい、私はまだこれに対する答えを探しています - 安定したビルドを作成するための私のすべての努力 (私の哀れな 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++ の経験レベルでは) それを「信頼」することはできません。大規模でスケーラブルなソリューションのこのような重要なコンポーネントに「エンタープライズ レベル」の信頼性を提供します。自信を持つ前に、無害な実験的アプローチではなく、教育を受けた介入が必要になると思います. 私のちょっとした見落としで、サイトがダウンする可能性があります。ま、まぁ・・・次回まで。

4

13 に答える 13

53

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で無料の「コミュニティ」バージョンを提供しています

于 2010-03-01T15:12:00.593 に答える
25

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

Windows サービスとしての memcached 1.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 サービスとしての memcached 1.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

于 2012-03-21T14:19:03.717 に答える
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/

于 2012-04-05T09:36:45.500 に答える
4

ここから最初にダウンロードしたwin32用のmemcached-1.2.1があります:http://jehiah.cz/projects/memcached-win32/(しかし、何らかの理由でリンクが壊れています)。

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

于 2011-01-09T16:59:55.970 に答える
3

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

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

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

幸運を。乾杯!


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

@John Sively & @DannySmurf: Memcached の性質とその目的を考えると、64 ビット マシンで 32 ビット バージョンを実行したくないと思いませんか? 64 ビット対応のマシンをお持ちの場合は、ハードウェアの機能を最大限に活用するために 64 ビット バージョンを実行するのが理にかなっています。

于 2008-08-13T02:30:09.480 に答える
2

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

よろしくお願いしますFleshgrinder

于 2009-03-04T19:44:40.717 に答える
1

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

于 2008-11-20T04:27:27.160 に答える
1

32 ビット バージョンは WOW64 を介して 64 ビットで実行されますが、プロセスは依然として 2 GB に制限されています。

于 2009-12-18T17:53:59.937 に答える
0

これが役立つ場合は、このページ( NorthScale バイナリへの直接リンク)で見つかった memcached 1.4.5 64 ビットのコンパイルに基づいてラッパーを作成しました。

これは Windows サービスであり、実稼働環境で完全に機能します:
https://github.com/eric-b/MemcachedService64

于 2012-10-05T20:49:57.440 に答える
0

32 ビット バージョンは、修正なしで 64 ビット Windows で動作するだけではないということは確かですか? ほとんどのことはそうです。

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

于 2008-08-12T14:48:31.440 に答える
0

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

実行可能ファイルのプロパティ、次に互換性タブに移動し、「このプログラムを管理者として実行する」をチェックしました(これを行う方法は他にもたくさんありますが、最も簡単に思えました)

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

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

于 2010-07-22T17:35:33.633 に答える
0

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

于 2011-05-04T17:14:51.097 に答える