我开始使用Heroku网站上的JAX-RS教程 - >
http://arcane-chamber-8582.herokuapp.com/
主要方法如下:
package com.example;
import org.eclipse.jetty.server.Server;
import org.eclipse.jetty.webapp.WebAppContext;
/**
*
* This class launches the web application in an embedded Jetty container.
* This is the entry point to your application. The Java command that is used for
* launching should fire this main method.
*
*/
public class Main {
/**
* @param args
*/
public static void main(String[] args) throws Exception{
String webappDirLocation = "src/main/webapp/";
// The port that we should run on can be set into an environment variable
// Look for that variable and default to 8080 if it isn't there.
String webPort = System.getenv("PORT");
if (webPort == null || webPort.isEmpty()) {
webPort = "8080";
}
Server server = new Server(Integer.valueOf(webPort));
WebAppContext root = new WebAppContext();
root.setContextPath("/");
root.setDescriptor(webappDirLocation + "/WEB-INF/web.xml");
root.setResourceBase(webappDirLocation);
// Parent loader priority is a class loader setting that Jetty accepts.
// By default Jetty will behave like most web containers in that it will
// allow your application to replace non-server libraries that are part of the
// container. Setting parent loader priority to true changes this behavior.
// Read more here: http://wiki.eclipse.org/Jetty/Reference/Jetty_Classloading
root.setParentLoaderPriority(true);
server.setHandler(root);
server.start();
server.join();
}
}
我想知道有人可以向我解释服务器和root用户的情况吗?如果我为此进程分配一个dyno,它是否会自动在线程池中创建多个请求线程来处理RESTful请求?如果是,那么共享/不共享哪些部分?
谢谢!
答案 0 :(得分:2)
Jetty正在使用该场景中的默认值(Jetty的默认值,而不是Heroku的默认值)。您可以这样更改: