vincent

保持谦逊,专于学习,也请不吝赐教,博主感激不尽。

排序:
默认
按更新时间
按访问量

Elasticsearch 之 监控Elasticsearch性能

        本文翻译原文地址:https://www.datadoghq.com/blog/monitor-elasticsearch-performance-metrics/       本文是关于监控Elasticsearch性能的4部分系列文章的第1部分。 在这篇文章中,我们将介绍E...

2018-10-20 11:43:26

阅读数:213

评论数:0

Spring Security Oauth2 之 核心架构配置

1 ResourceServerConfigurerAdapter (资源服务器配置)内部关联了ResourceServerSecurityConfigurer和HttpSecurity。前者与资源安全配置相关,后者与http安全配置相关 @Override public void con...

2018-04-04 14:39:46

阅读数:7410

评论数:5

Spring Security Oauth2 之 架构源码解读

本篇追踪源码阐述获Security的认证的基本流程 密码模式请求/oauth/token ,获取令牌(access_token)经过客户端认证核心过滤器ClientCredentialsTokenEndpointFilter(attemptAuthentication)    获取clientId...

2018-04-03 23:17:05

阅读数:6117

评论数:0

Spring Security Oauth2 之 理解OAuth 2.0授权流程

      总览        本系列针对Security-Oauth2架构的剖析,包括:oauth2.0认证架构详解、架构源码解读、核心结构配置。        本篇是对oauth2认证流程的概述,喜欢的多多pick!        内容引用书籍:The OAuth 2.0 Authorizat...

2018-04-03 13:26:36

阅读数:9449

评论数:0

分布式事务解决方案(总览)

总览        本系列针对分布式事务提出三种解决方案:可靠消息最终一致性、最大努力通知、TCC。 每种方案分为上下两篇,上篇为原理概述,下篇为具体实现。        本篇是对本地事务和分布式事务的特性理解分析,喜欢的多多pick!事务概念原子性是指事务是一个不可再分割的工作单元,事务中的操作...

2018-04-02 13:23:34

阅读数:14048

评论数:2

Elasticsearch 之 Elasticsearch面试总结

一、Elasticsearch监控的常用工具 我大概用过如下的监控插件(注意此处插件的版本,不同es的版本,监控工具的安装方式可能不一样)      1. bigdesk 统计分析和图表化elasticsearch的集群信息状态            https://blog.csdn.ne...

2018-10-20 11:54:14

阅读数:244

评论数:0

atomic的实现原理

         在多线程的场景中,我们需要保证数据安全,就会考虑同步的方案,通常会使用synchronized或者lock来处理,使用了synchronized意味着内核态的一次切换。这是一个很重的操作。      有没有一种方式,可以比较便利的实现一些简单的数据同步,比如计数器等等。conc...

2018-09-11 11:31:48

阅读数:1341

评论数:0

ElasticJob -- 分布式作业调度

Elastic-Job是一个分布式调度解决方案,由两个相互独立的子项目Elastic-Job-Lite和Elastic-Job-Cloud组成。 Elastic-Job-Lite定位为轻量级无中心化解决方案,使用jar包的形式提供最轻量级的分布式任务的协调服务,外部依赖仅Zookeeper。 ...

2018-09-07 15:41:20

阅读数:1995

评论数:0

三种实现分布式锁的方式

一、为什么要使用分布式锁我们在开发应用的时候,如果需要对某一个共享变量进行多线程同步访问的时候,可以使用我们学到的Java多线程的18般武艺进行处理,并且可以完美的运行,毫无Bug!注意这是单机应用,也就是所有的请求都会分配到当前服务器的JVM内部,然后映射为操作系统的线程进行处理!而这个共享变量...

2018-06-14 15:01:57

阅读数:2024

评论数:0

MyBatis 之 十道常见的面试题

1. #{}和${}的区别是什么?#{}是预编译处理,${}是字符串替换。Mybatis在处理#{}时,会将sql中的#{}替换为?号,调用PreparedStatement的set方法来赋值;Mybatis在处理${}时,就是把${}替换成变量的值。使用#{}可以有效的防止SQL注入,提高系统安...

2018-06-13 16:30:29

阅读数:1367

评论数:0

常用排序算法总结(2)-- 非比较排序算法

