草庐IT

Serialization

全部标签

java - 如何序列化Java中的 map 以存储在Redis中?

这个问题在这里已经有了答案:WhydoeswriteObjectthrowjava.io.NotSerializableExceptionandhowdoIfixit?(4个答案)关闭4年前。我有以下类(class):publicclassDocument{publicStringid;publicStringdate;publicMapkeywords=newHashMap();}publicclassKeyword{publicStringword;publicMapdocs=newHashMap();}我想序列化keywordsHashMap以便将其保存在Redis中。我试过了t

java - 高性能序列化和反序列化以在redis中缓存对象

我们目前正在使用jax-rs编写REST服务,我们在其中缓存数据库实体(javax.persistence.Entity),即数据库中表的对象表示,在redis服务器中。在将对象放入redis之前,我们通过jackson将对象序列化为json当我们需要实体对象时,我们在从Redis中获取后将其反序列化。我想知道是否有一种更快/更高效的方式来进行序列化和反序列化。如果有人建议一种更高效的方式而不将对象转换为人类可读的格式(如json),我可以接受,而且我不想要内部语言互操作性。如果有人需要这方面的更多详细信息,请告诉我。谢谢。 最佳答案

java - 高性能序列化和反序列化以在redis中缓存对象

我们目前正在使用jax-rs编写REST服务,我们在其中缓存数据库实体(javax.persistence.Entity),即数据库中表的对象表示,在redis服务器中。在将对象放入redis之前,我们通过jackson将对象序列化为json当我们需要实体对象时,我们在从Redis中获取后将其反序列化。我想知道是否有一种更快/更高效的方式来进行序列化和反序列化。如果有人建议一种更高效的方式而不将对象转换为人类可读的格式(如json),我可以接受,而且我不想要内部语言互操作性。如果有人需要这方面的更多详细信息,请告诉我。谢谢。 最佳答案

c# - 在存储到 Redis 之前是否使用 protobuf-net 序列化原语

我正在考虑实现Redis以在ASP.Net网络应用程序中缓存数据。我想知道的是,在存储到Redis之前是否值得通过Protobuf-net序列化某些类型(string、bool、int和其他原语),还是无论如何都要序列化?我主要对存储/检索速度感兴趣,所以我意识到对于某些字符串,尽管序列化开销很小,但protobuf将通过减少网络流量来发挥作用。(是的,我知道字符串不是原始值)如果有帮助,我正在使用StackExchange.Redis。 最佳答案 Redis将所有值存储为二进制字符串,尽管IIRC有一些特殊的“字符串”外壳,作为A

c# - 在存储到 Redis 之前是否使用 protobuf-net 序列化原语

我正在考虑实现Redis以在ASP.Net网络应用程序中缓存数据。我想知道的是,在存储到Redis之前是否值得通过Protobuf-net序列化某些类型(string、bool、int和其他原语),还是无论如何都要序列化?我主要对存储/检索速度感兴趣,所以我意识到对于某些字符串,尽管序列化开销很小,但protobuf将通过减少网络流量来发挥作用。(是的,我知道字符串不是原始值)如果有帮助,我正在使用StackExchange.Redis。 最佳答案 Redis将所有值存储为二进制字符串,尽管IIRC有一些特殊的“字符串”外壳,作为A

python - 如何将大量数据传递给 celery

我正在使用celeryworker从我的机器学习模型中获取结果。我正在做的是将大的numpy数组(几兆字节)从客户端发送到celery任务并返回。目前我正在将客户端numpy数组序列化为base64。当我直接从客户端或celeryworker上的Redis存储/获取数据时,系统的性能比/当我让celery完成所有参数传递(numpy的base64)时快得多。我也想使用celery(带有'redis'代理)来传递args/numpy数组,而不是直接在客户端中传递redis。你知道哪里会出问题吗?我如何设置celery的配置以更有效地执行此操作(在client->broker->worke

python - 如何将大量数据传递给 celery

我正在使用celeryworker从我的机器学习模型中获取结果。我正在做的是将大的numpy数组(几兆字节)从客户端发送到celery任务并返回。目前我正在将客户端numpy数组序列化为base64。当我直接从客户端或celeryworker上的Redis存储/获取数据时,系统的性能比/当我让celery完成所有参数传递(numpy的base64)时快得多。我也想使用celery(带有'redis'代理)来传递args/numpy数组,而不是直接在客户端中传递redis。你知道哪里会出问题吗?我如何设置celery的配置以更有效地执行此操作(在client->broker->worke

Spring 数据 RedisTemplate : Serializing the Value and HashValue

我尝试按照本教程进行操作:http://javakart.blogspot.in/2012/12/spring-data-redis-hello-world-example.html我的问题与此有关:WeirdrediskeywithspringdataJedis我能够使用StringRedisSerializer解决键和哈希键。但是我发现使用序列化器来处理值和哈希值是个问题。我尝试添加这个:p:valueSerializer-ref="stringRedisSerializer"p:hashValueSerializer-ref="stringRedisSerializer"但是提示

Spring 数据 RedisTemplate : Serializing the Value and HashValue

我尝试按照本教程进行操作:http://javakart.blogspot.in/2012/12/spring-data-redis-hello-world-example.html我的问题与此有关:WeirdrediskeywithspringdataJedis我能够使用StringRedisSerializer解决键和哈希键。但是我发现使用序列化器来处理值和哈希值是个问题。我尝试添加这个:p:valueSerializer-ref="stringRedisSerializer"p:hashValueSerializer-ref="stringRedisSerializer"但是提示

带有序列化的 Java 8 Lambda 表达式

在我们的Web应用程序项目中,我们使用Redis来管理session。为了支持它,我们正在序列化将存储在session中的任何对象。例如,我们使用DTO来保存用于在屏幕上显示的bean数据。即使DTO在(Composition)中有任何其他对象,我们也必须对其进行序列化,否则我们会得到NotSerializableException。我在创建匿名内部类来实现Comparator时遇到问题,如下所示:Collections.sort(people,newComparator(){publicintcompare(Personp1,Personp2){returnp1.getLastNam