7 写代码的Z

尚未进行身份认证

暂无相关简介

等级
TA的排名 13w+

常见的负载均衡软件

一、 负载均衡分类硬件负载均衡 常见的硬件有比较昂贵的F5和Array等商用的负载均衡器,它的优点就是有专业的维护团队来对这些服务进行维护、缺点就是花销太大,所以对于规模较小的网络服务来说暂时还没有需要使用。 软件负载均衡 目前使用最广泛的三种负载均衡软件Nginx/LVS/HAProxy,他们都是基于Linux的开源免费的负载均衡软件,这些都是通过软件级别来实现,所以费用非常低廉。...

2019-12-12 10:06:11

shiro

简介Apache Shiro是一个强大且易用的Java安全框架,主要功能有身份验证、授权、安全加密和会话管理。相比较Spring Security,shiro有小巧、简单、易上手等的优点。shiro权限的操作粒度能控制在路径及按钮上,数据粒度通过sql实现。Shrio简单够用。至于OAuth,OpenID 站点间统一登录功能,现如今单点登录很多已经通过cookies实现。因此Shiro完全能够...

2019-11-06 17:21:21

Elasticsearch知识点

目录1 什么是Elasticsearch?2 Elasticsearch的特点3 Elasticsearch基础概念4 Elasticsearch基本数据类型(看这里)5 Elasticsearch基本检索类型5.1 检索和过滤5.2 结构化检索5.3 全文检索5.4 复合检索5.5 特定检索6 Elasticsearch基本基本聚合类型6.1 Me...

2019-10-17 14:16:20

Logstash知识点

Logstash的基本知识Logstash是什么logstash是开源数据收集引擎,可以用数据的统一和扩充。相关版本支持(看这里)工作原理(看这里)输入file:从文件系统上的文件读取,非常类似于UNIX命令tail -0Fsyslog:在知名端口514上侦听syslog消息并根据RFC3164格式进行解析redis:使用redis通道和redis列表从redis服务器读取。...

2019-10-15 15:45:19

SpringBoot知识点

目录什么是 Spring Boot?为什么要用 Spring Boot?Spring Boot 的核心配置文件有哪几个?它们的区别是什么?Spring Boot 的配置文件有哪几种格式?它们有什么区别?Spring Boot 的核心注解是哪个?它主要由哪几个注解组成的?开启 Spring Boot 特性有哪几种方式?Spring Boot 需要独立的容器运行吗?运行...

2019-10-14 16:20:15

GC和GC算法

详解分代回收Java 的堆内存被分代管理,为什么要分代管理呢?分代管理主要是为了方便垃圾回收,这样做基于2个事实,第一,大部分对象很快就不再使用;第二,还有一部分不会立即无用,但也不会持续很长时间。虚拟机堆内存划分为年轻代、老年代、和永久代,如下图所示。 年轻代主要用来存放新创建的对象,年轻代分为 Eden 区和两个 Survivor 区。大部分对象在 Eden 区中...

2019-10-11 10:14:20

JVM类加载机制和双亲委派原则

详解类加载机制类的加载指将编译好的 Class 类文件中的字节码读入内存中,将其放在方法区内并创建对应的 Class 对象。类的加载分为加载、链接、初始化,其中链接又包括验证、准备、解析三步。如下图所示。 加载是文件到内存的过程。通过类的完全限定名查找此类字节码文件,并利用字节码文件创建一个 Class 对象。 验证是对类文件内容验证。目的在于确保 Class ...

2019-10-11 10:12:08

GC算法之ZGC

详解 ZGCZGC特点ZGC 是最新的 JDK1.11 版本中提供的高效垃圾回收算法,ZGC 针对大堆内存设计可以支持 TB 级别的堆,ZGC 非常高效,能够做到 10ms 以下的回收停顿时间。这么快的响应,ZGC 是如何做到的呢?这是由于 ZGC 具有以下特点。 ZGC 使用了着色指针技术,我们知道 64 位平台上,一个指针的可用位是 64 位,ZGC 限制最大支持 4TB ...

2019-10-11 09:53:43

GC算法之G1算法

G1 算法G1 在 1.9 版本后成为 JVM 的默认垃圾回收算法,G1 的特点是保持高回收率的同时,减少停顿。G1 算法取消了堆中年轻代与老年代的物理划分,但它仍然属于分代收集器。G1 算法将堆划分为若干个区域,称作 Region,如下图中的小方格所示。一部分区域用作年轻代,一部分用作老年代,另外还有一种专门用来存储巨型对象的分区。 G1 也和 CMS 一样会遍历...

2019-10-11 09:51:07

GC算法之CMS算法

CMS算法CMS算法是JVM中老年代常用的垃圾回收算法,全称是Concurrent Mark Sweep算法,即并发标记-清除算法。算法的执行步骤如下图所示,共有六个步骤。CMS-Steps3.1 初始标记(Initial Mark):CMS算法中两个会触发Stop the World事件中的一个,这个阶段会标记所有与GC Roots直接相关联的对象,以及被存活的青年代对象所直...

2019-10-11 09:44:03

JVM内存模型

详解 JVM 内存模型JVM 内存模型主要指运行时的数据区,包括 5 个部分,如下图所示。Heap(堆)和方法区是所有线程共享的,栈、本地方法栈和程序技术器是各个线程独占的。线程独占的:栈也叫方法栈或者Java虚拟机栈,是线程私有的,程在执行每个方法时都会同时创建一个栈帧,用来存储局部变量表、操作栈、动态链接、方法出口等信息。调用方法时执行入栈,方法返回时执行出栈。栈帧:...

