memcached是一套分布式的高速缓存系统,由LiveJournal的Brad Fitzpatrick开发,但被许多网站使用。这是一套开放源代码软件,以BSD license授权发布。

memcached作为高速运行的分布式缓存服务器,具有以下的特点。
·基于c/s__架构,协议简单
·基于libevent__的事件处理
·内置内存存储方式(slab allowcation__)
· memcached不互相通信的分布式
· 数据过期方式:Lazy Expiration 和 LRU

Mencached的数据流向
1.jpg

1.安装Memcached

安装必要memcached libmemcached libevent

  1. # yum install -y memcached libmemcached libevent

开启memcached服务

  1. # systemctl start memcached

2.查看memcached运行状态

  1. # memcached-tool 127.0.0.1:11211 stats
  2. #echo stats |nc 127.0.0.1 11211 //需要安装nc工具 yum install -y nc
  3. #memstat --servers=127.0.0.1:11211 //安装memcached后可使用
  4. #127.0.0.1:11211 Field Value
  5. accepting_conns 1
  6. auth_cmds 0
  7. auth_errors 0
  8. bytes 0
  9. bytes_read 196
  10. bytes_written 1172
  11. cas_badval 0
  12. cas_hits 0
  13. cas_misses 0
  14. cmd_flush 0
  15. cmd_get 5
  16. cmd_set 3
  17. cmd_touch 0
  18. conn_yields 0
  19. connection_structures 11
  20. curr_connections 10
  21. curr_items 0
  22. decr_hits 0
  23. decr_misses 0
  24. delete_hits 1
  25. delete_misses 0
  26. evicted_unfetched 0
  27. evictions 0
  28. expired_unfetched 0
  29. get_hits 3
  30. get_misses 2
  31. hash_bytes 524288
  32. hash_is_expanding 0
  33. hash_power_level 16
  34. incr_hits 0
  35. incr_misses 0
  36. libevent 2.0.21-stable
  37. limit_maxbytes 67108864
  38. listen_disabled_num 0
  39. pid 2319
  40. pointer_size 64
  41. reclaimed 1
  42. reserved_fds 20
  43. rusage_system 0.041016
  44. rusage_user 0.000131
  45. threads 4
  46. time 1646617228
  47. total_connections 16
  48. total_items 3
  49. touch_hits 0
  50. touch_misses 0
  51. uptime 793
  52. version 1.4.15

3.Memcached命令行

  1. # yum install -y telnet nc
  2. # telnet 127.0.0.1 11211
  3. Trying 127.0.0.1...
  4. Connected to 127.0.0.1.
  5. Escape character is '^]'.
  6. set key2 0 30 2
  7. ab
  8. STORED
  9. get key2
  10. VALUE key2 0 2
  11. ab
  12. END

4.Mencached数据示例

  1. # telnet 127.0.0.1 11211
  2. Trying 127.0.0.1...
  3. Connected to 127.0.0.1.
  4. Escape character is '^]'.
  5. set key3 1 100 4
  6. abcd
  7. STORED
  8. get key3
  9. VALUE key3 1 4
  10. abcd
  11. END
  12. replace key3 1 200 5
  13. abcdx
  14. STORED
  15. get key3
  16. VALUE key3 1 5
  17. abcdx
  18. END
  19. delete key3
  20. DELETED
  21. get key3
  22. END

5.Memcached数据导出和导入

  1. # memcached-tool 127.0.0.1:11211 dump > data.txt
  2. Dumping memcache contents
  3. Number of buckets: 0
  4. Number of items :
  5. nc 127.0.0.1 11211 < data.txt