排序
如何使用Go语言优雅地实现接口限流
在众多Web开发中,为了保障服务器的稳定性,我们常常需要对接口的调用频率做出限制。 而Go语言的强大并发性能使其在此领域有出色的表现。 本文编程社将向你详细展示如何利用Go语言实现接口限流...
并发编程的根源–有序性问题
有序性 我们知道,程序在执行前,需经过编译器或解释器,翻译成机器语言,一条程序代码,会被翻译为多条机器指令。编译器或解释器为了优化程序的执行性能,有时会改变这些指令的执行顺序。而编...
面试题-JS模块化以及模块打包器
如今的前端已经是一套非常复杂的体系了,甚至延伸出来了所谓“微前端”的概念。而支撑这些复杂逻辑的前提就是模块化的概念。 但是,我在和很多的同学沟通(做技术摸底)的过程中,却发现:很多...
java是解释型语言还是编译型语言
首先在Java经过编译之后生成字节码文件,接下来进入JVM中,就有两个步骤编译和解释。 如下图: 编译性: Java源代码首先被编译成字节码,JIT 会把编译过的机器码保存起来,以备下次使用。 解释性...
jdk动态代理和cglib的区别
JDK代理只能对实现接口的类生成代理;CGLib是针对类实现代理,对指定的类生成一个子类,并覆盖其中的方法,这种通过继承类的实现方式,不能代理final修饰的类。 JDK代理使用的是反射机制实现aop...
Java中的序列化和反序列化是什么?
序列化其实就是将对象转化成可传输的字节序列格式,以便于存储和传输。 因为对象在 JVM 中可以认为是“立体”的,会有各种引用,比如在内存地址Ox1234 引用了某某对象,那此时这个对象要传输到...
JVM内存模型
根据 JVM8 规范,JVM 运行时内存共分为虚拟机栈、堆、元空间、程序计数器、本地方法栈五个部分。 还有一部分内存叫直接内存,属于操作系统的本地内存,也是可以直接操作的。 JVM的内存结构主要...













