代码网下载
热门搜索: 360AI云 360AI云 百度网盘
Memcached
Memcached
  • 版本:1.4.34
  • 大小:0.37MB
  • 支持度:80 %
  • 更新:2024-03-05
软件介绍

软件简介

memcached      memcached官方版是一个高性能分布式内存对象缓存系统,该程序可用于动态web应用以减轻数据库负载,软件通过在内存中缓存数据来减少读取数据库的次数,从而能够提供动态数据库驱动网站的速度。

memcached

软件相关
      memcached官方版是基于一个存储键值对的hashmap,守护进程(daemon)是用c写的,客户端可以用任何语言来编写并通过memcached协议与守护进程通信。

      memcached是以livejournal 旗下danga interactive 公司的brad fitzpatric 为首开发的一款软件。现在已成为mixi、hatena、facebook、vox、livejournal等众多服务中提高web应用扩展性的重要因素。许多web应用都将数据保存到rdbms中,应用服务器从中读取数据并在浏览器中显示。但随着数据量的增大、访问的集中,就会出现rdbms的负担加重、数据库响应恶化、网站显示延迟等重大影响。

      这时就该memcached大显身手了。memcached是高性能的分布式内存缓存服务器。一般的使用目的是,通过缓存数据库查询结果,减少数据库访问次数,以提高动态web应用的速度、提高可扩展性。

      memcached的守护进程(daemon )是用c写的,但是客户端可以用任何语言来编写,并通过memcached协议与守护进程通信。但是它并不提供冗余(例如,复制其hashmap条目);当某个服务器s停止运行或崩溃了,所有存放在s上的键/值对都将丢失。

memcached软件特色

      协议

      memcached的服务器客户端通信并不使用复杂的xml等格式,而使用简单的基于文本行的协议。

      因此,通过telnet也能在memcached上保存数据、取得数据。下面是例子。

      $ telnet localhost 11211

      trying 127.0.0.1

      connected to localhost.localdomain (127.0.0.1).

      escape character is '^]'.

      set foo 0 0 3 (保存命令)

      bar (数据)

      stored (结果)

      get foo (取得命令)

      value foo 0 3 (数据)

      bar (数据)

      事件处理

      libevent是个程序库,它将linux的epoll、bsd类操作系统的kqueue等事件处理功能封装成统一的接口。即使对服务器的连接数增加,也能发挥o(1)的性能。memcached使用这个libevent库,因此能在linux、bsd、solaris等操作系统上发挥其高性能。关于事件处理这里就不再详细介绍,可以参考dan kegel的the c10k problem。

      存储方式

      为了提高性能,memcached中保存的数据都存储在memcached内置的内存存储空间中。由于数据仅存在于内存中,因此重启memcached、重启操作系统会导致全部数据消失。另外,内容容量达到指定值之后,就基于lru(least recently used)算法自动删除不使用的缓存。memcached本身是为缓存而设计的服务器,因此并没有过多考虑数据的永久性问题。

      通信分布式

      memcached尽管是“分布式”缓存服务器,但服务器端并没有分布式功能。各个memcached不会互相通信以共享信息。那么,怎样进行分布式呢?这完全取决于客户端的实现。本文也将介绍memcached的分布式。

软件功能

      服务器参数监控:stats、settings、items、slabs、sizes实时刷新

      服务器性能监控:get、delete、incr、decr、cas等常用操作命中率实时监控

      支持数据遍历,方便对存储内容进行监视

      支持条件查询,筛选出满足条件的key或value

      数组、json等序列化字符反序列显示

      兼容memcache协议的其他服务,如tokyo tyrant (遍历功能除外)

      支持服务器连接池,多服务器管理切换方便简洁

memcached软件特色

      协议

      memcached的服务器客户端通信并不使用复杂的xml等格式,而使用简单的基于文本行的协议。

      因此,通过telnet也能在memcached上保存数据、取得数据。下面是例子。

      $ telnet localhost 11211

      trying 127.0.0.1

      connected to localhost.localdomain (127.0.0.1).

      escape character is '^]'.

      set foo 0 0 3 (保存命令)

      bar (数据)

      stored (结果)

      get foo (取得命令)

      value foo 0 3 (数据)

      bar (数据)

      事件处理

      libevent是个程序库,它将linux的epoll、bsd类操作系统的kqueue等事件处理功能封装成统一的接口。即使对服务器的连接数增加,也能发挥o(1)的性能。memcached使用这个libevent库,因此能在linux、bsd、solaris等操作系统上发挥其高性能。关于事件处理这里就不再详细介绍,可以参考dan kegel的the c10k problem。

      存储方式

      为了提高性能,memcached中保存的数据都存储在memcached内置的内存存储空间中。由于数据仅存在于内存中,因此重启memcached、重启操作系统会导致全部数据消失。另外,内容容量达到指定值之后,就基于lru(least recently used)算法自动删除不使用的缓存。memcached本身是为缓存而设计的服务器,因此并没有过多考虑数据的永久性问题。

      通信分布式

      memcached尽管是“分布式”缓存服务器,但服务器端并没有分布式功能。各个memcached不会互相通信以共享信息。那么,怎样进行分布式呢?这完全取决于客户端的实现。本文也将介绍memcached的分布式。

软件功能

      服务器参数监控:stats、settings、items、slabs、sizes实时刷新

      服务器性能监控:get、delete、incr、decr、cas等常用操作命中率实时监控

      支持数据遍历,方便对存储内容进行监视

      支持条件查询,筛选出满足条件的key或value

      数组、json等序列化字符反序列显示

      兼容memcache协议的其他服务,如tokyo tyrant (遍历功能除外)

      支持服务器连接池,多服务器管理切换方便简洁

相关推荐
  • 百度网盘 百度网盘
    百度网盘电脑版 百度网盘电脑版
    MotionPro MotionPro
    百度网盘最新版 百度网盘最新版
  • 123云盘 123云盘
    XAMPP XAMPP
    iCloud iCloud
    Permeo Security Driver Permeo Security Driver
  • Proxifier Proxifier
    phpStudy phpStudy
    极空间 极空间
    XAMPP Linux版 XAMPP Linux版
软件排行
  • 微信 微信
    IP地址切换器 IP地址切换器
    文章管理器 文章管理器
    三菱PLC学习软件(FX-TRN-BEG-C) 三菱PLC学习软件(FX-TRN-BEG-C)
  • AA期末评语生成器 AA期末评语生成器
    dpp dpp
    国信金太阳网上交易专业版 国信金太阳网上交易专业版
    虎牙直播 虎牙直播
  • DNAMAN DNAMAN
    xFTP xFTP
    Fresh FTP Fresh FTP
    一键还原系统 一键还原系统