后端

使用redis实现分布式锁

几种redis分布式锁实现 一、简单的分布式锁实现 利用下面的命令,实现一个带自动删除的分布式锁 set key value px 毫秒 nx 编写两个lua脚本文件 加锁操作--lock.lua -- 利用set key value px milliseconds nx 命令实现分布式锁 redis.call('set',KEYS[1],ARGV[1],'px',ARGV[2],'nx')

Spring Cloud Gateway负载均衡

一、Spring Cloud Gateway 我们都知道Spring Cloud Gateway是一个基于Spring Boot、Spring WebFlux、Project Reactor构建的高性能网关,旨在提供简单、高效的API路由。Spring Cloud Gateway基于Netty运行,因此在传统Servlet容器中或者打成war包是不能正常运行的。 二、Spring Cloud Ga

leetcode-数组中重复的数据

给你一个长度为 n 的整数数组 nums ,其中 nums 的所有整数都在范围 [1, n] 内,且每个整数出现 一次 或 两次 。请你找出所有出现 两次 的整数,并以数组形式返回。 你必须设计并实现一个时间复杂度为 O(n) 且仅使用常量额外空间的算法解决此问题。 示例 1: 输入:nums = [4,3,2,7,8,2,3,1] 输出:[2,3] 示例 2: 输入:nums = [1,1,2]

JVM调优参数

JVM调优参数可以分为以下几类: 1.堆内存调优参数: -Xms:初始堆大小 -Xmx:最大堆大小 -Xmn:新生代大小 -XX:NewRatio:新生代和老年代的比例 -XX:SurvivorRatio:Eden区和Survivor区的比例 2.GC调优参数: -XX:+UseSerialGC:使用串行垃圾回收器 -XX:+UseParallelGC:使用并行垃圾回收器 -XX:+UseConc

Spring Cloud Gateway API接口安全设计(加密 、签名)

本文属于转载,原文链接为: 1 防止数据抓包窃取 1.1 风险简述 简述:当用户登录时,恶意攻击者可以用抓包工具可以拿到用户提交的表单信息,可以获取用户的账号密码,进而可以恶意访问网站。 image.png 1.2 RSA 非对称加密 1.2.1 RSA简介 RSA加密算法是一种非对称加

JVM 执行引擎的作用及工作过程

下面就要讲代码到底是怎么执行的。在讲源码之前,我们看看从流程角度到底是怎么运行的。 image.png image.png 执行引擎的概述 执行引擎是 Java 虚拟机核心的组成部分之一。 “虚拟机”是一个相对于“物理机”的概念,这两种机器都有代码执行能力,其区别是物理机的执行引擎是直接建立在处理器、缓存、指令集和操作系统层面上的,而虚拟机的执行引擎则是由软件自行实现的,

Java线程<第五篇>:线程池

utils包提供开了 ExecutorService 线程池的实现,主要目的是为了重复利用线程,提高系统效率。 Thread是一个重量级的资源,创建、启动以及销毁都是比较耗费系统资源的,因此使用线程池来管理线程是一个非常重要的编程习惯。 1、Thread new Thread(new Runnable() { @Override public void

centos nginx申请免费https证书

前言 各大厂有免费证书申请渠道,但是需要配置DNS,某些情况下无法掌控域名的DNS解析,Let's Encrypt可以很好的解决这个问题,只要你有网站的管理权就能搞定,不过证书的有效期是三个月,需要搞一个定时任务隔一段时间申请一次。 操作步骤 1.安装certbot ##安装前置依赖 yum install -y epel-release yum install python2-certbot-n

一台服务器最大并发 tcp 连接数多少?65535?

首先,问题中描述的65535个连接指的是客户端连接数的限制。 在tcp应用中,server事先在某个固定端口监听,client主动发起连接,经过三次握手后建立tcp连接。那么对单机,其最大并发tcp连接数是多少呢? 如何标识一个TCP连接 在确定最大连接数之前,先来看看系统如何标识一个tcp连接。系统用一个4四元组来唯一标识一个TCP连接:{localip, localport,remoteip,

为什么 Spring 和 IDEA 都不推荐使用 @Autowired 注解?

大家在使用IDEA开发的时候有没有注意到过一个提示,在字段上使用Spring的依赖注入注解@Autowired后会出现如下警告 Field injection is not recommended (字段注入是不被推荐的) 但是使用@Resource却不会出现此提示 网上文章大部分都是介绍两者的区别,没有提到为什么,今天来总结一下 01 Spring常见的DI方式 构造器注入:利用构造方法的