2019-09-30 16:50:48

关于JVM知识点

JVM 知识点汇总JVM知识点有6个大方向,其中,内存模型、类加载机制、GC垃圾回收是比较重点的内容。性能调优部分偏重实际应用,重点突出实践能力。编译器优化和执行模式部分偏重理论基础,主要掌握知识点。各个部分需要了解的知识点如下。 内存模型:程序计数器、方法区、堆、栈、本地方法栈的作用,保存哪些数据。 类加载:双亲委派的加载机制,以及常用类加载器分别加载哪种类型的类...

2019-09-30 09:12:33

数据库中间件详解

1数据库拆分过程及挑战 互联网当下的数据库拆分过程基本遵循的顺序是:垂直拆分、读写分离、分库分表(水平拆分)。每个拆分过程都能解决业务上的一些问题,但同时也面临了一些挑战。1.1 垂直拆分对于一个刚上线的互联网项目来说,由于前期活跃用户数量并不多,并发量也相对较小,所以此时企业一般都会选择将所有数据存放在一个数据库 中进行访问操作。举例来说,对于一个电商系统,其用户模...

2019-09-25 16:16:30

常用的工具

JVM相关工具JMC(Java Mission Control)监控和性能分析:JVM、JFR(重要)、JMX线上调试:btrace:JVM实时监控工具其他常用的JVM工具:jps:查看java进程信息jmap:查看JVM中对象的统计信息jstat:对JVM的资源和性能进行实时监控jstack:查看JVM线程栈信息jinfo:动态查看、调用jvm参数压力测试:JHM常用Linux...

2019-08-18 10:33:21

消息队列

使用场景应用解耦合:应用之间不用直接调用,可以通过队列来传递消息,完成通信。 异步任务:队列可以用来执行异步任务,任务提交方无需等待结果。 削峰填谷:在突发流量时,可以通过队列做缓冲,不会对后端服务产生较大的压力,当峰值过去时,可以逐渐消费堆积的数据,来填平流量的低谷。 消息广播:一写多读消息协议JMS:是Java的消息服务,规定了Java使用消息服务的API,Spring提供了支...

2019-08-13 11:02:39

redis缓存知识点

redis的特点单线程异步IO,采用非阻塞异步事件处理机制,缓存数据都是内存操作,IO操作时间不会太长,单线程可以避免线程上下文切换产生的代价 支持持久化,所以redis不仅可以做缓存,也能做nosql数据库 多数据结构:String、Hash、List、Set、ZSet、HyperLogLog、Geo 提供主从模式以及cluser集群部署机制redis的常见的5种数据结构:类型...

2019-08-12 16:33:30

缓存

缓存的类型及使用场景 本地缓存:在进程所在的内存中进行缓存,比如:使用Map实现在JVM堆中缓存。也可以使用ehcache这样的工具实现。 优点:能直接在heap区内读写,最快也最方便。 缺点:同样是受heap区域影响,缓存的数据量非常有限,同时缓存时间受GC影响。 主要满足单机场景下的小数据量缓存需求,同时对缓存数据的变更无需太敏感,如一般配置管理、基础静态数据等场景 分布...

2019-08-12 14:55:31

MySql基础知识点

常用的sql语句条件查询、关联查询、排序查询、分组查询、逻辑关键字、函数常用的数据类型整数型和浮点数类型 大小 用途 TINYINT 1 字节,8位 小整数值 SMALLINT 2 字节,2*8位 大整数值 MEDIUMINT 3 字节,3*8位 大整数值 INT或INTEGER 4 字节,4*8位 大整数...

2019-08-12 10:42:49

MyBatis知识点

Mybatis的优缺点优点:原生sql sql语句与代码解耦合 简单易学 原生的sql语句,sql调优灵活缺点:半自动ORM,不能自动生成sql语句 sql语句依赖于具体数据库,数据性移植差Mybatis缓存机制一级缓存作用域是SqlSession,会对同一个SqlSession中执行语句的结果进行缓存,来提高再次执行的效率。SqlSession关闭或者有新增更新删...

2019-08-11 11:38:30

Spring

基础概念1.Spring 是一个轻量级的 IOC/DI和 AOP 容器的开源框架。使用Spring框架的好处是什么?轻量级、容器化、控制反转、面向切面编程、事务管理、异常处理、可以集成多种优秀的框架。2.什么是IOC(控制反转)思想?Spring中关于IOC思想的具体方式DI(依赖注入)?这篇文章IOC(inverse of control):控制反转 对象的创建以及依赖关系可...

2019-06-19 11:18:14

查看更多

勋章 我的勋章
  • 专栏达人
    专栏达人
    授予成功创建个人博客专栏的用户。专栏中添加五篇以上博文即可点亮!撰写博客专栏浓缩技术精华,专栏达人就是你!
  • 持之以恒
    持之以恒
    授予每个自然月内发布4篇或4篇以上原创或翻译IT博文的用户。不积跬步无以至千里,不积小流无以成江海,程序人生的精彩需要坚持不懈地积累!
  • 勤写标兵Lv3
    勤写标兵Lv3
    授予每个自然周发布7篇到8篇原创IT博文的用户。本勋章将于次周周三上午根据用户上周的博文发布情况由系统自动颁发。