Java
高可用三大利器 — 熔断、限流和降级
近年来,各大厂Google、微软、阿里、腾讯等都在提高可用的概念。高可用(High Availability,简称HA)是指系统或服务在遭受故障或异常情况时仍能持续提供稳定和可靠的运行能力。 在武侠世界里,“利器”通常指的是武器中的上乘、出色之物;武器对于武者的重要性不言而喻,拥有一把优秀的武器可以让武者在战斗中更加得心应手,威力更强。 在分布式系统追求高可用的背景下,熔断、限流和降级这三个重要的
Shiro实战教程(整合SpringBoot,全网最强)
本文介绍一个强大的Shiro实战教程,用最简单的代码、最常用的场景让你彻底掌握Shiro的用法,成为Shiro实战高手。本Shiro教程是全网最强的Shiro实战教程。 教程地址:Shiro项目实战专栏介绍 - 自学精灵 为什么这个Shiro教程是全网最强? 其他资料的特点 代码不全,根本运行不起来。 不包含有无权限、认证、鉴权等多种功能的对比与测试。 只控制了认证(authen
Jmeter45 Dubbo Sampler 插件及其教程
转载 一、前言 随着分布式普及,日常工作中多少会接触到dubbo,对于dubbo接口的调用或者压测等等。 调用最简单的方式便是telnet,或者泛化调用的方式。 进入telnet命令行,invoke 对应方法以及传入对应的参数即可。 当然jm也有对应开源插件。 二、原料和配件 地址:https://github.com/thubbo/jmeter-plugins-for-apach
尚硅谷Java 宋红康2023版 - 学习笔记
尚硅谷Java 宋红康2023版 - 学习笔记 观看地址 https://www.bilibili.com/video/BV1PY411e7J6 JDK JRE JVM jdk是开发包,jre是运行包,jvm是java虚拟机(最小核心) java jdk版本 8或11 我这里就用8了。 java jdk 8u211 开发包下载地址 https://www.oracle.com/cn/java
Java多线程环境下可能会出现指令重排的代码示例
什么是指令重排? 我们在执行程序时,为了提高性能,编译器和处理器某些情况下会对指令进行重排序。 as-if-serial语义 不管怎么重排序,不能影响单线程环境下的执行结果,这是as-if-serial语义定义的,编译器和处理器阶段的重排都遵循该规则。 编译器和处理器都遵循的指令重排的原则 a、数据依赖,只对不存在数据依赖的指令进行重排。 b、控制依赖,允许对有控制依赖关系的指令做重排。 Java
java启动jar包修改JVM默认内存问题
JVM默认物理内存 JVM初始分配的内存由-Xms指定,默认是物理内存的1/64;JVM最大分配的内存由-Xmx指定,默认是物理内存的1/4。 默认空余堆内存小于40%时,JVM就会增大堆直到-Xmx的最大限制;空余堆内存大于70%时,JVM会减少堆直到-Xms的最小限制。 因此服务器一般设置-Xms、-Xmx相等以避免在每次GC后调整堆的大小。 设置JVM内存的参数有四个 -XmxJava H
使用EasyExcel异步导出excel实现思路
目的: 实现思路: 代码实现 线程池配置 controller层 service层 数据库文件 模板及内容 注意事项: 读写临时文件为什么不使用ByteArrayOutputStream? EasyExcel优点与传统poi对比 EasyExcel使用模板填充,更加通用性,指哪写哪
for...in 循环和 for...of 循环的区别
JavaScript 中的 for...in 循环和 for...of 循环是两种不同的迭代方式,用于遍历数据结构中的元素。它们具有一些区别: for...in 循环: 用于遍历对象的可枚举属性(包括原型链上的属性)。 迭代的是键(属性名),而非值。 不保证迭代顺序,因为对象的属性顺序在规范中并未定义。 比较适合用于遍历对象的属性。 以下是使用 for...in 循环遍历对象的示例:
探索Java通信面试的奥秘:揭秘IO模型、选择器和网络协议,了解面试中的必备知识点!
了解常见的TCP/UDP TCP(Transmission Control Protocol)是一种面向连接的可靠的传输协议。类似于打电话,它通过建立一个连接和保证数据的可靠传输来提高通信的可靠性。然而,由于要确保数据的可靠性,TCP协议会增加网络负担,效率相对较低。 UDP(User Datagram Protocol)是一种无连接、不可靠的传输协议。类似于广播,UDP协议可以实现一对多的通信,
你不知道的 HTTP Referer
前言 上周突然发现自己的自己站点的图片全都403了,之前还是好好的,图片咋就全都访问不了呢?由于我每次发文章都是先发了掘金,然后再从掘金拷贝到我自己的站点,这样我就不用在自己的站点去上传图片了,非常方便。 啥也没干,图片咋就403了呢?估计又是整了什么开源节流,降本增效吧,说白了就是大家都用他站点的图片导致流量费用蹭蹭蹭的往上涨,人家肯定不愿意了,这下给图片都加上防盗了,非自己的站点全都给你返回
阿里云直播配置及推拉流地址获取
原文地址:https://blog.csdn.net/zhanglei5415/article/details/131551685 一、开通阿里云直播 首先进入阿里云直播产品主页:https://www.aliyun.com/product/live 。 点击下方的“立即开通”。 如果是还未注册的用户请按照页面提示进行完成注册并实名认证。 2、首次进入会提示开通服务,点击“开通服务”,然后选
攻防演练 | 记一次打穿某车企全过程
0x00 前言 本文介绍了笔者在某次攻防演练中,如何从外网渗透到某车企的内网的详细过程(为了保护敏感信息,所有数据都已经脱敏,有些截图也不完整,请见谅)。 这次网络攻防演练分为两个阶段一共十四天,前七天是私有资源阶段,后七天是公共资源池阶段。共有12支队伍参与比赛,我们公司全程只有两名选手参赛。由于公司从不提供一些辅助工具和人力资源,并且我俩近期连续参加了多场比赛,导致每次比赛后我俩都很内耗。 0
SpringBoot (java 启动jar包)开启GZIP数据压缩
I. gizp 压缩配置 1. 配置 SpringBoot 默认是不开启 gzip 压缩的,需要我们手动开启,在配置文件中添加两行 server: compression: enabled: true mime-types: application/json,application/xml,text/html,text/plain,text/css,application/x-
FCKEditor实现word图片自动转存
如何做到 ueditor批量上传word图片? 1、前端引用代码 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xml
阿里云OSS上传文件并返回文件地址
目录 依赖添加 实体类: OSS配置类: OSSUtil工具类: OSS上传接口类: OSS上传接口实现类: OSS上传控制类: 工具类: 依赖添加 在Maven的pom.xml文件中添加OSS的依赖: <!--阿里云OSS--> <dependency> <groupId>
5、开发环境-项目的标准文件层次结构
一、为了创建可供Webot使用的项目,必须遵守一些规则。本节介绍一个简单项目的文件层次结构。 项目的根目录 项目的根目录至少包含一个名为“worlds”的目录,其中包含一个世界文件。但通常还需要其他几个目录: "controllers":此目录包含当前项目的每个世界文件中可用的控制器。世界文件和该目录之间的链接是通过Robot节点的控制器字段完成的。有关此目录的详细信息,请参阅以下小节。 "pro
ElementUI和Ant Design对比
之前先接触了ElementUI,然后后面又接触了Ant Design,在这里做个对比,希望通过对比这两前端ui框架,能够更加深入的了解和使用这些框架。 表格对比 首先,通过一张表格来对比这两框架的异同吧 对比项ElementUIAnt Design logo &nb
使用PHP开发的商城团购功能详细介绍
使用PHP开发的商城团购功能详细介绍 随着电商行业的快速发展,团购已经成为了一种备受欢迎的购物模式。为了适应这一趋势,很多商城开始引入团购功能,以增加用户粘性和提升销售额。本文将介绍如何使用PHP开发一个商城团购功能,并提供相关的代码示例。 一、团购功能的实现原理 团购功能的实现原理主要涉及以下几个方面: 团购商品的展示:商城需要能够展示团购商品的信息,包括商品的图片、名称、团购价格、原价、剩余
java 转化为树工具类
Java 树状结构转化工具类 1:使用场景:菜单结构数(n级别) 2:数据库存储的往往的是一条条的数据,通过id,查询数据库的父类id进行获取子类数据,然后进行组装数据,数据曾经可能很多。 往往的解决思路是通过递归进行查询,递归中可能会写sql查询,效率极低。有需要的可以了解一下递归的时间复杂度和空间复杂度。 3:本工具类的优点在于以空间换时间的思路。通过查询出所需要的数据,将数据进行内存中处理
==与equals区别
不同点 equels == 对象类型不同 equals():是超类Object中的方法 ==是操作符 比较对象不同 1,String、Date、File、包装类都重写了Object类的equals方法。如果类中重写了equals方法,equals比较内容是否相等。2,如果类中没有重写equals方法,equals比较地址值是否相等(是否指向同一个地址值)。 1,如果比较的是基本
Object.defineProperty
ES5提供了Object.defineProperty方法,该方法可以在一个对象上定义一个新属性,或者修改一个对象的现有属性,并返回这个对象。 语法 新增属性栗子 修改属性栗子 深度侦听对象、侦听数组 监控数据栗子 类似 watch