论实现序列化的在云端的必要性

简介:

对于java实现序列化的重要性,在单机程序内是不太容易被重视的,在本地调试中,tomacat自动为为序列化的程序实现了序列化,而且bean(用来实现缓存的java程序)太小,不会出现什么问题。

但是一旦部署到云端,麻烦就出现了,就会发现session为什么存不进值呢?不久前我在新浪云云端部署session就出现了未能取不到值的问题。

论实现序列化的在云端的必要性

针对新浪云服务器,session的信息使用的是分布式Memcache存储。

而Memcache存储呢?

不少想构建大负载的网站都采取Memcache来分担数据库的压力。

Memcache首先在服务器端的内存中开辟一个空间,然后建立一个hash表。

memcache 以守护程序的形式运行在服务器端(一个或者多个服务器),随时接受来自客户端的连接操作,然后进行存取数据,Memcache是一款nosql内存数据库。采用的是键值存储,每个客户端存入的对象都有一个唯一的key。但是对象是没办法持久化的,跟memcache很相似的redis是可以实现持久化到硬盘的。然后把客户端需要缓存的数据以key-value的形式保存在服务器的内存中的,value值存入key值hash转化后的对应的某个服务器上。取值的时候通过同样的转化后对响应的服务器上付出请求即可。

而在序列化在在其中起到什么作用呢?

在memcache缓存到内存的时候,是需要使用到序列化存储的,因此如果你的bean包中的代码都没实现序列化接口,在缓存的时候是不会被缓存到服务器内存中的,这样就造成了session并没有存值的问题发生。

所以在部署到新浪云的程序存储到session中的对象必须实现序列化接口才可以进行session存储的。


本文作者:佚名

来源:51CTO

相关文章
|
2月前
|
存储 安全 算法
【C/C++ 数据发送结构设计】C++中的高效数据发送:多态、类型擦除与更多解决方案
【C/C++ 数据发送结构设计】C++中的高效数据发送:多态、类型擦除与更多解决方案
80 0
|
4月前
|
数据采集 运维 监控
数据能力体系NO2:数据验证
数据能力体系NO2:数据验证
数据能力体系NO2:数据验证
|
4月前
|
Web App开发 安全 前端开发
构建安全可靠的系统:第二十一章到附录 A
构建安全可靠的系统:第二十一章到附录 A
48 0
|
存储 搜索推荐 数据管理
如何解决企业内部的数据孤岛问题?
J2L3x 可以提供强大的个性化定制能力和与业务的深度整合能力、高度扩展性,融合其他第三方。
如何解决企业内部的数据孤岛问题?
|
Dragonfly Kubernetes Cloud Native
如何保证软件交付过程的标准化|学习笔记
快速学习如何保证软件交付过程的标准化
560 0
如何保证软件交付过程的标准化|学习笔记
|
Dragonfly 运维 Cloud Native
如何保证软件交付过程的标准化 | 学习笔记
快速学习如何保证软件交付过程的标准化
226 0
如何保证软件交付过程的标准化 | 学习笔记
|
XML 存储 SQL
序列化框架的选型和比对
序列化框架的选型和比对
159 0
|
存储 SQL 缓存
一个高性能、小而美的序列化工具!
Kryo是一个高性能的序列化/反序列化工具,由于其变长存储特性并使用了字节码生成机制,拥有较高的运行速度和较小的体积,在某些场景中成为了除Json、Protobuf之外的选择。
239 0
一个高性能、小而美的序列化工具!
|
云安全 安全 数据处理
云计算暴露数据处理缺乏和安全实践标准缺陷
云计算用户正在将他们对云计算的关注重点从云优势向云劣势转移。毕竟云的优势是显而易见的,比如快速扩展和配置的能力,但是本文探讨的重点是云计算缺失的部分,毕竟这些不足正在呈增长态势。 云计算缺乏数据处理和安全实践的标准,甚至没有关于厂商是否有责任告知用户他们数据存储地点的规定。
763 0
|
安全 测试技术
构建可靠系统的原则与实践
随着阿里技术的发展,我们的技术系统越来越成为社会的基础设施,对于这些系统的可靠性要求也就越来越高。但是实际上很多的基础的产品和系统确仍然会出现一些稳定性问题,那么如何才能构建可靠的系统呢?是不是制定非常严格而细致的规则就可以做出可靠的系统呢? # 航空业的教训 在回答这个问题之前,我们先来看看对于系统可靠性要求非常高的航空业是怎么做的?美国的FAA是在航空安全领域事实上的权威,为了保证航空
13132 0