今天在内网搭建memcachedb时,服务端搭建好后,用Java的客户端进行访问测试,在数据量设置为100,1000,10000时,都能正常访问,当我把数据量设置为10000条时,出现了下面的错误:
SLF4J: Failed to load class "org.slf4j.impl.StaticLoggerBinder".
SLF4J: Defaulting to no-operation (NOP) logger implementation
SLF4J: See http://www.slf4j.org/codes.html#StaticLoggerBinder for further details.
=================================== 开始存储 =================================================
Exception in thread "main" java.lang.IllegalArgumentException: Cannot cache data larger than 1MB (you tried to cache a 1965471 byte object)
at net.rubyeye.xmemcached.transcoders.CachedData.<init>(CachedData.java:95)
at net.rubyeye.xmemcached.transcoders.SerializingTranscoder.encode(SerializingTranscoder.java:229)
at net.rubyeye.xmemcached.command.text.TextStoreCommand.encodeValue(TextStoreCommand.java:172)
at net.rubyeye.xmemcached.command.text.TextStoreCommand.encode(TextStoreCommand.java:127)
at net.rubyeye.xmemcached.impl.MemcachedTCPSession.wrapMessage(MemcachedTCPSession.java:150)
at com.google.code.yanf4j.core.impl.AbstractSession.write(AbstractSession.java:405)
at net.rubyeye.xmemcached.impl.MemcachedConnector.send(MemcachedConnector.java:325)
at net.rubyeye.xmemcached.XMemcachedClient.sendCommand(XMemcachedClient.java:223)
at net.rubyeye.xmemcached.XMemcachedClient.sendStoreCommand(XMemcachedClient.java:2181)
at net.rubyeye.xmemcached.XMemcachedClient.set(XMemcachedClient.java:1128)
at net.rubyeye.xmemcached.XMemcachedClient.set(XMemcachedClient.java:1186)
at net.rubyeye.xmemcached.XMemcachedClient.set(XMemcachedClient.java:1173)
at com.client.MemcachedDBClient.testCacheList(MemcachedDBClient.java:41)
at com.client.MemcachedDBClient.main(MemcachedDBClient.java:24)
目前正在找资料解决这个问题,记录下来作为备案,以作继续处理的笔记。
此问题已经解决,主要原因是因为我在测试时,把一个List当作一个对象存储进去,当然,这个List对象保存的是10W条经过MD5后的Hash数据,超大了。
分享到:
相关推荐
### Memcachedb:全面解析与应用实践 #### 一、Memcachedb简介 **Memcachedb** 是一种分布式键值存储系统,专为持久化设计。它不是传统的缓存解决方案,而是一个完整的、用于持久化的 memcached 变体。与 ...
- 当遇到错误或性能问题时,手册会提供诊断和解决步骤,包括日志分析、资源监控等。 - 对于内存泄漏或数据不一致等问题,手册会指导如何定位并修复。 综上所述,`memcachedb` 手册是一份全面的参考资料,不仅涵盖...
《深入理解Memcachedb:基于键值存储的高性能数据库系统》 Memcachedb是一个轻量级、高性能的键值存储数据库系统,它基于著名的缓存服务软件Memcached,并加入了持久化存储的功能。这个名为"memcachedb-1.2.0.tar....
在Ubuntu 9.04中安装Memcachedb是一个相对直接的过程,但如果希望在系统上顺利运行Memcachedb,用户需要了解一些前置知识,包括对Memcachedb的基本认识、相关依赖库的安装,以及在Ubuntu系统上进行安装操作的具体...
在提供的`memcachedb-master`压缩包中,包含了源代码和其他相关资源,可以用于编译、安装和测试Memcachedb。通过深入研究源代码,开发者可以更好地理解其内部工作原理,并可能进行定制化的修改和扩展。 总结来说,...
Memcached VS Redis:2者究竟有哪些区别,什么场景下应用那种类型的缓存服务器。
然而,当用户写入数据到主库后,若直接从缓存读取,可能会遇到数据不一致的问题。为解决这个问题,可以采用先缓存技术,通过程序确保缓存与数据库主库数据的一致性,但这也需要额外的开发和运维工作。 Memcached...
自述文件 快速将JSON Blob加载到或。 给定一个文件,请使用JSON文档中的值作为键,并将其值设置为JSON Blob。 注意:不支持嵌套键。 安装 ...或通过安装。 ... -addr="127.0.0.1:11211": hostport of memcache ...
- **纵切数据库**:将部分表如user_relation、notice等剥离出来,放置于独立的数据库中,并通过MemcacheDB消息队列来实现异步写入。 - **异地机房尝试**:为了解决跨机房数据访问的问题,尝试在不同地理位置设置机房...
2. **高效的通信策略**:服务调用时,客户端直接从MemcacheDB获取目标服务的访问机制,与服务应用端进行直接通信,避免了通过服务中心的路由,降低了通信延迟。 3. **满足需求的服务模型**:DSF的服务模型允许根据...
4. **内存分析工具**:例如Valgrind、Memcachedb等,专门用于检测内存泄漏、越界访问等问题。 5. **安全领域**:在网络安全中,内存读取有时用于取证分析,获取被病毒感染或恶意篡改的内存信息,以便进行逆向工程和...
* 一致性 Hash 算法是一种从稀疏值到紧密值范围的映射方法,可以用来解决节点频繁变化时的任务分配问题 * 一致性 Hash 将整个 Hash 值空间组织成一个虚拟圆环,通过 Hash 函数可以确定每台机器在环上的位置 * 一致性...
服务应用端在调用服务时,直接从MemcacheDB获取目标服务的访问机制,然后与目标服务应用端通信。这种设计减少了服务中心的压力,使其主要负责服务管理和监控。 服务查找模块负责与MemcacheDB的通信,根据服务模型...
Memc ac hed客户端(mc ) 缓存式的Web应用程序架构 性能测试 dbc ac hed Memcached 和 dbcached 在功能上一样吗? 列存系列 Hadoop之Hbase 耶鲁大学之HadoopDB GreenPlum FaceBook之Cassandra Cassandra特点 Keyspace ...
通过MemcacheDB等技术的集成,DSF能够在不断变化的环境中快速适应和响应,实现高效的服务注册、查找和通信,从而提高了整体系统的性能和稳定性。随着版本的升级,DSF将继续优化其架构,以满足更复杂的应用场景和更高...
Dynamo通过使用一种称为“最终一致性”的策略来处理分布式环境下的数据一致性问题,这使得它在面对大规模读写请求时表现出色。 ##### 1.1.3 memcachedb memcachedb是一款基于memcached的Key-Value存储系统,它继承...
NoSQL数据库技术的兴起,主要是为了解决传统关系型数据库在面对大规模数据和高并发访问时所暴露出的问题。随着互联网业务的飞速发展,传统的数据库架构难以满足日益增长的数据存储和访问需求。例如,在新浪这样大...