java内存模型如上图,每个java线程有自己的pcregisters和javastacks进程内的所有的java线程共享methodarea和heapmethodarea也就是java的持久代再来看下heap的结构具体的规则一堆一堆的,不再赘述如何定位内存泄露呢?先看一些常用的命令:1.jstat-gcpid可以显示gc的信息,查看gc的..
分类:
编程语言 时间:
2015-12-29 19:39:17
阅读次数:
273
信号号称所谓软中断,事实上,还是没有真正的硬件中断那样能随时改变cpu的执行流硬件中断之所以能一发生就得到处理是因为处理器在每个指令周期的结尾都会去检查中断,这种粒度是很细的但是信号的实现只是在进程的task_struct里面有一个成员用于标识当前收到了哪些信号?而这个成员的检查显然只能在特定时间点...
分类:
系统相关 时间:
2015-12-29 19:32:20
阅读次数:
647
#include #include /* Bit-mask values for 'flags' argument of becomeDaemon() */#define BD_NO_CHDIR 01 /* Don't chdir("/") */#define BD_NO_...
分类:
系统相关 时间:
2015-12-29 19:17:55
阅读次数:
265
在这里对linux下、sun(oracle) JDK的线程资源占用问题的查找步骤做一个小结;linux环境下,当发现java进程占用CPU资源很高,且又要想更进一步查出哪一个java线程占用了CPU资源时,按照以下步骤进行查找:第一步:登陆到web服务所在的liunx服务器,利用top命令获取jav...
分类:
编程语言 时间:
2015-12-29 19:16:55
阅读次数:
224
a) spawn: spawn命令是Expect的初始命令,它用于启动一个进程,之后所有expect操作都在这个进程中进行,如果没有spawn语句,整个expect就无法再进行下去了,使用方法就像下面这样: spawnssh root@192.168.0.1在spawn命令后面,直接加上要启动的进程...
分类:
其他好文 时间:
2015-12-29 19:08:50
阅读次数:
267
前言因为服务器关闭至今,我们的开发项目也遭遇停滞一个星期。与网站开发负责人员协商之后,今天继续开放服务器。我们的项目也能够继续下去。比规定的开发时间(截止为2015/12/29)推迟,因此我们今天又开始会议讨论。事项安排1.开发时间推迟至12月31日。也就是明后天集中开发进程。2.因服务器讨论区接口...
分类:
其他好文 时间:
2015-12-29 19:01:00
阅读次数:
150
http://lovesoo.org/linux-sar-command-detailed.htmlsar(SystemActivityReporter系统活动情况报告)是目前Linux上最为全面的系统性能分析工具之一,可以从多方面对系统的活动进行报告,包括:文件的读写情况、系统调用的使用情况、磁盘I/O、CPU效率、内存使用状况、进程活动..
分类:
其他好文 时间:
2015-12-29 16:22:00
阅读次数:
259
两年前在项目中使用nodejs+socket.io+redis实现的聊天和推送服务器,基本上几百行代码就实现了整个功能,在项目中单服务器单进程可以跑到支持5000人左右同时在线。主要思路用户上线后,根据用户的userid和socket,保存到一个全局的map中发送消息时,根据对方的userid找到对...
分类:
Web程序 时间:
2015-12-29 15:56:16
阅读次数:
307
死锁的条件互斥条件(Mutual exclusion):资源不能被共享,只能由一个进程使用。请求与保持条件(Hold and wait):已经得到资源的进程可以再次申请新的资源。非剥夺条件(No pre-emption):已经分配的资源不能从相应的进程中被强制地剥夺。循环等待条件(Circular ...
分类:
其他好文 时间:
2015-12-29 14:29:08
阅读次数:
146
在Node中引入模块,需要经历如下3个步骤:(1)路径分析(2)文件定位(3)编译执行Node中模块分为两类:一是Node提供的模块——核心模块。这部分在Node源代码的编译过程中,编译进了二进制文件。在Node进程启动时,部分核心模块就直接加载进内存中,所以这部分核心模块引入时,省略掉文件定位和编...
分类:
Web程序 时间:
2015-12-29 14:16:41
阅读次数:
152