QA,什么是RPC机制?
RPC机制(Remote procedure Call Protocol)---远程过程调用协议, 在TCP/UDP协议的基础之上
在OSI网络通信模型中,RPC跨越了传输层和应用层,使得开发包括网络分布式多线程处理的应用程序更容易。
QB,gae为什么要采用rpc机制?
RPC采用C/S模式,请求程序就是一个客户机,服务提供程序就是一个服务器,
首先,调用进程发送一个有进程参数的调用信息到服务进程,等待应答,
在服务端,进程保持睡眠状态直到调用信息的到达为止,当一个调用信息到达。
服务端获得进程参数,计算结果,发送答复信息,获得进程结果,然后调用执行继续进行。Q
QC,实现GAE RPC一般需要哪几个步骤?
A,实现接口函数,
在GWT里的的一个RPC接口需要三个部分完成。
服务端:serviceImpl
客户端: service
serviceAsync
Service Impl:
继承RemoteServicerServlet,负责接收客户端发过来的信息,然后通过相同的函数挂钩处理,其函数名英国和service里的一样。
Service:
继承RemoteService,负责向客户端提供各个服务接口,其提供的接口函数名应该和serviceImpl相互对应。
ServieAsync
一个服务器回调出来的对应接口,相当于在serviceImpl和service之间建立通信的桥梁。
B,传递类的可序列化,
通过GWT-RPC传递参数需要参数可序列化,基本变量都是可序列化的,但声明的类
必须可序列化,否则不能传递。
public class Myclass implements Serializable{
private String name;
private int age;
Myclass(){}
}
c, 注册服务,
<sevlet-name>greetServlet</servlet-name>
<servlet-class>com.myproject.helloworld.server.GreetingServiceImpl</servlet-calass>
<servlet-mapping>
<servlet-name>greetServlet</servlet-name>
<url-pattern>/helloworld/greet</url-pattern>
</servlet-mapping>
D,使用服务。
使用服务包含三个步骤。
1,通过GWT.CREATE()创建我们的服务对象。
2,通过服务提供的接口。
3,通过回调,获得服务器返回的参数。