Dubbo--简介

Dubbo是什么? 一款高性能、轻量级的开源Java RPC框架 能干什么? 面向接口的远程方法调用 智能容错和负载均衡 服务自动注册和发现 整体设计: 图例说明: 图中左边淡蓝背景的为服务消费方使用的接口,右边淡绿色背景的为服务提供方使用的接口,位于中轴线上的为双方都用到的...

2019-08-19 01:02:24

阅读数 6

评论数 0

ref和out的区别

在C#中通过使用方法来获取返回值时,通常只能得到一个返回值。因此,当一个方法需要返回多个值的时候,就需要用到ref和out,那么这两个方法区别在哪儿呢? MSDN: ref关键字使参数按引用传递。其效果是,当控制权传递回调用方法时,在方法中对参数所做的任何更改都将反映在该变量中。若要使用ref...

2019-08-09 21:10:31

阅读数 100

评论数 0

【基础知识】-SQL触发器

一、概念 触发器(trigger)是SQL server 提供给程序员和数据分析员来保证数据完整性的一种方法,它是与表事件相关的特殊的存储过程,它的执行不是由程序调用,也不是手工启动,而是由事件来触发,比如当对一个表进行操作( insert,delete, update)时就会激活它执行。触...

2019-08-09 21:08:58

阅读数 78

评论数 0

[vue]-插件vue-fullcalendar的使用

一、安装 npm install vue-full-calendar 二、使用步骤 1、main.js全局引入 import FullCalendar from 'vue-full-calendar' Vue.use(FullCalendar) 或者在需要用到的组件中局部引入,需要...

2019-08-09 20:38:07

阅读数 748

评论数 4

springcloud-eureka

什么是服务治理 在传统rpc远程调用中,服务与服务依赖关系,管理比较复杂,所以需要使用服务治理,管理服务与服务之间依赖关系,可以实现服务调用、负载均衡、容错等,实现服务发现与注册。 服务注册与发现 在服务注册与发现中,有一个注册中心,当服务器启动的时候,会把当前自己服务器的信息 比如 服务地...

2019-08-04 21:12:00

阅读数 17

评论数 0

Spring 之DI依赖注入

概念 所谓的IOC称之为控制反转,简单来说就是将对象的创建的权利和对象的生命周期的管理过程交由spring框架来处理,从此在开发过程中不在需要关注对象的创建和生命周期的管理,而是在需要的时候由spring框架提供,这个由spring框架管理对象创建和生命周期的机制称之为控制反转。而在创建对...

2019-07-30 17:35:33

阅读数 22

评论数 0

【多线程】-悲观锁和乐观锁

