当前位置: 首页 > 编程笔记 >

Springboot启用多个监听端口代码实例

田鸿彩
2023-03-14
本文向大家介绍Springboot启用多个监听端口代码实例,包括了Springboot启用多个监听端口代码实例的使用技巧和注意事项,需要的朋友参考一下

前段时间服务有这么个需求,web端的接口需要有web安全相关的整改,但是对内的接口并不需要。所以服务需要多个端口启动,在此记录下

代码如下

@Configuration
public class EmbeddedTomcatConfiguration {
 
  @Value("${server.additionalPorts}")
  private String additionalPorts;
 
  @Bean
  public EmbeddedServletContainerFactory servletContainer() {
    TomcatEmbeddedServletContainerFactory tomcat = new TomcatEmbeddedServletContainerFactory();
    Connector[] additionalConnectors = this.additionalConnector();
    if (additionalConnectors != null && additionalConnectors.length > 0) {
      tomcat.addAdditionalTomcatConnectors(additionalConnectors);
    }
    return tomcat;
  }
 
  private Connector[] additionalConnector() {
    if (StringUtils.isBlank(this.additionalPorts)) {
      return null;
    }
    String[] ports = this.additionalPorts.split(",");
    List<Connector> result = new ArrayList<>();
    for (String port : ports) {
      Connector connector = new Connector("org.apache.coyote.http11.Http11NioProtocol");
      connector.setScheme("http");
      connector.setPort(Integer.valueOf(port));
      result.add(connector);
    }
    return result.toArray(new Connector[] {});
  }
}

application.yml

server:
port: ${appPort:8800}
additionalPorts: 8881,8882

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持小牛知识库。

 类似资料:
  • Server可以监听多个端口,每个端口都可以设置不同的协议处理方式,例如80端口处理http协议,9507端口处理TCP协议。SSL/TLS传输加密也可以只对特定的端口启用。 !> 例如主服务器是WebSocket或Http协议,新监听的TCP端口(listen的返回值,即Swoole\Server\Port,以下简称port)默认会继承主Server的协议设置。必须单独调用port对象的set方

  • 例如,我可以启动两个程序侦听端口371。第二个没有任何问题地启动并接收传入连接,而第一个没有。一旦最后开始的进程终止,第一个接收它们。 假设这是Windows(XP)行为,它怎么可能是安全的行为呢?这意味着人们可以“过载”任何已经侦听的端口,而不是获得通常的“地址已经在使用”错误消息,并简单地绕过防火墙,规则只是说“允许端口371上的任何传入TCP连接”。

  • 本文向大家介绍spring boot 监听容器启动代码实例,包括了spring boot 监听容器启动代码实例的使用技巧和注意事项,需要的朋友参考一下 在使用Spring框架开发时, 有时我们需要在spring容器初始化完成后做一些操作, 那么我们可以通过自定义ApplicationListener 来实现. 自定义监听器 源码分析 springboot 启动应用, 执行 SpringApplic

  • 问题内容: 是否可以在一个应用程序中绑定和侦听Linux中的多个端口? 问题答案: 对于您要收听的每个端口,您: 使用创建一个单独的套接字。 将其绑定到适当的端口。 调用套接字,以便它设置一个侦听队列。 那时,您的程序正在侦听多个套接字。为了接受这些套接字上的连接,您需要知道客户端要连接到哪个套接字。就是这样。碰巧的是,我有代码可以完全做到这一点,所以这是一个完整的经过测试的示例,它等待多个套接字

  • 本文向大家介绍laravel 事件/监听器实例代码,包括了laravel 事件/监听器实例代码的使用技巧和注意事项,需要的朋友参考一下 导语 上一篇文章实现了记录用户访问,设计上是有缺陷的,代码紧耦合在中间件。如果后续修改需求,不仅记录 ip、城市,还需要记录数据到新的数据表,或者需要进行其它统计,那么不停的增加、修改代码是不合理的。这个时候可以使用 Laravel 的事件/监听器进行处理。代码可

  • 我有一个Tomcat 9.0.60服务器,运行在Linux上的OpenJDK 1.8.0上,其中netstat-ltpn | grep java显示它侦听的端口不止配置的端口: (我从该列表中删除了所有配置的端口。) 因此,我认为有几个应用程序也打开了“他们自己的”套接字,他们听。我想找出每个端口的哪个Java线程正在侦听,这样我就可以进一步找出应用程序,也许它仍然是必需的,或者只是开发人员忘记的