微服务:匹配系统

1.匹配逻辑


2.Websocket
是一种全双工通信方式,不仅客户端可以给服务器端发送请求,服务器端也可以给客户端发送消息。


3.ConcurrentHashMap
在Java中,ConcurrentHashMap 是一个线程安全的哈希表实现,它可以在多线程环境中提供高性能的并发访问。它使用分段锁(segmentation)技术来允许对映射表的多个部分进行并发更新,从而提高了并发性能。
好处是,多个线程可以并发地读取和更新这个映射表,而不需要额外的同步措施。这对于处理WebSocket连接非常有用,因为WebSocket连接通常是并发的,并且需要在多个线程之间共享状态信息。

未来会在WebSocketServer.java中,接收到输入的时候,调用这两个函数
也就是在蓝色的线程里面修改nextStepA和nextStepB的值,而在红色的线程里面,会读取这两个线程的值


在Java中,ReentrantLock 是 java.util.concurrent.locks 包下的一个类,它提供了一个可重入的互斥锁(即同一个线程可以多次获得同一个锁),是 java.util.concurrent 并发包中提供的一种锁机制。
4.SpringSecurity的ip白名单设置
bug缘由:由于springboot和springsecurity版本过高导致的WebSecurityConfigurerAdapter已弃用 而其中包含了hasIpAddress这个方法
询问了一下gpt给出了替代方案access表达式来对ip进行筛选,但是无效
最终找到了一套通过过滤器来对ip进行过滤筛选的方案

import jakarta.servlet.*;

import jakarta.servlet.http.HttpServletRequest;

import lombok.extern.slf4j.Slf4j;

import org.springframework.context.annotation.Configuration;



import java.io.IOException;

import java.util.Set;



@Configuration

@Slf4j

public class IpAddressFilter implements Filter {

private final static Set<String> ipWhiteList = Set.of(

"127.0.0.1",

"0:0:0:0:0:0:0:1"

);



@Override

public void doFilter(ServletRequest request, ServletResponse response, FilterChain chain) throws IOException, ServletException {

HttpServletRequest req = (HttpServletRequest) request;

if (!ipWhiteList.contains(req.getRemoteAddr())) {

return;

}



chain.doFilter(request, response);

}

}

相关推荐

  1. SpringBoot学习笔记-实现服务匹配系统(中)

    2024-03-20 01:38:04       38 阅读
  2. SpringBoot学习笔记-实现服务匹配系统(下)

    2024-03-20 01:38:04       42 阅读
  3. 第六章--- 实现服务匹配系统(下)

    2024-03-20 01:38:04       25 阅读

最近更新

  1. TCP协议是安全的吗?

    2024-03-20 01:38:04       16 阅读
  2. 阿里云服务器执行yum,一直下载docker-ce-stable失败

    2024-03-20 01:38:04       16 阅读
  3. 【Python教程】压缩PDF文件大小

    2024-03-20 01:38:04       15 阅读
  4. 通过文章id递归查询所有评论(xml)

    2024-03-20 01:38:04       18 阅读

热门阅读

  1. Vue ref函数讲解示例

    2024-03-20 01:38:04       20 阅读
  2. openstack调整虚拟机CPU 内存 磁盘 --来自gpt

    2024-03-20 01:38:04       19 阅读
  3. vue回车键进行列表页查询

    2024-03-20 01:38:04       22 阅读
  4. 2024蓝桥杯每日一题(BFS)

    2024-03-20 01:38:04       20 阅读
  5. Streampark 入门到生产实践

    2024-03-20 01:38:04       18 阅读
  6. OpenJudge - 13:大整数的因子

    2024-03-20 01:38:04       19 阅读
  7. Chapter 1 - 3. Introduction to Congestion in Storage Networks

    2024-03-20 01:38:04       19 阅读
  8. 面试算法-45-分发糖果

    2024-03-20 01:38:04       21 阅读
  9. leetcode 139. 单词拆分

    2024-03-20 01:38:04       18 阅读