• 2024-12-22Golang逃逸现象
    1、什么是内联函数?什么是逃逸现象?什么是内联函数?内联函数是一种在编译时,直接将要调用的代码嵌入到调用处的优化技术,其主要目的是减少函数调用时的开销,例如对于普通函数其执行过程如下:将参数压入栈中根据地址跳转至对应位置执行执行完毕后返回调用点而使用内联函数则将函
  • 2024-12-137 逃逸分析
    1逃逸分析的直观认识主要就是分析对象的动态作用域,分析一个对象的动态作用域是否会逃逸出方法范围、或者线程范围。如果一个对象在一个方法内定义,如果被方法外部的引用所指向,那认为它逃逸了。否者,这个对象,没有发生逃逸。2逃逸分析的官方概念一种确定指针动态范围的静
  • 2024-12-08Docker 逃逸突破边界
    免责声明本博客文章仅供教育和研究目的使用。本文中提到的所有信息和技术均基于公开来源和合法获取的知识。本文不鼓励或支持任何非法活动,包括但不限于未经授权访问计算机系统、网络或数据。作者对于读者使用本文中的信息所导致的任何直接或间接后果不承担任何责任。包括但不
  • 2024-12-07添加、删除PPA源
    删除通过PPA添加的源,使用以下步骤:列出所有PPA查看已添加的PPA列表:ls/etc/apt/sources.list.d/删除PPA找到你要删除的PPA文件,并删除它。例如,如果要删除example-ppa:sudorm/etc/apt/sources.list.d/example-ppa.list更新包列表删除后,更新包列表:sudoaptupdat
  • 2024-11-28你最希望css拥有什么样的特性?(目前没有的)
    我最希望CSS拥有一个原生的容器查询(ContainerQueries)特性,虽然现在可以通过一些技巧和JavaScript库实现类似的功能,但原生支持会带来显著的优势:更简洁的代码和更好的性能:无需依赖JavaScript库,减少了代码量和浏览器解析的负担,提高页面加载速度和运行效率。更易于维护和调试:
  • 2024-11-28playwright-命令行工具
    脚本录制在命令行窗口使用如下语法格式进行脚本录制:npxplaywrightcodegen[options][url]options参数:-o,--output:保存生成脚本--target:生成的脚本语言,可以设置javascript,test,python,python-async和csharp,默认为python。-b,--browser:要使用的浏览器,可以选
  • 2024-11-23RabbitMQ 入门(五)SpringAMQP五种消息类型(Work Queue)
    一、WorkQueue(工作消息队列)Workqueues,也被称为(Taskqueues),任务模型。简单来说就是让多个消费者绑定到一个队列,共同消费队列中的消息。当消息处理比较耗时的时候,可能生产消息的速度会远远大于消息的消费速度。长此以往,消息就会堆积越来越多,无法及时处理。此时就可以
  • 2024-11-23mac终端快捷命令
     Ctrl+a:光标回到命令行首。(a:ahead)Ctrl+b:光标向行首移动一个字符。(b:backwards)Ctrl+c:中断终端中正在执行的任务。Ctrl+d:向行尾删除一个字符。Ctrl+d:在空命令行的情况下可以退出终端。Ctrl+e:光标回到命令行尾。(e:end)Ctrl+f:光标向行尾移动一个字符。(f:forwards)Ctrl+h:向行首删
  • 2024-09-15Go几种内存逃逸的情况
    main.gopackagemainimport"fmt"//指针(任何类型的指针)、slice和map作为返回值//当带有指针的返回值被赋给外部变量或者作为参数传递给其他函数时,编译器无法确定该变量何时停止使用//因此,为了确保安全性和正确性,它必须将该数据分配在堆上,并使其逃离当前函数作用域func
  • 2024-09-12云上攻防:云原生篇&Docker容器逃逸
    什么是DockerDocker简而言之就是一个容器技术,类似于VM虚拟机,别人环境封装好打包成一个镜像,使用docker技术就能快速把这个镜像环境还原出来。Docker容器与虚拟机类似,但二者在原理上不同,容器是将操作系统层虚拟化,虚拟机则是虚拟化硬件,因此容器更具有便携性、高效地利用服务器
  • 2024-09-07【第96课】云原生篇&Docker安全&系统内核&版本漏洞&CDK自动利用&容器逃逸
    免责声明本文发布的工具和脚本,仅用作测试和学习研究,禁止用于商业用途,不能保证其合法性,准确性,完整性和有效性,请根据情况自行判断。如果任何单位或个人认为该项目的脚本可能涉嫌侵犯其权利,则应及时通知并提供身份证明,所有权证明,我们将在收到认证文件后删除相关内容。文中所涉
  • 2024-09-01【JVM】执行引擎、JIT、逃逸分析(一)
    执行引擎、JIT、逃逸分析JVM中的执行引擎是什么?在Java虚拟机(JVM)中,执行引擎(ExecutionEngine)是负责执行Java字节码的核心组件。执行引擎的作用是将Java字节码转换成计算机可以执行的机器码,并实际执行这些机器码。以下是JVM执行引擎的主要职责和组成部分:主要职责:1.
  • 2024-08-03【PHP系列】PHP反序列化--字符逃逸
    概念了解字符逃逸前需要的补充知识点一知识点二字符逃逸—字符增加字符逃逸—字符减少概念在学PHP字符串逃逸之前先了解一下原理是什么,字符串逃逸的原理其实就是让字符串变成可以执行的序列化代码。在序列化和反序列化这个中间过程中,序列化字符增加或减少后,再去反序列化
  • 2024-07-20Go中的内存泄漏与逃逸
    Go中的内存泄漏与逃逸原创孟斯特孟斯特 2024年07月20日09:03美国听全文在Go编程语言中,内存管理是一个关键的概念,尤其是在处理高性能或长时间运行的应用程序时。理解内存泄漏和内存逃逸对编写高效、健壮的Go代码非常重要。 1.内存泄漏内存泄漏(MemoryLeak)是指程序中
  • 2024-07-04golang 内存逃逸 你应该知道的知识
    逃逸分析目录1.为什么要了解内存逃逸2.什么是逃逸分析3.内存逃逸的影响-性能和稳定性4.内存逃逸的原因5.内存逃逸的检测6.如何避免内存逃逸7.内存逃逸代码示例原文链接:一文弄懂Golang中的内存逃逸1.为什么要了解内存逃逸-内存逃逸是Go语言编程中一个特别需要注意的问
  • 2024-07-04PHP反序列化字符逃逸详解
    这段时间遇到几个关于反序列化的字符逃逸的程序,今天来分享一下经验。<?phpfunctionfilter($str){returnstr_replace('bb','ccc',$str);}classA{public$name='aaaa';public$pass='123456';}$AA=newA();$res=filter(serialize($AA));$c=unserial
  • 2024-06-21聊聊缺陷收敛率
    一位关注我公众号很久的同学后台留言,问了我一些关于质量度量的问题,和他沟通过程中交换了彼此的一些观点,也让我对质量度量有了一些新的理解。这篇文章聊聊在质量度量中,几个很有意思的指标,以及常见的误区。 什么是缺陷收敛率说到缺陷收敛率,就不得不先聊聊缺陷逃逸率。我在前面
  • 2024-06-03Go高阶16,面试官问我go逃逸场景有哪些,我???
    「逃逸分析」就是程序运行时内存的分配位置(栈或堆),是由编辑器来确定的,而非开发者。什么是栈栈只允许从线性表的同一端放入和取出数据,按照后进先出(LIFO,LastInFirstOut)的顺序,如下图:什么是堆对于堆在内存中的分配,我们可以类比成一个房间,分配内存时,需要找一块足够装下家具
  • 2024-05-29模板注入&沙箱逃逸
    模板注入SSTI服务端模板注入一、什么是SSTI首先web服务的实现中使用了模板引擎,并且将参数传递的值当作模板一部分进行渲染(渲染这个词可能有点抽象,可以简单理解为将参数作为代码的一部分解释并执行了),这就是SSTI,服务端模板执行。模板注入原理服务端可以使用哪些模板引擎?由于
  • 2024-05-26HotSpot逃逸分析
    JIT即时编译即时编译(Just-In-TimeCompilation,JIT)是一种强大的技术,旨在增强基于字节码的语言(如Java、.NET)的运行时性能。它的工作原理是在程序运行过程中动态地将频繁执行的字节码转换成本地机器码,从而大幅提高执行效率。这一过程克服了纯解释执行的性能瓶颈,同时保留了跨
  • 2024-05-25Go语言中局部变量的逃逸分析(从汇编的角度)
    Go语言中局部变量的逃逸分析(从汇编的角度)正常情况下,局部变量是存储在栈中的,如果将局部变量的地址当作函数值返回,这势必会导致悬挂指针的错误,因为函数返回后,函数的栈帧就会被回收,返回的局部变量地址自然就访问不到了。但是Go语言会进行逃逸分析,编译器如果遇到这种情况,就会将
  • 2024-05-17聊聊缺陷逃逸率
    辅导星球一位同学模拟面试,过程中聊到了缺陷逃逸率相关的话题。我在以前写的关于质量保障相关的文章中提到过缺陷逃逸率,这是一项比较重要的衡量软件产品交付质量的指标。所谓缺陷逃逸率,指的是软件产品线上发布后,发生在线上环境的缺陷数量与该版本迭代生命周期内总缺陷数量的比率,