E-COM-NET
首页
在线工具
Layui镜像站
SUI文档
联系我们
推荐频道
Java
PHP
C++
C
C#
Python
Ruby
go语言
Scala
Servlet
Vue
MySQL
NoSQL
Redis
CSS
Oracle
SQL Server
DB2
HBase
Http
HTML5
Spring
Ajax
Jquery
JavaScript
Json
XML
NodeJs
mybatis
Hibernate
算法
设计模式
shell
数据结构
大数据
JS
消息中间件
正则表达式
Tomcat
SQL
Nginx
Shiro
Maven
Linux
Java高并发
Java高并发
--原子性可见性有序性
Java高并发
--原子性可见性有序性主要是学习慕课网实战视频《Java并发编程入门与高并发面试》的笔记原子性:指一个操作不可中断,一个线程一旦开始,直到执行完成都不会被其他线程干扰。
sunhaiyu
·
2019-04-20 20:21
Java高并发
--消息队列
Java高并发
--消息队列主要是学习慕课网实战视频《Java并发编程入门与高并发面试》的笔记举个例子:在购物商城下单后,希望购买者能收到短信或者邮件通知。
sunhaiyu
·
2019-04-20 16:28
Java高并发
-- 并发扩展
Java高并发
--并发扩展主要是学习慕课网实战视频《Java并发编程入门与高并发面试》的笔记死锁死锁是指两个或两个以上的事务在执行过程中,因争夺锁资源而造成的一种互相等待的现象,若无外力作用两个事务都无法推进
sunhaiyu
·
2019-04-20 16:49
Java高并发
-- 线程池
Java高并发
--线程池主要是学习慕课网实战视频《Java并发编程入门与高并发面试》的笔记在使用线程池后,创建线程变成了从线程池里获得空闲线程,关闭线程变成了将线程归坏给线程池。
sunhaiyu
·
2019-04-20 16:00
Java高并发
-- J.U.C.组件扩展
Java高并发
--J.U.C.组件扩展主要是学习慕课网实战视频《Java并发编程入门与高并发面试》的笔记FutureTaskFuture模式,核心思想是异步调用。
sunhaiyu
·
2019-04-20 16:11
Java高并发
--CPU多级缓存与Java内存模型
Java高并发
--CPU多级缓存与Java内存模型主要是学习慕课网实战视频《Java并发编程入门与高并发面试》的笔记CPU多级缓存为什么需要CPU缓存:CPU的频率太快,以至于主存跟不上,这样在处理器时钟周期内
sunhaiyu
·
2019-04-20 16:38
Java高并发
--线程安全策略
Java高并发
--线程安全策略主要是学习慕课网实战视频《Java并发编程入门与高并发面试》的笔记不可变对象发布不可变对象可保证线程安全。实现不可变对象有哪些要注意的地方?比如JDK中的String类。
sunhaiyu
·
2019-04-20 16:39
Java高并发
--安全发布对象
Java高并发
--安全发布对象主要是学习慕课网实战视频《Java并发编程入门与高并发面试》的笔记发布对像:使一个对象能够被当前范围之外的对象使用。对象逸出:一种错误的发布。
sunhaiyu
·
2019-04-20 16:25
JAVA高并发
学习笔记(二)
线程的操作一、终止线程通常情况下,一个线程在工作完成后就会终止,不需要手工去关闭。但是也存在一些服务线程,它们往往都不是正常终结的(比如无穷循环)。而如果想要关闭这类进程,我们可以使用Thread类提供的stop方法。但是,这个方法已经被标记为废弃方法,不建议使用。为什么会被废弃?因为在强制终止一个线程的时候,可能会出现操作只进行了一半,而被强制完成的情况。这样往往会出现数据错误等问题,是必须要避
_一个世纪
·
2019-04-20 15:08
JAVA
JAVA高并发
学习笔记(一)
一、并发和并行从字面上理解的话,并发就是同时发生,并行是指同时执行(这里的执行指的是执行过程)。而在CPU中的效果就是:并发:多个线程在同一个CPU中抢行(准确说是由CPU在指挥),每个线程之间交叉执行,同一时间只有一个线程在执行。反复切换,这个速度极快。并行:其实就是几个线程在多个CPU中同时执行,不存在互相切换的过程。通过交通来理解,就是有本来有三条车道:并发是突然变成了一条车道,然后三条车道
_一个世纪
·
2019-04-20 11:09
JAVA
「 优质资源20190409 」Java最新精选优质资源!
资源来自于网络,请勿用于商业用途资源目录1、JavaSpring技术栈构建前后台团购网站2、java项目实战课企业级权限管理系统3、
Java高并发
高性能与高可用缓存架构实战视频教程4、java高性能电商实战教程
KENDOEVERTHING
·
2019-04-18 15:00
Java高并发
处理
对于高并发问题,我认为总的来说可以分为三个方面:前端,服务器,数据库。前端:web线程连接数不足后台:服务器网络带宽不足数据库:数据库连接查询速度上不去针对于这三方面来说要各有针对性的优化方法(对于高并发问题,只有不断优化,而不存在绝对的并发安全)前端:实现负载均衡,配置前置代理服务器,如NGINX,Apache等;后台:增加网络带宽,DNS域名解析分发多台服务器;数据库:对数据处查询进行优化,实
JAVA大咖_QJ
·
2019-04-08 13:21
Java
java高并发
之限流
在开发高并发系统时,一般都需要一些手段来保护系统。比如缓存,降级,限流等。缓存用于提升系统访问速度和增大系统处理能力;降级一般当服务出现问题或者影响到核心流程的性能,需要暂时屏蔽掉一些功能,待高峰过去或问题解决后再重新打开。而对于稀缺资源的访问,频繁调用复杂查询等需要大量计算资源的请求等,需要一种手段来限制这些场景下的并发量或请求量,此时需要使用的手段就是限流。 限流的目的是通过对并发访问、请
进击的星球
·
2019-04-07 22:41
Java
《实战
Java高并发
程序设计》读书笔记(三):线程池
3.2线程复用:线程池1、什么是线程池为了避免系统频繁地创建和销毁线程,我们可以让创建的线程复用。在使用线程池后,创建线程变成了从线程池中获得空闲线程,关闭线程变成了向线程池中归还线程(类似数据库连接池)。2、JDK对线程池的支持Executor框架提供了各种类型的线程池,主要有以下工厂方法:publicstaticExecutorServicenewFixedThreadPool(intnThr
KiroScarlet
·
2019-03-26 16:00
读书笔记
Java高并发
编程 (马士兵老师视频)笔记(一)同步器
本篇主要总结同步器的相关例子:包括synchronized、volatile、原子变量类(AtomicXxx)、CountDownLatch、ReentrantLock和ThreadLocal。还涉及到wait和notify/notifyAll。回忆关于线程的几个基本知识点:◆线程的概念(程序中不同的执行路径可以放到不同的CPU中同步运行);◆如何启动一个线程(继承Thread类/实现Runnab
zl_StepByStep
·
2019-03-24 23:21
Java基础
Java
面试
慕课网-
java高并发
秒杀api之高并发优化-总结
1.架构优化2.spring声明式事务声明式事务:http://www.open-open.com/lib/view/open1414310646012.html配置并使用Spring声明式事务在spring-service.xml中添加上配置事务管理器在spring-service.xml中添加上配置基于注解的声明式事务在业务类的executeSecKill方法中添加上@Transactiona
abcd1101
·
2019-03-24 17:53
高并发优化
java高并发
秒杀活动的各种简单实现【springBoot+mybatis+redis+mysql】
最近遇到比较多数据不一致的问题,大多数都是因为并发请求时,没及时处理的原因,故用一个比较有代表性的业务场景【活动秒杀】来模拟一下这个这种高并发所产生的问题。众所周知,电商系统的秒杀活动是高并发的很好应用场景,这里用的demo模拟的基本框架是springBoot+mybatis+redis+mysql,搭建的过程,我这里就不提了,有需要的可以自行百度。1.搭好的项目目录:2.建了一张表(记录商品名称
Ouyzc
·
2019-03-13 17:17
高并发处理
java高并发
秒杀活动的各种简单实现【springBoot+mybatis+redis+mysql】
最近遇到比较多数据不一致的问题,大多数都是因为并发请求时,没及时处理的原因,故用一个比较有代表性的业务场景【活动秒杀】来模拟一下这个这种高并发所产生的问题。众所周知,电商系统的秒杀活动是高并发的很好应用场景,这里用的demo模拟的基本框架是springBoot+mybatis+redis+mysql,搭建的过程,我这里就不提了,有需要的可以自行百度。1.搭好的项目目录:2.建了一张表(记录商品名称
Ouyzc
·
2019-03-13 17:17
高并发处理
《
Java高并发
秒杀API》知识总结
最近几天看了这个项目《
Java高并发
秒杀API》,目前除了高并发知识没有涉及到,关于Dao层,service层,Web层,以及前端交互界面都有涉及。
心的步伐
·
2019-03-12 09:29
学习
java高并发
6.5 并发容器
Java并发容器概述ArrayList–>CopyOnWriteArrayListHashSet–>CopyOnWriteArraySetTreeSet–>ConcurrentSkipListSetHashMap–>ConcurrentHashMapTreeMap–>ConcurrentSkipListMap安全共享对象策略Java并发容器JUC是三个单词的缩写。是JDK下面的一个包名。即Java
Linias
·
2019-03-09 10:41
高并发
并发编程
java高并发
6.1 创建不可变对象
不可变对象需要根据实际对象是否可以做成不可变对象,如果可以,尽量变成不可变对象,这样一来在多线程环境下就不会有线程安全的问题了*1、不可变对象有一种对象只要它发布了就是安全的,它就是不可变对象。一个不可变对象需要满足的条件:对象创建一个其状态不能修改对象所有域都是final类型对象是正确创建的(在对象创建期间,this引用没有逸出)2、创建一个不可变对象的方法(1)自己定义这里可以采用的方式包括:
Linias
·
2019-03-09 10:16
高并发
并发编程
java高并发
5.2 安全发布(单例模式)
安全发布对象示例(多种单例模式演示)如何安全发布对象?共有四种方法在静态初始化函数中初始化一个对象引用将对象的引用保存到volatile类型域或者AtomicReference对象中将对象的引用保存到某个正确构造对象的final类型域中(目前为止没讲过)将对象的引用保存到一个由锁保护的域中下面我们用各种单例模式来演示其中的几种方法如果我们想一个类只被初始化一次,首先要保证这个类不能被new一个新的
Linias
·
2019-03-09 10:37
高并发
并发编程
java高并发
5.1 安全发布对象
发布对象发布对象使一个对象能够被当前范围之外的代码所使用。在我们的日常开发中,我们经常要发布一些对象,比如通过类的非私有方法返回对象的引用或者通过公有静态变量发布对象。对象逸出一种错误的发布。当一个对象还没有构造完成时,就使它被其他线程所见。____________________________________________________________________________发布对
Linias
·
2019-03-09 09:58
高并发
并发编程
java高并发
4.2 原子性-锁
我们再回顾一下原子性:原子性提供了互斥访问,同一时刻只有一个线程能对他进行操作.同一时刻只有一个线程能对其进行操作的除了Atomic包之外还有锁锁分为两种:____________________________________________________________________________synchronized依赖于JVM去实现锁,因此在这个关键字作用对象的作用范围内,都是同一
Linias
·
2019-03-09 09:54
高并发
并发编程
java高并发
4.1 原子性-Atomic包
线程安全?当多个线程访问某个类时,不管运行时环境采用何种调度方式或者这些进程将如何交替执行,并且在主调代码中不需要任何额外的同步或协同,这个类都能表现出正确的行为,那么就称这个类是线程安全的。线程安全性?线程安全性主要体现在三个方面:原子性、可见性、有序性原子性:提供了互斥访问,同一时刻只能有一个线程来对它进行操作可见性:一个线程对主内存的修改可以及时的被其他线程观察到有序性:一个线程观察其他线程
Linias
·
2019-03-09 09:57
高并发
并发编程
《实战
Java高并发
程序设计》读书笔记六
《实战
Java高并发
程序设计》读书笔记六第六章Java8与并发1、函数式编程函数作为一等公民:将函数作为参数传递给另外一个函数这是函数式编程的特性之一。
AmyZheng_
·
2019-03-07 19:00
《
Java高并发
程序设计》读书笔记五
《
Java高并发
程序设计》读书笔记五第五章并行模式与算法1、单例模式是一种对象创建模式,用于产生一个对象的具体实例,它可以确保系统一个类只产生一个实例。
AmyZheng_
·
2019-03-06 20:00
Java 高并发思路
此文记录了自己学习
Java高并发
思路的基础知识,纪念自己面试前的准备。
cj96248
·
2019-02-28 21:14
面试
java高并发
下的并行流操作
并行流的考虑并行流需要根据实际场景去应用,本身是有资源损耗的,在不同内核之间移动数据的代价是挺大的,一些普通的场景,比如单纯在几百个数中计算总和未必就比for循环高效。通过流来运算不免有些装箱拆箱的操作,若是比起for循环基本类型的运算就增多了这些损耗了。publicstaticlongrangFor(longn){returnLongStream.rangeClosed(1,n).reduce(
江小白&&
·
2019-02-28 20:51
java
mysql
《
Java高并发
程序设计》读书笔记一
《
Java高并发
程序设计》读书笔记一第一章走入并行世界1、基本概念同步:同步方法一旦开始,调用者必须等到方法调用返回后,才能继续后续操作异步:一旦开始,方法调用就会立即返回,调用就可以继续后续操作并发:
AmyZheng_
·
2019-02-26 16:00
《实战
Java高并发
程序设计》读书笔记二
第二章 Java并行程序基础1、线程的基本操作线程:进程是线程的容器,线程是轻量级进程,是程序执行的最小单位,使用多线程而不用多进程去进行并发程序设计是因为线程间的切换和调度的成本远远的小于进程。新建线程:通过new关键字创建一个线程对象,此时线程处于NEW状态,等到线程start()方法被调用时,会让这个线程的run方法执行,线程执行时处于RUNNABLE状态,表示线程所需一切资源都准备好了。终
AmyZheng_
·
2019-02-26 16:00
Java高并发
程序设计学习笔记(九):锁的优化和注意事项
文章目录锁优化的思路和方法减少锁持有时间减小锁粒度锁分离锁粗化举个栗子举个栗子锁消除虚拟机内部的锁优化(当使用synchronize关键字的时候里面会做那些事情)对象头Mark偏向锁举个栗子轻量级锁自旋锁举个栗子偏向锁,轻量级锁,自旋锁总结一个错误使用锁的案例ThreadLocal及其源码分析举个栗子为每一个线程分配一个实例如果使用共享实例,起不到效果源码分析注意:只要是持有锁的,性能就会比无锁要
Leesin Dong
·
2019-02-18 12:50
#
JAVA
------
High
Concurrency
Java高并发
程序设计学习笔记(八):NIO和AIO
文章目录什么是NIOBuffer&&ChannelBuffer举个栗子NIO复制文件Buffer中有3个重要的参数:代码展示图解新建存入10byteflip五次读操作flip几个重要的函数文件映射到内存网络编程多线程网络服务器的一般结构简单案例EchoServerEchoServerHandleMsgEchoServer的客户端问题:解决模拟低效的客户端服务器输出网络编程NIO参考代码AIO特点总
Leesin Dong
·
2019-02-13 22:11
#
JAVA
------
High
Concurrency
Java高并发
程序设计学习笔记(七):并行设计模式
文章目录什么是设计模式架构模式设计模式代码模式(成例Idiom)单例模式普通单例假如单例中有某个字段改进的单例代理模式再升级不变模式不变模式是如何实现的不变模式的案例Future模式核心思想是异步调用举个栗子JDK对Future模式的支持通过callable实现future更加简便的方式实现future生产者消费者简单代码实现什么是设计模式在软件工程中,设计模式(designpattern)是对软
Leesin Dong
·
2019-02-12 23:13
#
JAVA
------
High
Concurrency
java高并发
编程学习笔记
一.Thread与虚拟机栈粗略地认为一个java进程的内存大小为:堆内存+线程数*栈内存。因此线程数量与栈内存的大小是反比关系。二.守护线程JVM程序在没有一个非守护线程时,则JVM的进程会退出。也就是说守护线程具有自动结束生命周期的特性。守护线程经常作为一些后台任务,当希望关闭某些线程的时候,或者退出JVM进程的时候,一些线程能够自动关闭,此时就可以考虑守护ianc来完成这样的工作。thread
dzx_2016
·
2019-02-11 21:43
java
从java开发,转行学习大数据开发的学习路径
从Java开发通过大概3个月的自学转到大数据开发,主要分享一下学习路径:第一阶段:01.Linux学习(跟鸟哥学就ok了)02.Java高级学习(《深入理解Java虚拟机》、《
Java高并发
实战》)第二阶段
duozhishidai
·
2019-01-25 13:43
大数据
Java并发编程--基础(三)
阅读《
Java高并发
编程详解》后的笔记。
谢同学谢童鞋
·
2019-01-24 14:40
Java
LengthFieldBasedFrameDecoder 秒懂
目录写在前面1.1.1.解码器:FrameDecoder1.1.1.难点:自定义长度帧解码器写在最后疯狂创客圈亿级流量高并发IM学习实战疯狂创客圈,一个
Java高并发
研习社群【博客园总入口】疯狂创客圈,
疯狂创客圈
·
2019-01-20 13:00
Java高并发
并发模型悲观锁和乐观锁的理解及如何实现,有哪些实现方式?悲观锁悲观锁假设最坏的情况(如果你不锁门,那么捣蛋鬼就会闯入并搞得一团糟),并且只有在确保其他线程不会干扰(通过获取正确的锁)的情况下才能执行下去。常见实现如独占锁等。安全性更高,但在中低并发程度下的效率更低。乐观锁乐观锁借助冲突检查机制来判断在更新过程中是否存在其他线程的干扰,如果存在,这个操作将失败,并且可以重试(也可以不重试)。常见实现
wx5c40860c8aee8
·
2019-01-19 14:16
Java
高并发
JAVA并发编程--JAVA内存模型以及CPU缓存知识
阅读《
Java高并发
编程详解》后的笔记。CPUcache模型CPU的处理速度和内存的访问速度差距太大,于是在CPU和主存之间增加了缓存。
谢同学谢童鞋
·
2019-01-18 17:46
Java
java高并发
基础总结笔记
NIO重点:NIO的概念和作用,粘包问题,常见协议,基本概念AIO是异步阻塞式IOBIO是同步阻塞式IO————面向通道操作缓冲区NIO是非阻塞式IO——面向流操作字节字符NIO有三个组间,分别为:Buffer、Channel、SelectorBuffer有三个属性capacity、position、imitcapacity:指定了可以存储在缓冲区中的最大数据容量,实际上,他指定了底层数组的大小,
超超超超子
·
2019-01-17 14:55
java
Netty Redis 亿级流量 高并发 实战 (长文 修正版)
疯狂创客圈,一个
Java高并发
研习社群【博客园总入口】疯狂创客圈,倾力推出:《NettyZookeeperRedis高并发实战》一书,面试必备+面试必备+面试必备写在前面大家好,我是作者尼恩。
疯狂创客圈
·
2019-01-10 22:00
Feign-独立使用-实战
疯狂创客圈,一个
Java高并发
研习社群【博客园总入口】疯狂创客圈,倾力推出:《NettyZookeeperRedis高并发实战》一书,面试必备+面试必备+面试必备写在前面大家好,我是作者尼恩。
疯狂创客圈
·
2019-01-09 13:00
《Netty权威指南》
2014年6月开本:16开页码:524版次:1-1所属分类:计算机>软件与程序设计>综合>高级程序语言设计更多关于》》》《Netty权威指南》编辑推荐资深一线专家诚意之作,总结多年实践经验,带你全面掌握
Java
weixin_33939843
·
2019-01-08 08:31
netty
java
网络
7种单例模式设计
阅读《
Java高并发
编程详解》后的笔记。
谢同学谢童鞋
·
2019-01-04 11:47
Java
设计模式
Java高并发
编程(十二):Executor框架
Java中的线程既是工作单元,也是执行单元。工作单元包括Runnable和Callable,而执行单元是由Executor框架支持。1.Executor框架简介ExecutorsService的生命周期有三种状态:运行、关闭和已终止。Executor执行的任务有四个生命周期:创建、提交、开始和完成。Executor接口:voidexecute(Runnablecommand);下面我们来详细看一下
MasterT-J
·
2018-12-29 18:14
Java并发编程
Java高并发编程
Java高并发
编程(三):Java内存模型
1Java内存模型的基础在并发编程里,需要处理两个问题:线程之间如何通信线程之间如何同步。通信指的是线程之间以何种机制来交换信息。在命令式编程里中,线程之间的通信机制有两种:共享内存和消息传递。Java的并发采用的是共享内存模型。1.1Java内存模型的抽象结构Java线程之间的通信由Java内存模型(JMM)控制,JMM决定一个线程对共享变量的写入何时对另一个线程可见。线程之间的共享变量存储在主
MasterT-J
·
2018-12-22 20:12
Java并发编程
Java高并发编程
Netty(十五)——Future、Promise之略
在总结Netty的过程中,我也在边总结多线程,因为Netty当中好多用到了多线程,比如Netty中的ChannelFuture、ChannelPromise的其实就是来源于上篇博客中的
Java高并发
(七
~小龙~
·
2018-12-11 23:30
Java
netty
学习
Netty系列学习
通俗易懂,JDK 并发容器总结
地址:https://github.com/Snailclimb...一JDK提供的并发容器总结实战
Java高并发
程序设计》为我们总结了下面几种大家可能会在高并发程序设计中经常遇到和使用的JDK为我们提供的并发容器
Snailclimb
·
2018-12-10 00:00
java
并发
集合
Java高并发
(七)——Future模式
大家想下,多线程处理提高性能的根本本质在哪?其实就是将串行的处理步骤进行并行的处理,其实总时间是没有缩短的。也就是以前一个人干活需要10个小时,而十个人干同样的活需要1小时,从而缩短处理时间。但是如果干活有先后限制怎么办?例如工作中:测试前必须编码,编码前必须设计,设计前必须需求分析,分析前……如何提高这种情况的性能呢?或者说是如何让这中情况下的线程更加充分利用呢?Future模式——异步调用。好
~小龙~
·
2018-12-09 18:47
Java
高并发多线程
学习
Java高并发——多线程
上一页
16
17
18
19
20
21
22
23
下一页
按字母分类:
A
B
C
D
E
F
G
H
I
J
K
L
M
N
O
P
Q
R
S
T
U
V
W
X
Y
Z
其他