如何在Memcached中前置数据

本文概述

  • Ubuntu中的示例
  • Windows中的示例
  • 使用Java应用程序前置数据
Memcached prepend命令类似于append命令, 后者用于在现有密钥中添加一些数据。但是, append命令在现有数据之后添加新数据, 而prepend命令在现有数据之前添加新数据。
句法
prepend key flags exptime bytes [noreply]value

这里,
key:它是存储和从memcached检索数据的密钥。
flags:标志是服务器与数据一起存储的32位无符号整数(由用户提供), 并在检索项目时随数据一起返回。
exptime:exptime是到期时间, 以秒为单位。 0表示没有延迟。如果超过30天, 则memcached会将其用作UNIX时间戳记过期。
bytes:字节是数据块中需要存储的字节数。这是存储在memcached中的数据的长度。
noreply:这是一个可选参数。它用于通知服务器不要发送任何答复。
值:值是必须存储的数据。使用上述选项执行命令后, 需要在新行中传递数据。
返回值
此命令将返回以下值:
  • 存储:存储意味着成功
  • NOT_STORED:NOT_STORED表示数据未存储在memcached中。
  • CLIENT_ERROR:表示错误。
Ubuntu中的示例 让我们看一下prepend命令的示例。在这里, 我们尝试添加一些不存在的数据。因此, 它返回NOT_STORED。此后, 我们设置一个密钥并将数据附加到其中。
prepend town 0 900 5delhiNOT_STOREDset town 0 900 9bangaloreSTOREDget townVALUE town 0 14bangaloreENDprepend town 0 900 5delhiSTOREDget townVALUE town 0 14delhibangaloreEND

如何在Memcached中前置数据

文章图片
Windows中的示例
prepend town 0 900 5delhiNOT_STOREDset town 0 900 9bangaloreSTOREDget townVALUE town 0 14bangaloreENDappend town 0 900 5delhiSTOREDget townVALUE town 0 14delhibangaloreEND

如何在Memcached中前置数据

文章图片
使用Java应用程序前置数据 考虑memcached服务器在主机127.0.0.1和端口11211上运行。在这里, 我们将使用prepend()方法在memcached服务器中添加数据。
例:
import net.spy.memcached.MemcachedClient; public class MemcachedJava {public static void main(String[] args) {// Connecting to Memcached server on localhostMemcachedClient mcc = new MemcachedClient(newInetSocketAddress("127.0.0.1", 11211)); System.out.println("Connection to server successful"); System.out.println("set status:"+mcc.set("town", 900, "bangalore").isDone()); // Get value from cacheSystem.out.println("Get from Cache:"+mcc.get("town")); // now append some data into existing keySystem.out.println("Prepend to cache:"+mcc.prepend("town", "delhi").isDone()); // get the updated keySystem.out.println("Get from Cache:"+mcc.get("town")); }}

【如何在Memcached中前置数据】输出
Connection to server successfullyset status:trueGet from Cache:bangalorePrepend to cache:trueGet from Cache:delhibangalore

    推荐阅读