マジセミドライブ

ウェビナー関連のニュースやITサービス&ツールの最新情報を随時配信します。

OSS情報

2020.01.01

【OSS情報アーカイブ】memcached

【OSS情報アーカイブ】memcached

※当記事に記載されている情報は、古くなっている場合があります。オフィシャルサイトで最新情報をご確認ください。

「memcached」とは

基本情報

概要

memcached(メムキャッシュディー)とは、高性能分散メモリキャッシュサーバです。既存システムに導入してシステムレスポンスの高速化を図れます。

基本説明

「memcached」は「memory cache daemon」の略表記です。

memcachedは、メモリ上で動作するキーバリュー型揮発性キャッシュです。データベースへの問い合わせ結果(データ/オブジェクト)を一時的にキャッシュし、次に同じデータが参照された時にメモリから即座に返せます。データベースへのアクセス回数を減らし、動的Webアプリケーションの高速化/スケーラビリティ向上のために利用できます。

巨大な分散キャッシュシステムを構築でき、サーバ台数を増やすことで性能を向上できるため、大規模Webサービスなどでよく用いられます。特定の環境のみで使用したり、既存の環境で使用されていないメモリを活用する手段としても活用できます。

経緯

memcachedは、Danga Interactive社が中心となって開発されたソフトウェアです。

主な特徴

揮発性キャッシュ

memcachedはメモリ上にデータを格納するため、非常に高速なデータ読み込み/書き込みが可能です。

しかし、揮発性であるため、memcached自体の停止/ハード電源喪失などが発生すると、memcachedに保存されているデータは消失してしまいます。また、メモリが指定された容量に達すると、LRU(Least Recently Used)に基づいて利用されないキャッシュから自動的に削除されていきます。そのため、データベースのように使用できません。あくまでキャッシュ機構としての使用が想定されています。

負荷分散「コンシステント・ハッシング」

memcachedは、「コンシステントハッシング(Consistent Hashing)」アルゴリズムによってデータ分割/負荷分散を行います。分散型システムを構成する各ノード(memcached)が、論理的にリング(輪)を形作るように配置されます。

シンプルプロトコル

memcachedサーバとクライアントの通信は、シンプルな行ベースプロトコルによって行われます。複雑なフォーマット(XMLなど)は利用しません。

イベントハンドリング「libevent」

「libevent」とは、サーバに対するコネクション数が増加してもパフォーマンスが落ちないようにするための共通仕様ライブラリです。Linuxの「epoll」、BSD系OSの「kqueue」などのイベントハンドリング機能をラップします。

memcachedは、この「libevet」ライブラリを利用しているため、Linux/BSD/SolarisなどのOS上で高いパフォーマンスを発揮できます。

非セキュア

memcachedは、最高のパフォーマンスを得るために、認証/暗号化などのセキュリティ機能を提供していません。セキュリティに関しては、ネットワーク環境/セキュリティツールなどでの確保が必要です。

同様製品

同様な機能を提供する製品として、次のようなものがあります。

オープンソース製品:「Redis」「Kyoto Tycoon」など。

導入事例

Facebook/YouTube/Wikipedia/mixiなどのWebサービスで採用され、スケーラビリティ向上のための重要要素になっています。

ライセンス情報

memcachedのライセンスは「BSDライセンス」です。このライセンスに従うことを条件として、ソースコードの改変と公開が許可されています。

ダウンロード

ダウンロードページ

※定期的にメンテナンスを実施しておりますが、一部情報が古い場合がございます。ご了承ください。

この記事のタグ一覧

おすすめの記事

経営活動に活用できる 原価管理 を実現するには? 〜製造業の現実的な課題に向き合い、現場視点から改善する原価管理手法の必達プロセスをご紹介〜

ウェビナーまとめ

2024.05.15

経営活動に活用できる 原価管理 を実現するには? 〜製造業の現実的な課題に向き合い、現場視点から改善する原価管理手法の必達プロセスをご紹介〜

2024年3月12日に三菱電機ITソリューションズ株式会社とアットストリームパートナーズ合同会社の共催で、組立加工製造業向けのセミナー「なぜか高くなる原価を管理する 不確実性の時代を乗り切るためのコスト戦略とは」が開催されました。本セミナーでは、製造業における原価管理の現状と改善手法について深く掘り下げ、経営活動への具体的な活用方法を提示しました。今回は、その講演の要点をお伝えします。

【OSS情報】WebベースAPI開発スイート「 Hoppscotch 」🌐

OSS情報

2024.07.04

【OSS情報】WebベースAPI開発スイート「 Hoppscotch 」🌐

「 Hoppscotch 」は、オープンソースのAPI開発エコシステムで、使いやすさとアクセシビリティを重視した軽量なWebベースのスイートです。無料版と有料版があり、PostmanやInsomniaの代替として利用可能です。

【OSS情報】LLMトレーニング用ライブラリ「 GPT-NeoX 」📚

OSS情報

2024.07.18

【OSS情報】LLMトレーニング用ライブラリ「 GPT-NeoX 」📚

「 GPT-NeoX 」は、GPU上で大規模言語モデル(LLM)を効率的にトレーニングするためのライブラリです。NVIDIAのモデルを基に独自の最適化が加えられ、オートレグレッシブ言語モデルのトレーニング手法を集約しています。