- 博客(12)
- 资源 (23)
- 收藏
- 关注
转载 锁分类
Java中的锁分类在读很多并发文章中,会提及各种各样锁如公平锁,乐观锁等等,这篇文章介绍各种锁的分类。介绍的内容如下:公平锁/非公平锁可重入锁独享锁/共享锁互斥锁/读写锁乐观锁/悲观锁分段锁偏向锁/轻量级锁/重量级锁自旋锁上面是很多锁的名词,这些分类并不是全是指锁的状态,有的指锁的特性,有的指锁的设计,下面总结的内容是对每个锁的名词进行一定的解释。公平锁/非公平锁公平锁是指多个线程按照申请锁的顺序...
2018-05-31 09:02:54 226
原创 jmeter
压测设置线程数:并发数量,能跑多少量。具体说是一次存在多少用户同时访问Rame-Up Period(in seconds):表示JMeter每隔多少秒发动并发。理解成准备时长:设置虚拟用户数需要多长时间全部启动。如果线程数是20,准备时长为10,那么需要10秒钟启动20个数量,也就是每秒钟启动2个线程。循环次数:这个设置不会改变并发数,可以延长并发时间。总请求数=线程数*循环次数调度器:设置压测的...
2018-05-30 21:11:50 577
转载 使用 Redis 统计在线用户人数
使用 Redis 统计在线用户人数在构建应用的时候, 我们经常需要对用户的一举一动进行记录, 而其中一个比较重要的操作, 就是对在线的用户进行记录。本文将介绍四种使用 Redis 对在线用户进行记录的方案, 这些方案虽然都可以对在线用户的数量进行统计, 但每个方案都有一些自己特有的操作, 并且各个方案的性能特征以及资源消耗也各有不同。方案 1 :使用有序集合每当一个用户上线时, 我们就执行 ZAD...
2018-05-16 20:54:05 20205 3
转载 JVM参数调优
java -Xmx3550m -Xms3550m -Xmn2g -Xss128k -XX:+UseParallelGC -XX:MaxGCPauseMillis=100/虚拟机调优JVM的堆的内存, 是通过下面面两个参数控制的 -Xms 最小堆的大小, 也就是当你的虚拟机启动后, 就会分配这么大的堆内存给你 -Xmx 是最大堆的大小 当最小堆占满后,会尝试进行GC,如果GC之后还不能得到足够的内存...
2018-05-16 11:13:39 172
原创 redis重启
redis_restart.sh#!/bin/bashp=`ps -ef|grep src/redis-server|grep 6379|wc -l`if [[ $p -lt 1 ]]; thencd /data/redis-3.0.7/sh start.shfistart.sh#!/bin/bashnohup src/redis-server conf/redis.conf &if [ ...
2018-05-12 14:52:53 3166
转载 Linux OOM 自动杀死进程(转)
Linux OOM 自动杀死进程问题描述:今天上班后,登录一台内网测试服务器,发现部分进程失踪 (Nginx/PHP-FPM/MySQL/Crond)。解决方法:1、首先启动这些进程,保证正常提供服务。2、查看服务器日志信息,排除故障。shell > less /var/log/messages-20160905Sep 3 05:31:10 localdomain kernel: Ou...
2018-05-11 10:25:57 6429
转载 Nginx与Lua编写脚本的基本构建块是指令
Nginx与Lua编写脚本的基本构建块是指令。 指令用于指定何时运行用户Lua代码以及如何使用结果。 下面是显示指令执行顺序的图。 当一个请求发起一个“子请求”的时候,按照 Nginx 的术语,习惯把前者称为后者的“父请求”(parent request)。location /main { echo_location /foo; # echo_location发送子请求到指定的...
2018-05-08 20:33:33 5529
原创 js-文件上传预览
<body> <input type='file' id='image_file' onchange="showImage()" /> <img id='pre_show'/> <div class="demo-parent"> <div class='demo-child'></div&a
2018-05-08 09:09:38 1028
转载 java并发之SynchronousQueue实现原理(转)
前言SynchronousQueue是一个比较特别的队列,由于在线程池方面有所应用,为了更好的理解线程池的实现原理,笔者花了些时间学习了一下该队列源码(JDK1.8),此队列源码中充斥着大量的CAS语句,理解起来是有些难度的,为了方便日后回顾,本篇文章会以简洁的图形化方式展示该队列底层的实现原理。SynchronousQueue简单使用经典的生产者-消费者模式,操作流程是这样的:有多个生产者,可以...
2018-05-07 20:51:41 277
转载 CountDownLatch(转)
前言前面介绍了ReentrantLock,又叫排他锁,本篇主要通过CountDownLatch的学习来了解java并发包中是如何实现共享锁的。CountDownLatch使用解说CountDownLatch是java5中新增的一个并发工具类,其使用非常简单,下面通过伪代码简单看一下使用方式: 这是一个使用CountDownLatch非常简单的例子,创建的时候,需要指定一个初始状态值,本例为2,主线...
2018-05-07 20:50:54 142
转载 可重入锁(转)
前言相信学过java的人都知道 synchronized 这个关键词,也知道它用于控制多线程对并发资源的安全访问,兴许,你还用过Lock相关的功能,但你可能从来没有想过java中的锁底层的机制是怎么实现的。如果真是这样,而且你有兴趣了解,今天我将带领你轻松的学习下java中非常重要,也非常基础的可重入锁-ReentrantLock的实现机制。听故事把知识掌握了在一个村子里面,有一口井水,水质非常的...
2018-05-07 20:49:56 163
转载 读写锁(转)
前言前面介绍了java中排它锁,共享锁的底层实现机制,本篇再进一步,学习非常有用的读写锁。鉴于读写锁比其他的锁要复杂,不想堆一大波的文字,本篇会试图图解式说明,把读写锁的机制用另外一种方式阐述,鉴于本人水平有限,如果哪里有误,请不吝赐教。公平读写锁ReentrantReadWriteLock的锁策略有两种,分为公平策略和非公平策略,两者有些小区别,为便于理解,本小节将以示例的形式来说明多线程下,使...
2018-05-07 20:48:31 713
(46页完整版)JVM体系结构与GC调优.zip
2019-05-15
fiddler+willow
2018-03-14
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人