restlet 在实现web service 时相对简单,一个jar程序就可以发布服务。在我的毕设中的web service 程序就是使用 restlet 来发布的。 restlet默认的支持的线程最大响应数貌似只有20。发了一天的时间才找到如何设置默认的请求响应数。
在使用 50个线程并发运行时,抛出错误的类在 BaseHelper,源码中有描述:
/**
* Base connector helper. Here is the list of parameters that are supported.
* They should be set in the connector's context before it is started:
*
*
* Parameter name
* Value type
* Default value
* Description
*
*
* controllerDaemon
* boolean
* true
* Indicates if the controller thread should be a daemon (not blocking JVM
* exit).
*
*
* controllerSleepTimeMs
* int
* 100
* Time for the controller thread to sleep between each control.
*
*
* inboundBufferSize
* int
* {@link IoUtils#BUFFER_SIZE}
* The size of the buffer when reading messages.
*
*
* minThreads
* int
* 1
* Minimum threads waiting to service requests.
*
*
* maxThreads
* int
* 10
* Maximum threads that will service requests.
*
*
* maxConnectionsPerHost
* int
* -1
* Maximum number of concurrent connections per host (IP address).
*
*
* maxTotalConnections
* int
* -1
* Maximum number of concurrent connections in total.
*
*
* outboundBufferSize
* int
* {@link IoUtils#BUFFER_SIZE}
* The size of the buffer when writing messages.
*
*
* persistingConnections
* boolean
* true
* Indicates if connections should be kept alive after a call.
*
*
* pipeliningConnections
* boolean
* false
* Indicates if pipelining connections are supported.
*
*
* threadMaxIdleTimeMs
* int
* 60000
* Time for an idle thread to wait for an operation before being collected.
*
*
* tracing
* boolean
* false
* Indicates if all messages should be printed on the standard console.
*
*
*
* @author Jerome Louvel
*/
这是设置component 响应性能的根本,就是要在创建connector时设置context
在restlet中 Server 对象继承connector 对象并与component关联。因此设置 连接数的代码如下:
try {
Component component = new Component();
Context context = new Context();
context.getParameters().set("maxThreads", "100");
context.getParameters().set("maxConnectionsPerHost", "100");
context.getParameters().set("maxTotalConnections", "100");
Server server = new Server(context,Protocol.HTTP, 8182);
component.getServers().add(server);
ApplicationController application = new ApplicationController();
component.getDefaultHost().attachDefault(application);
component.start();
} catch (Exception e) {
e.printStackTrace();
}
分享到:
相关推荐
本系列的开发实例将带你深入理解并掌握Restlet框架的使用,从基础的JAX-RS实现到高级的Component和Application结构,再到与Spring框架的整合。 首先,我们来看看"RESTLET开发实例(一)基于JAX-RS的REST服务.doc"。...
1. **设置环境**:首先确保安装了Java Development Kit(JDK),因为Restlet是用Java编写的。然后,下载并添加Restlet JAR文件到你的项目类路径中。 2. **创建资源类**:在Java中创建一个新的类,该类继承自Restlet...
首先,你需要将压缩包中的所有jar文件添加到你的项目类路径中,这可以通过IDE的构建路径设置或MANIFEST.MF文件的Class-Path属性完成。接着,根据你的需求,可以参考Restlet官方文档或者示例代码,学习如何创建和配置...
在这个"restlet2.1学习笔记项目代码"中,你可以找到如何设置Restlet组件、创建资源、定义路由、使用过滤器以及与其他服务通信的实际示例。通过阅读和运行这些代码,你可以深入理解Restlet的工作原理,并将其应用到...
4. **过滤器机制**:RESTlet的过滤器可以插入到请求和响应的处理流程中,用于执行预处理或后处理任务,如身份验证、日志记录、缓存控制等。 5. **安全性**:RESTlet提供了安全相关的工具和策略,如HTTPS支持、基本...
- **restletContext.xml**:这是Restlet的配置文件,定义了一个Spring组件`SpringComponent`,并设置了默认目标`defaultTarget`为`application`。`BaseApplication`类是自定义的Restlet应用程序,它使用`component....
4. **设置路由**: 指定Restlet将响应哪些URI路径。 5. **运行应用**: 将Restlet附加到一个网络服务器(如Jetty或Grizzly),启动应用。 6. **测试**: 使用curl命令或Web浏览器测试Restlet服务,查看其是否按预期...
2. **设置认证策略**:在Restlet应用中,你需要将这个认证控制器与特定的路由或整个应用关联起来。这可以通过调用`ServerResource.setChallengeRequest`或`Application.setChallengeRequest`方法并传递适当的挑战...
**Restlet Client插件安装包详解** 在现代的Web应用开发中,API(Application Programming Interface)扮演着至关重要的角色,尤其是RESTful API,它已成为构建分布式系统和微服务架构的标准。为了有效地测试和调试...
Restlet是一个开源框架,专为构建RESTful(Representational State Transfer)Web服务而设计。REST是一种轻量级的架构风格,常用于构建Web应用程序和API,强调简洁、可扩展性和可伸缩性。本示例将带你入门Restlet,...
在实际应用中,开发者可以使用org.restlet库构建服务器端的RESTful资源,定义处理HTTP请求的处理器,以及处理响应的方法。同时,也可以创建客户端来消费其他RESTful服务,实现数据交换。通过org.restlet-2.3.0.jar,...
<param-name>org.restlet.component <param-value>restletComponent <servlet-name>restlet <url-pattern>/* ``` 这里的配置告诉服务器使用Spring提供的`RestletFrameworkServlet`作为处理REST请求的入口...
2. **解压缩并设置环境变量** 解压缩下载的文件到指定位置,假设解压缩后的文件夹路径为`%RESTLET_HOME%`。 #### 三、基于JAX-RS的REST服务实现 **JAX-RS (JSR-311)**是一种Java API,使得Java Restful服务的...
org.restlet.jar
4. **解析和分析响应**:RestletClient会高亮显示响应体,如果返回的是JSON或XML,它会以树形结构展示数据,便于查看和理解。此外,你可以查看响应时间,这对于性能优化很有帮助。 5. **保存和重放请求**:为了方便...
### Restlet in Action:开发Java中的RESTful Web API #### 一、概述 《Restlet in Action》是一本深入探讨如何使用Restlet框架来构建RESTful Web服务的书籍。本书由Jérôme Louvel、Thierry Templier和Thierry ...
### RESTLET框架学习知识点 #### 一、RESTLET框架概览 - **RESTLET框架简介**:RESTLET是一个面向对象的Java开源框架,用于构建RESTful应用和服务。它旨在简化Web应用开发,允许开发者充分利用REST架构的优势。...