import java.net.InetSocketAddress; import java.util.ResourceBundle; import java.util.concurrent.ArrayBlockingQueue; import java.util.concurrent.ThreadPoolExecutor; import java.util.concurrent.TimeUnit; import org.apache.commons.lang.StringUtils; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.springframework.stereotype.Component; import com.sun.net.httpserver.HttpServer; @Component public class Server { @SuppressWarnings({ "unchecked", "rawtypes" }) public void startServer() { HttpServer hs = null; try { ResourceBundle bundle = ResourceBundle.getBundle("config"); String env = System.getProperty("env", "develop"); int port = Integer.parseInt(StringUtils.defaultIfBlank(bundle.getString(env+".port"),"8900")); GateHandler.checkToken = Boolean.parseBoolean(StringUtils.defaultIfBlank(bundle.getString(env+".token.check"),"8900")); hs = HttpServer.create(new InetSocketAddress(port), 0); hs.createContext("/gate", new MyHandler()); int threadMinCount = 50;//The minimum number of threads int threadMaxCount = 200;// maximum number of threads int checkPeriod = 5;//Check interval (minutes) ThreadPoolExecutor threadPool = new ThreadPoolExecutor(threadMinCount, threadMaxCount, checkPeriod, TimeUnit.SECONDS, new ArrayBlockingQueue(100), new ThreadPoolExecutor.CallerRunsPolicy()); hs.setExecutor(threadPool); hs.start(); } catch (Exception e) { e.printStackTrace (); } } }
java HttpServer build http server
Guess you like
Origin http://43.154.161.224:23101/article/api/json?id=325391315&siteId=291194637
Recommended
Ranking