1 引子 Java中没有指针,不能直接对内存地址的变量进行控制,但Java提供了一个特殊的类Unsafe工具类来间接实现。Unsafe主要提供一些用于执行低级别、不安全操作的方法,如直接访问系统内存资源、自主管理内存资源等,这些方法在提升Java运行效率、增强Java语言底层资源操作能力方面起到了很 ...
分类:
编程语言 时间:
2020-01-22 01:16:17
阅读次数:
145
以下文章来源于花椒技术 ,作者花椒服务端 前言 内存泄漏(Memory Leak)是指程序中己动态分配的堆内存由于某种原因程序未释放或无法释放,造成系统内存的浪费,导致程序运行速度减慢甚至系统崩溃等严重后果。 Java是由C++发展来的,抛弃了C++中一些繁琐容易出错的东西,程序员忘记或者错误的内存 ...
分类:
其他好文 时间:
2020-01-21 18:28:41
阅读次数:
103
一次weblogic调优的经过 项目组反应数据库有问题, 检查发现sga还用的默认参数,缓冲区命中率很低。根据系统内存调整后,好像系统正常了。数据库调整就算是结束了 一天后,我再登这个数据库的时候,发现一个提示说线程已经超过限制,不允许再登录。然后我去修改了process到250,增加并发连接数。然 ...
分类:
Web程序 时间:
2020-01-16 23:47:38
阅读次数:
145
linux free 命令 free 命令显示系统内存的使用情况,包括物理内存、交换内存(swap)和内核缓冲区内存。 如果加上 h 选项,输出的结果会友好很多: 有时我们需要持续的观察内存的状况,此时可以使用 s 选项并指定间隔的秒数,每隔 3 秒输出一次内存的使用情况,直到你按下 ctrl + ...
分类:
系统相关 时间:
2020-01-11 18:26:05
阅读次数:
93
一、网络通信 软件系统都是通过网络进行数据传输的,如果网络带宽不够支撑起一定数量的用户,就会导致系统性能难以提升! 这也就是为什么做性能测试的时候,需要保证测试环境的独立。防止测试的时候,有其他的操作占用系统性能。 比如大量数据处理一类的批处理业务操作,会持续占用系统内存,cpu,影响性能测试结果。 ...
分类:
其他好文 时间:
2020-01-09 21:00:07
阅读次数:
111
实际工作中,经常会遇到多线程并发时的类似抢购的功能,本篇描述一个简单的redis分布式锁实现的多线程抢票功能。 直接上代码。首先按照慣例,給出一個错误的示范: 我们可以看看,当20个线程一起来抢10张票的时候,会发生什么事。 package com.tiger.utils; public class ...
分类:
编程语言 时间:
2020-01-06 23:04:29
阅读次数:
117
应用中有一个活动A,用户在活动A的基础上启动了活动B,活动A就进入了停止状态,这时由于系统内存不足,将活动A回收掉,然后用户按back键返回到活动A会出现什么情况? A还是会正常显示只不过并不会执行Restart()方法而是执行活动A的onCreate()方法,活动A在这种情况下会被重新创建一次。 ...
分类:
移动开发 时间:
2020-01-01 21:01:45
阅读次数:
115
操作系统内存管理内存管理包括内存管理和虚拟内存管理。内存管理包括程序装入等概念、交换技术、连续分配管理方式和非连续分配管理方式(分页、分段、段页式)。虚拟内存管理包括虚拟内存概念、请求分页管理方式、页面置换算法、页面分配策略、工作集。我们先来了解一下什么是内存:内存是计算机系统的一个重要组成部分,只有在内存中的程序才能被CPU所执行,而且CPU运行时所需要的数据和程序运行空间都是从内存中获取,所以
分类:
其他好文 时间:
2019-12-29 23:44:53
阅读次数:
134
记得之前在国内现金贷贷超放量时,后台java进程莫名奇妙就没了, 查看 /var/log/message 出现如下日志,标明,Linux 系统自身把 Java 进程杀掉了 当 Linux 系统内存不足时,系统会把当前系统占用系统内存过高的进程当做流氓进程,然后系统发出信号将这个流氓进程杀掉,最后导致 ...
分类:
编程语言 时间:
2019-12-28 17:48:18
阅读次数:
147
JVM部分数据整理 一、运行时数据区域 Java内存区域主要分为线程私有区域【程序计数器、虚拟机栈、本地方法区】、线程共享区域【Java堆、方法区】、直接内存(不受JVM GC管理) 1、线程私有部分 1.1、程序计数器 程序计数器(Program Counter Register)一块较小的内存空 ...
分类:
其他好文 时间:
2019-12-21 22:46:38
阅读次数:
81