- 博客(9)
- 资源 (2)
- 收藏
- 关注
原创 解析Vue.js的MVVM模式
近年来前端一个明显的开发趋势就是架构从传统的 MVC 模式向 MVVM 模式迁移。在传统的 MVC 下,当前前端和后端发生数据交互后会刷新整个页面,从而导致比较差的用户体验。因此我们通过 Ajax 的方式和网关 REST API 作通讯,异步的刷新页面的某个区块,来优化和提升体验。一、MVP模式我们以前使用JQuery操作Dom的模式就是遵循了MVP模式,我们来看一下M...
2018-08-31 11:48:20 1929 1
转载 (转载)Java设计模式之代理模式
设计模式是语言的表达方式,它能让语言轻便而富有内涵、易读却功能强大。代理模式在Java中十分常见,有为扩展某些类的功能而使用静态代理,也有如Spring实现AOP而使用动态代理,更有RPC实现中使用的调用端调用的代理服务。代理模型除了是一种设计模式之外,它更是一种思维,所以探讨并深入理解这种模型是非常有必要的。 本文转载自Java的三种代理模式浅析JAVA设计模式之代理模...
2018-08-29 11:31:05 779 1
原创 JAVA并发编程(六):线程本地变量ThreadLocal与TransmittableThreadLocal
我们知道有时候一个对象的共享变量会被多个线程所访问,这时就会有线程安全问题。当然我们可以使用synchorinized 关键字来为此变量加锁,进行同步处理。从而限制只能有一个线程来使用此变量,但是加锁会大大影响程序执行效率,此外我们还可以使用ThreadLocal来解决对某一个变量的访问冲突问题。一、ThreadLocal 概述当使用ThreadLocal维护变量的时候 它...
2018-08-28 09:50:36 9055 8
原创 JAVA并发编程(五):创建线程的第三种方式:实现Callable接口
众所周知创建线程的方式有两种:1.继承Thread类。2.实现Runnable接口。从jdk1.5开始,提供了另一种创建线程的方式。今天我们就来看看这第三种方式:实现Callable接口一、Callable与Runnable我们直接来看一个使用Callable创建线程的例子/* * 一、创建执行线程的方式三:实现 Callable 接口。 相较于实现 Runnab...
2018-08-27 11:00:00 1442 1
转载 (转载)JAVA并发编程(四):线程池的使用
如果并发的线程数量很多,并且每个线程都是执行一个时间很短的任务就结束了,这样频繁创建线程就会大大降低系统的效率,因为频繁创建线程和销毁线程需要时间。那么有没有一种办法使得线程可以复用,就是执行完一个任务,并不被销毁,而是可以继续执行其他的任务?在Java中可以通过线程池来达到这样的效果。今天我们就来详细讲解一下Java的线程池。本文转载自Java并发编程:线程池的使用一、J...
2018-08-27 10:59:23 277 1
原创 JAVA并发编程(三):同步的辅助类之闭锁(CountDownLatch)与循环屏障(CyclicBarrier)
jdk1.5的concurrent包为我们提供了很多有用的辅助类,今天我们来学习一下一、闭锁CountDownLatchCountDownLatch是一个同步工具类,用来协调多个线程之间的同步。它的作用是,在完成某些运算时,只有其他所有线程的运算全部完成,当前线程的运算才继续执行。 CountDownLatch类只提供了一个构造器:public CountDown...
2018-08-25 13:59:40 394 1
原创 JAVA并发编程(二):理解CAS机制
也许大家已经听说过,锁分两种,一个叫悲观锁,一种称之为乐观锁。Synchronized就是悲观锁的一种,也称之为独占锁,加了synchronized关键字的代码基本上就只能以单线程的形式去执行了,它会导致其他需要该资源的线程挂起,直到前面的线程执行完毕释放所资源。而另外一种乐观锁是一种更高效的机制,它的原理就是每次不加锁去执行某项操作,如果发生冲突则失败并重试,直到成功为止,其实本质上不...
2018-08-19 14:14:50 265 1
原创 JAVA并发编程(一):理解volatile关键字
Java中volatile这个热门的关键字,在面试中经常会被提及,在各种技术交流群中也经常被讨论:volatile关键字在java多线程中有着比较重要作用,volatile主要作用是可以保持变量在多线程中是实时可见的,是java中提供的最轻量的同步机制。一、JAVA内存模型概述在了解volatile关键字之前,我们先来认识一下Java的内存模型。 Java线程之间的通信由...
2018-08-15 10:16:56 305 1
原创 小白学SpringCloud(六):服务降级(Hystrix)
在微服务架构中,我们将系统拆分为很多个服务,各个服务之间通过注册与订阅的方式相互依赖,由于各个服务都是在各自的进程中运行,就有可能由于网络原因或者服务自身的问题导致调用故障或延迟,随着服务的积压,可能会导致服务崩溃。为了解决这一系列的问题,断路器等一系列服务保护机制出现了。 一、Hystrix简介Netflix提供了一个叫Hystrix的类库,它实现了断路器模式。在微服务...
2018-08-06 09:48:13 6864 2
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人