文档章节

Gaea学习--Gaea是什么?

le284
 le284
发布于 2013/03/09 16:41
字数 478
阅读 536
收藏 3

    那么就从我学习Gaea开始记录。

    那什么是Gaea呢?按照官方的解释,Gaea是服务通讯框架(Service Communication Framework)支持跨平台具有高并发、高性能、高可靠性,并提供异步、多协议、事件驱动的中间层服务框架。然而对于我一个初学者来说,完全不能够理解这句话背后的意义,那么我就按照我的理解,对Gaea做一个简单的介绍:

    首先,Gaea是一个框架,是一个服务容器;简单的讲,它就像web服务容器tomcat一样,我们将自己写好的服务放入这个容器,tomcat是通过浏览器,80端口去调用服务,而Gaea是通过自己的客户端,自定义的端口,去调用服务。目前Gaea的服务只能是java的,而客户端支持java 、linux c++和C#三种语言,以这种方式实现了跨平台的优势。

    Gaea支持远程过程调用,远程方法调用。也就是我们在本地,可以调用远程服务的方法,然后可将返回值传递到客户端;Gaea可以具体控制到哪个方法允许被远程调用。

    Gaea是用来通信的,Gaea通信部分是使用了开源的netty,在netty的基础上做了一些封装。而Gaea在传递之前对数据进行序列化,Gaea支持多种序列号格式:JSON(1),JAVABinary(2),XML(3),GAEABinary(4);

    Gaea服务端跟客户端是一种多对多的关系,也就是一台服务可提供给多台客户端使用,一个客户端可以选择某一个方法在任意一个服务器执行。因此可以很容易的通过添加机器解决负载问题。

    Gaea的使用过程:

    

    Gaea的官方开源地址:https://github.com/58code/Gaea/

© 著作权归作者所有

共有 人打赏支持
le284
粉丝 14
博文 19
码字总数 13774
作品 0
威海
程序员
Gaea学习--Gaea的高级使用

关于Gaea的基本使用问题,Gaea开源官方文档已经说明,详细请看: Gaea.pdf 在这里具体说一下,Gaea的一点高级使用方法 关于Gaea的高级使用方法,都需要十分的了解Gaea的源码,下边就说一点我所...

le284
2013/03/26
0
0
高性能服务通信框架Gaea的详细实现--server启动流程

Gaea启动过程 serviceContract对象中详细记录了所有提供服务的接口信息。现在基本都是使用注解方式,关于使用方式,祥看Gaea的使用文档。 关于具体根据配置和注解生成ContractInfo的详细过程...

le284
2014/05/07
0
0
高性能服务通信框架Gaea的详细实现--server请求处理流程

Gaea请求处理流程 Gaea支持tcp/http/telnet三种通信信息,其中主要的通信部分是由netty通信框架完成,netty提供了一种高性能的非阻塞通信工具。 Gaea各服务启动 启动服务的配置,这里就tcp的配...

le284
2014/05/08
0
0
服务通信框架Gaea---client的请求处理模型

Gaea的请求处理模型图 Gaea是一个服务通信框架 图片来源于“58同城的跨平台高性能,高可用的中间层服务架构设计分享” 根据上图,我们详细的来说明一下Gaea的客户端,请求处理的过程。 Gaea1....

le284
2013/11/16
0
2
服务通信框架Gaea--client负载均衡和服务重连策略

作为一个分布式的服务框架,服务器的负载均衡,将是一个很重要的性能指标,将能够最大限度的利用多个服务器资源,为服务的高性能,高可扩展性提供最直接的有力支持。在这篇文章中,我们就来看...

le284
2013/11/23
0
0

没有更多内容

加载失败,请刷新页面

加载更多

阿里开源的 java 诊断工具—— Arthas

Arthas 是 阿里巴巴最近开源出来的一个针对 java 的工具,主要是针对 java 的问题进行诊断! 一、概述 这个工具可以协助你做下面这些事情: 这个类是从哪个 jar 包加载而来的? 为什么会报各...

xiaomin0322
7分钟前
0
0
去除shell read 读取的最后一个字符

# 读取管道数据cat | while read line; do echo $line # 此时 line包含 \n or \r\ndone# 去除 read 读取的特殊字符line=${line%?} # 去除最后一个字符...

tigerBin
8分钟前
0
0
Qt之listView设置编辑状态

QListView默认是可以编辑的,可以用setEditTrigers设置QListView的条目是否可以编辑,以及如何进入编辑状态。比如: ui->listView->setEditTriggers(QAbstractItemView::DoubleClicked | QAb...

OceanStar
8分钟前
0
0
Linux批量替换

sed -i "s/http://cache.co188.com///image.co188.com/g" grep http:\/\/image.co188.com -rl . *.html sed -i "s/http://cache.co188.com///cache.co188.com/g" grep http:\/\/cache.co188.......

cpaku
18分钟前
0
0
设置plsql永久注册码

填写注册码: Product Code:4t46t6vydkvsxekkvf3fjnpzy5wbuhphqz serial Number:601769 password:xs374ca...

小橙子的曼曼
23分钟前
0
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部