你怎么看Hessian?

你怎么看Hessian? 这样的技术, 我认为soap, xml-rpm, Hessian.. 等等都是基于 http协议.建立在web server之上, 本身web server就有很多限制,还有性能瓶颈等等...

 

web server 本身就是socket + threading 但实现远超出 单纯socket server, 还要实现http1.1的协议.

 

例如web server 需要处理压缩, 访问控制列表, http 头, cookie.... 等等...等等

 

程序运行在web 容器 中,受到很多限制如:

资源限制, CPU, 内存等等,受控

连接数限制

timeout 限制, 运行时间限制

等等

 

如果单纯使用写一个基于tcp/udp 的 Socket server 其性能远比 上面技术好很多. 或者采用基于tcp的MQ技术.

时间: 2024-08-30 21:37:23

你怎么看Hessian?的相关文章

java常见的序列化方式_java

在远程调用中,需要把参数和返回值通过网络传输,这个使用就要用到序列化将对象转变成字节流,从一端到另一端之后再反序列化回来变成对象. 既然前面有一篇提到了hessian,这里就简单讲讲Java序列化和hessian序列化的区别. 首先,hessian序列化比Java序列化高效很多,而且生成的字节流也要短很多.但相对来说没有Java序列化可靠,而且也不如Java序列化支持的全面.而之所以会出现这样的区别,则要从它们的实现方式来看. 先说Java序列化,具体工作原理就不说了,Java序列化会把要序列化

hessian 报 'j' is unknow code故障分析

今天突然发生了一件怪事,在内测环境下所有的客户端通过hessian请求服务端时,部分的请求直接返回  'j' is unknow code ,服务端并不报错.发生这个问题,真把我给急坏了,内测环境是我们上线生产的最后一道关,如果这个故障不解决,所有的应用都要停止上线,以免给生产系统造成影响.一方面更新邮件不停的在累积,另一方面,出于对生产系统负责的态度,不敢对生产环境进行更新. 某大神一直认为是项目中的包的版本的问题,不断的让我换依赖包的版本,当时我也没有太好的排查方案,只好先尝试换换看,换来换

几种java通信(rmi,http,hessian,webservice)协议性能比较

一.综述 本文比较了RMI,Hessian,Burlap,Httpinvoker,web service等5种通讯协议的在不同的数据结构和不同数据量时的传输性能.RMI是java语言本身提供的通讯协议,稳定高效,是EJB的基础.但它只能用于JAVA程序之间的通讯.Hessian和Burlap是caucho公司提供的开源协议,基于HTTP传输,服务端不用开防火墙端口.协议的规范公开,可以用于任意语言.Httpinvoker是SpringFramework提供的远程通讯协议,只能用于JAVA程序间的

RMI、Hessian、Burlap、Httpinvoker、WebService的比较

一.综述本文比较了RMI.Hessian.Burlap.Httpinvoker.WebService5这种通讯协议的在不同的数据结构和不同数据量时的传输性能. RMI是java语言本身提供的远程通讯协议,稳定高效,是EJB的基础.但它只能用于JAVA程序之间的通讯. Hessian和Burlap是caucho公司提供的开源协议,基于HTTP传输,服务端不用开防火墙端口.协议的规范公开,可以用于任意语言. Httpinvoker是SpringFramework提供的远程通讯协议,只能用于JAVA程

hessian序列化源码分析

背景     最近在处理一个hessian的反序列化问题时,因为服务端使用了pojo bean中多了一个enum属性,导致客户端在反序列化时疯狂的在打印日志.警告说找不到对应的enum class,因为项目中本身是设置了log4j的根输出为一个文件.      比较奇怪的是,hessian对应的日志输出全都打印到了控制台(虽然我们对console进行了重定向输出),导致对应的文件达到几百MB.无奈之下,仔细分析了下hessian的源码. 介绍   先看一张hessian主要的几个概念图 说明:

Hessian官方用户文档

原文链接点这里 Hessian 是一个用于连接网络服务的二进制协议,他的com.caucho.hessian.client 和 com.caucho.hessian.server包不依赖于任何其他Resin的类(Resin是caucho公司的一个很快的Web服务器,Hessian是他的一部分),因此他能够应用于更小的客户端,比如Java Applet.其实也是因为不依赖所以也可以在任何容器比如Tomcat,Jetty中很方便的使用. 因为他是一个短小的协议,它能够应用于手机端,来连接Resin这

hessian调用数据查询很慢

问题描述 用hessian进行接口调用,数据查询一条都特别慢,是怎么回事呢? 解决方案 首先你得确认单纯数据库查询的速度.其次再确认网络间的连接速度.最后确认获取数据到本地时,是否有其他的逻辑影响.解决方案二:Hessian是基于Http+Java序列化的机制来实现远程调用的,速度上并不慢,慢的原因应该在数据查询上(即数据查询占用了绝大部分时间). 题主可以写一个本地查询,然后和Hessian调用做下比较就知道了,很多大公司的内部服务调用都是Hessian的方式.解决方案三:慢原因真的很多,你可

让Win7桌面变身新闻台 想看什么订什么

你平时如何获取自己关心的信息?刷微博?没有什么更新;看资讯?感兴趣的频道也没有新文章.可是这些地方真正有更新时,自己却又因为在忙别的而错过了最新的内容.换种方法吧,利用Win7桌面小工具,将你的Win7桌面变成一个新闻阅读器,使用RSS订阅源让你感兴趣的新信息主动来找你. 什么是RSS? RSS是站点间共享内容的一种简易方式.对于用户来说,RSS是什么也许并不重要,重要的是,它能给我们带来最需要的内容. 下面我们就一起来看如何在Win7的"源标题"小工具中阅读订阅源的更新. 在桌面空白

从反射看委托与事件 委托真的是一个类

关于委托与事件,网上介绍得非常之多,在此不再赘述,本人最近需要捣鼓一些委托,因而对委托进行一 定的寻根究底,故用反射把委托的成员揪出来,且看如下代码: delegate void DelegateDemo(); static event DelegateDemo delHandle; static void Main() { delHandle += new DelegateDemo(MyDelegate_delHandle); MemberInfo[] mis = delHandle.GetT