
七七八八
七七八八
咕噜咕噜da
一名爱折腾的码农。
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
nginx的限流和网关gatway限流
1.场景描述例如网站首页采取二级缓存操作,减少对数据库和redis的压力,但是遇到恶意请求还是不能有效的缓解压力,限流就能起到保护措施的作用了2.nginx限流nginx提供了两种限流方案:控制请求速率控制并发连接数3.控制速率nginx常用控制速率的方式之一就是采用漏桶算法3.1漏桶算法实现控制速率限流概述: 漏桶算法思想就是水(请求)滴入漏桶漏桶里,漏桶以一定速率出水(响应速率),当水滴入的速率过大时会溢出漏桶(访问速率大于响应速率),然后就拒绝请求,漏桶算法能强转限制数据的传输速原创 2020-07-22 13:43:15 · 1754 阅读 · 0 评论 -
JavaWeb-实现限制单个账号多处登录
在网上有很多解决限制登录的方法,包括SpringSecurity也有解决的方案,今天记录一下使用JavaWeb的实现知识点思路如下:演示具体实现:1.维护一个map集合public class LoginUserMap { private static Map<String, String> loginUserMap = new ConcurrentHashMap<String, String>(); /** * set方法 *原创 2020-11-10 16:48:10 · 2054 阅读 · 0 评论 -
Jwt令牌总结
1.Jwt令牌介绍2.基于私钥生成jwt令牌3.基于公钥解析jwt令牌4.应用场景1.Jwt令牌介绍Jwt令牌主要由三部分组成头部,负载,签名,每个部分用点隔开头部主要包含令牌类型和使用的加密算法载荷主要存放信息,可以解码还原签名:签名=头部+载荷+签名头部和载荷都采用Base64Url编码和签名进行(用**.**进行)拼接生成签名2.基于私钥生成Jwt令牌准备私钥,公钥放入resource文件下,基于私钥携带数据生成jwt令牌public class Create原创 2020-07-28 20:21:24 · 648 阅读 · 0 评论 -
lua的语法和简单使用
1.lua的简介Lua是一种轻量型的脚本语言,用标准的C语言编写,目的就是以灵活的方式嵌入应用程序中,从而为应用程序提供灵活的拓展和定制功能。具有的特性:支持面向过程编程和函数式编程语言内置匹配,闭包-常应用于游戏开发,web应用脚本基本语法1.注释--单行注释--[[ 多行注释 --]] 2.关键字基本和java一样,值得一提的是nil关键字 表示无效值nil --无效值3.变量--全局变量: a=1 --局部变量: local a=14.数据原创 2020-07-21 16:30:04 · 302 阅读 · 0 评论 -
浅谈枚举认识及原理(Enum)
**前言:**最近学习到Java枚举,在网上搜索了一圈发现都有很多种理解,在这里借鉴他人对枚举的介绍再总结自己的 一些浅见1.枚举介绍首先,枚举是 jdk1.5引入的新特性,枚举是一种规范,它规范了参数的形式.说白了就是,枚举可以定义的一些常量和实例,规范参数的形式,好比定义一个常量类(规范参数的取值范围)举个例子:定义一个季节枚举,里面定义春夏秋冬的常量,当使用季节类型作为参数时,若使用该季节枚举作为参数,就限制了用户的参数输入,只能是春夏秋冬。更通俗的理解就是:你想要的类型和常量,我都给你限定原创 2020-06-16 21:10:33 · 1419 阅读 · 0 评论 -
冒泡排序&快速排序(代码)
public class SortTest {// public static void main(String[] args) {// //冒泡排序 从小到大// int[] arr = {8, 5, 6, 7, 2, 9, 0, 1, 3, 9, 8, 5, 6, 7, 2, 9, 0, 1, 3, 9, 5};// int[] ints = SortTest.sortMethod(arr);// for (int anInt :原创 2020-08-06 22:57:16 · 1137 阅读 · 0 评论 -
hashCode(),equal(),==的理解
1.hashCode()和equal()区别:1.equal()相等的两个对象他们的hashCode()肯定相等,也就是用equal()对比是绝对可靠的。2.hashCode()相等的两个对象他们的equal()不一定相等,也就是hashCode()不是绝对可靠的。3.效率比较因为重写的equal()里一般比较的比较全面比较复杂,这样效率就比较低,而利用hashCode()进行对比,则只要生成一个hash值进行比较就可以了,效率很高,那么hashCode()既然效率这么高为什么还要equal()原创 2020-06-15 15:03:26 · 291 阅读 · 0 评论 -
设计模式-工厂模式
工厂模式的三种形式1.简单工厂2.工厂方法3.抽象工厂1.简单工厂(静态工厂)什么是工厂?集中生产,对外提供生产产品的地方简单工厂只需要向工厂传递进来一个类型,就返回一个对象总结:1.把创建跟使用分离 对应客户端来说只是想要使用对象调用方法,不关心对象如何创建2.便于统一管理方便维护3.解耦 创建对象有变动,不会影响对象使用的逻辑4.获取对象的方式可以更加形象、具体通过getxxx实例能直观的展示我们要获取的原创 2020-06-26 22:12:51 · 135 阅读 · 0 评论 -
设计模式-单例模式(5种创建方式)
1.概述:所谓单例,就是整个程序有且仅有一个实例.该类负责创建自己的对象,同时确保只有一个对象被创建,常用于工具类的实现和创建对象需要消耗资源特点:构造器私有持有自己的属性对外提供获取实例的静态方法2.创建单例的5种方式饿汉模式懒汉模式静态内部类枚举1.饿汉模式:当程序启动或类被加载的时候,实例就就被创建。public class SingleBean{ //构造私有 private SingleBean(){} private static SingleBean sin原创 2020-06-23 13:01:48 · 455 阅读 · 0 评论