上一篇总结了常用的比较排序算法,主要有冒泡排序,选择排序,插入排序,归并排序,堆排序,快速排序等。这篇文章中我们来探讨一下常用的非比较排序算法:计数排序,基数排序,桶排序。在一定条件下,它们的时间复杂度可以达到O(n)。这里我们用到的唯一数据结构就是数组,当然我们也可以利用链表来实现下述算法。需要...

2018-06-13 14:18:53

阅读数:459

评论数:0

常用排序算法总结(1)-- 比较排序

我们通常所说的排序算法往往指的是内部排序算法,即数据记录在内存中进行排序。排序算法大体可分为两种:一种是比较排序,时间复杂度O(nlogn) ~ O(n^2),主要有:冒泡排序,选择排序,插入排序,归并排序,堆排序,快速排序等。另一种是非比较排序,时间复杂度可以达到O(n),主要有:计数排序,基数...

2018-06-12 15:01:48

阅读数:2047

评论数:0

JVM 之(16)方法调用

前言Java具备三种特性:封装、继承、多态。Java文件在编译过程中不会进行传统编译的连接步骤,方法调用的目标方法以符号引用的方式存储在Class文件中,这种多态特性给Java带来了更灵活的扩展能力,但也使得方法调用变得相对复杂,需要在类加载期间,甚至到运行期间才能确定目标方法的直接引用。方法调用...

2018-06-09 23:20:43

阅读数:406

评论数:0

JVM 之(15)局部变量表

        在《JVM 之(1)运行时数据区》提到,虚拟机栈是描述Java方法执行的内存模型:每个方法在执行的同时都会创建一个栈帧(Stack Frame)用于存储局部变量表、操作数栈、动态链接、方法出口等信息。本篇主要分析局部变量表的原理结构。        局部变量表是一组变量值存储空间,...

2018-06-09 21:25:45

阅读数:1571

评论数:0

JVM 之 (14) 类加载器详解和双亲委派模型

类加载器        虚拟机设计团队把类加载阶段中“通过一个类的全限定名来获取描述此类的二进制字节流”这个动作放到Java虚拟机外部去实现,以便让应用程序自己决定如何去获取所需要的类。实现这个动作的模块称为“类加载器”。类加载器分类      启动(Bootstrap)类加载器        启...

2018-06-09 18:15:19

阅读数:2746

评论数:0

JVM 之 (13) 类加载机制——案例分析

  在《JVM 之 (12) 类加载机制》一文中详细阐述了类加载的过程,并举了几个例子进行了简要分析,在文章的最后留了一个悬念给各位,这里来揭开这个悬念。建议先看完《JVM 之 (12) 类加载机制》这篇再来看这个,印象会比较深刻,如若不然,也没什么关系~~ 下面是程序代码:package jvm...

2018-06-09 14:38:02

阅读数:41

评论数:0

JVM 之 (12) 类加载机制

一、Java类加载机制1.概述       Class文件由类装载器装载后,在JVM中将形成一份描述Class结构的元信息对象,通过该元信息对象可以获知Class的结构信息:如构造函数,属性和方法等,Java允许用户借由这个Class相关的元信息对象间接调用Class对象的功能。      虚拟机...

2018-06-09 14:26:38

阅读数:943

评论数:0

JVM 之 (11)字节码指令

加载和内存指令 记载和内存指令是用于将数据在栈帧中的局部变量表和操作数栈之间来回传输 将局部变量表加载到操作数栈:iload lload fload dload aload 将一个数值从操作数占存储到局部变量表: istore lfda 将一个常量加载到操作数栈: bipush sipush ld...

2018-06-09 14:24:59

阅读数:135

评论数:0

JVM 之 (10)Class文件结构

Class文件是一组以8位字节为基础单位的二进制流,包含多个数据项目(数据项目的顺序,占用的字节数均由规范定义),各个数据项目严格按照顺序紧凑的排列在Class文件中,不包含任何分隔符,使得整个Class文件中存储的内容几乎全部都是程序运行的必要数据,没有空隙。当遇到需要占用超过8位字节以上空间的...

2018-06-09 14:23:48

阅读数:66

评论数:0

JVM 之(9)虚拟机监控工具(可视化)

1、Jconsole           从Java 5开始 引入了 JConsole。JConsole 是一个内置 Java 性能分析器,可以从命令行或在 GUI shell 中运行。您可以轻松地使用 JConsole(或者,它更高端的 “近亲” VisualVM )来监控 Java 应用程序性...

2018-06-06 14:10:45

阅读数:1118

评论数:0

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