package com.sinata.push;
|
|
import com.sinata.push.util.applets.NettyServer0;
|
import com.sinata.push.util.echo.NettyServer;
|
import org.apache.http.client.HttpClient;
|
import org.apache.http.config.SocketConfig;
|
import org.apache.http.impl.client.HttpClientBuilder;
|
import org.apache.http.impl.conn.PoolingHttpClientConnectionManager;
|
import org.springframework.boot.SpringApplication;
|
import org.springframework.boot.autoconfigure.SpringBootApplication;
|
import org.springframework.cloud.client.discovery.EnableDiscoveryClient;
|
import org.springframework.cloud.client.loadbalancer.LoadBalanced;
|
import org.springframework.context.annotation.Bean;
|
import org.springframework.http.client.HttpComponentsClientHttpRequestFactory;
|
import org.springframework.http.converter.StringHttpMessageConverter;
|
import org.springframework.web.client.RestTemplate;
|
|
import java.nio.charset.StandardCharsets;
|
|
@EnableDiscoveryClient//开启eureka客户端的消费者
|
@SpringBootApplication
|
public class MessagePushApplication {
|
|
public static void main(String[] args) {
|
SpringApplication.run(MessagePushApplication.class, args);
|
NettyServer nettyServer = new NettyServer();
|
nettyServer.bind();
|
NettyServer0 nettyServer0 = new NettyServer0();
|
nettyServer0.bind();
|
}
|
|
|
@Bean //SpringCloud内部服务质检使用服务名调用
|
@LoadBalanced
|
public RestTemplate internalRestTemplate() {
|
PoolingHttpClientConnectionManager connectionManager = new PoolingHttpClientConnectionManager();
|
connectionManager.setDefaultSocketConfig(SocketConfig.custom().setTcpNoDelay(true).build());
|
connectionManager.setDefaultMaxPerRoute(100);//最大并发连接
|
connectionManager.setMaxTotal(200); // 总的最大连接数
|
HttpClient httpClient = HttpClientBuilder.create().setConnectionManager(connectionManager).build();
|
HttpComponentsClientHttpRequestFactory httpRequestFactory = new HttpComponentsClientHttpRequestFactory(httpClient);
|
httpRequestFactory.setConnectionRequestTimeout(30 * 1000);
|
httpRequestFactory.setConnectTimeout(30 * 1000);
|
httpRequestFactory.setReadTimeout(30 * 1000);
|
RestTemplate restTemplate = new RestTemplate(httpRequestFactory);
|
restTemplate.getMessageConverters().set(1, new StringHttpMessageConverter(StandardCharsets.UTF_8));
|
return restTemplate;
|
}
|
}
|