什么是悲观锁与乐观锁? 乐观锁对应于生活中乐观的人总是想着事情往好的方向发展,悲观锁对应于生活中悲观的人总是想着事情往坏的方向发展。这两种人各有优缺点,不能不以场景而定说一种人好于另外一种人。 悲观锁 总是假设最坏的情况,每次取数据时都认为其它线程会修改,所以都会加锁(读锁、写锁、行锁...

2019-07-30 16:49:32

阅读数 18

评论数 0

【多线程】-synchronized和volatile

(1)关键字volatile是线程同步的轻量级实现,所以volatile性能肯定比synchronized要好,并且volatile只能修饰于变量,但是synchronized可以修饰方法,以及代码块。随着JDK新版本的发布,synchronized关键字在执行效率上得到很大提升,在开发中使用sy...

2019-07-30 09:42:20

阅读数 20

评论数 0

【多线程】-线程安全

原因: 当多个线程同时共享,同一个全局变量或静态变量。做写的操作时,可能发生数据冲突问题,也就是线程安全问题。但是做读操作是不会发生数据冲突问题。 解决方案: 方式一:内置锁Synchronized Synchronized保证线程原子性,当线程进入方法的时候,自动获取锁,一旦锁被其...

2019-07-30 09:07:09

阅读数 28

评论数 0

多线程-sleep和wait的区别

wait和sleep区别 共同点: 1. 他们都是在多线程的环境下,都可以在程序的调用处阻塞指定的毫秒数,并返回。 2. wait()和sleep()都可以通过interrupt()方法 打断线程的暂停状态 ,从而使线程立刻抛出InterruptedException。 如果线程A希望立即结束线...

2019-07-28 21:07:19

阅读数 15

评论数 0

Hashtable、HashMap、TreeMap

Hashtable、HashMap、TreeMap 都是最常见的一些 Map 实现,是以键值对的形式存储和操作数据的容器类型。 同步意味着在一个时间点只能有一个线程可以修改hash表,任何线程在执行HashTable的更新操作前都需要获取对象锁,其他线程需要等带锁的释放。 三者均实现了Map接...

2019-07-21 21:37:58

阅读数 19

评论数 0

【多线程】-阻塞队列与非阻塞队列

1.阻塞队列和非阻塞队列的区别:阻塞队列可以阻塞,非阻塞队列不能阻塞,只能使用队列wait(),notify()进行队列消息传送。而阻塞队列当队列里面没有值时,会阻塞直到有值输入。输入也一样,当队列满的时候,会阻塞,直到队列不为空。 2.阻塞队列 ArrayBlockingQueue:...

2019-07-14 21:07:58

阅读数 16

评论数 0

【算法】-堆排序

预备知识 堆排序   堆排序是利用堆这种数据结构而设计的一种排序算法,堆排序是一种选择排序,它的最坏,最好,平均时间复杂度均为O(nlogn),它也是不稳定排序。首先简单了解下堆结构。 堆   堆是具有以下性质的完全二叉树:每个结点的值都大于或等于其左右孩子结点的值,称为大顶堆;或者每个结...

2019-07-06 16:15:32

阅读数 34

评论数 0

【算法】-希尔排序

概念 也称递减增量排序算法,是插入排序的一种更高效的改进版本。但希尔排序是非稳定排序算法。 原则 将数据区分成特定间隔的几个小区块,以插入排序法排完区块内的数据后再渐渐减少间隔的距离。 算法演练 代码实现(java) public class Shel...

2019-07-06 15:44:34

阅读数 33

评论数 1

设计模式之状态模式

一、状态模式的概念 状态模式定义 当一个对象内在状态改变时允许其改变行为,这个对象看起来像改变了其类。 使用场景 行为随状态的改变而改变。 如果需要使用大量的条件、分支判断。 角色介绍 状态模式通用UML State抽象状态角色 接口或抽象类,负责对象状态定义,并且封装环...

2019-06-30 21:48:53

阅读数 18

评论数 0

分布式ID生成之snowflake算法

分布式ID生成解决方案 1、UUID 缺点:1、太长 2、没有办法排序 2、Redis 产生自增的序号 主键的生成需要访问redis,对redis有依赖 3、oracle 数据库对象-序列(与表无关) 只有数据库用oracle才能用 4、程序自己来写算法(不重复) 解决方法:...

2019-06-23 21:43:00

阅读数 30

评论数 0

跨域问题

CORS是一个W3C标准,全称是"跨域资源共享"(Cross-origin resource sharing)。CORS需要浏览器和服务器同时支持。目前,所有浏览器都支持该功能,IE浏览器不能低于IE10。 它允许浏览器向跨源服务器,发出XMLHttpRequest请求...

2019-06-16 21:33:54

阅读数 26

评论数 0

设计模式-建造者模式

一、概述     建造者模式很容易让人想到建房子,不管建刚需房、改善房还是别墅,它们都离不开地基、柱子、层面和墙体这些组成部分,建筑工人就是把这些组成部分一个个建起来,最后连成一体建出一栋栋楼房。 来看看建造者模式的定义,将一个复杂对象的构建与它的表示分离,使得同样的构建过程可以创建不同的表示...

2019-06-09 21:43:59

阅读数 15

评论数 0

单点登录系统CAS

1.1 什么是单点登录 单点登录(Single Sign On),简称为 SSO,是目前比较流行的企业业务整合的解决方案之一。SSO的定义是在多个应用系统中,用户只需要登录一次就可以访问所有相互信任的应用系统。 我们目前的系统存在诸多子系统,而这些子系统是分别部署在不同的服务器中,那么使用传统...

2019-06-02 20:55:45

阅读数 22

评论数 0

Spring Boot入门

1.1什么是Spring Boot Spring 诞生时是 Java 企业版(Java Enterprise Edition,JEE,也称 J2EE)的轻量级代替品。无需开发重量级的 Enterprise JavaBean(EJB),Spring 为企业级Java 开发提供了一种相对简单的方法...

2019-05-30 11:35:01

阅读数 28

评论数 0

提示
确定要删除当前文章?
取消 删除