自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

向死而生

任何方向的风都不会将一个没有方向的船吹向彼岸,因为都是逆风

  • 博客(135)
  • 资源 (2)
  • 收藏
  • 关注

原创 如何从思维模式上彻底改变学习模式?

如何判定我们是在学习?情景一:     从小学开始我们就会受到外界各种各样的声音,他们以分数论英雄,他们以刻苦为榜样,久而久之我们会以为只要我分数考的高,只要我们勤奋用功,肯吃苦,那么我们就会被界定为“好学生”,学习好,肯吃苦耐劳,我们就会被外界认可。我们甚至可能会以此来向外界炫耀我们的“优秀”。

2017-08-18 21:50:55 3503 83

原创 jvm运行时数据区域

文章目录简介简介Java虚拟机在执行Java程序的过程中会把它所管理的内存划分为若干个不同的数据区域。每个区域有各自的用途,创建时间以及销毁时间。有的区域随着虚拟机的进程启动而存在,有的则是依赖用户线程的启动和结束而建立和销毁。JVM所管理的内存分为以下几个运行时数据区:程序计数器、Java虚拟机栈、本地方法栈、Java堆、方法区。...

2019-09-30 18:02:25 409

原创 zookeeper选举机制

在分布式系统中选主最直接或者传统的方法是直接选定集群的一个节点为 leader,其它的节点为 follower,这样引入的一个问题是如果 leader节点挂掉,整个集群就挂掉了。所以我们需要一种自动选主算法,如果 leader节点挂掉,则从 follower节点中选出一个主节点。一、leader选举选举阶段 Leader election最大 ZXID也就是节点本地的最新事务编号,包含 ...

2019-09-27 22:05:21 797

原创 java锁—公平/非公平锁、可重入锁、自旋锁、共享/独占锁

文章目录公平和非公平锁可重入锁 (又称递归锁)自旋锁共享锁 和 独占锁公平和非公平锁公平锁 是指多个线程按照申请锁的顺序来获取锁,类似排队打饭,先来后到。非公平锁 是指多个线程获取锁的顺序并不是按照申请锁的顺序,有可能后申请的线程比先申请的线程优先获取锁在高并发的情况下,有可能会造成优先级反转或者饥饿现象区别:非公平锁的优点在于吞吐量比公平锁大。Synchronized、Reentran...

2019-09-16 18:30:57 847

原创 MySQL 主从复制原理?主从同步导致的延时问题如何解决?

MySQL 主从复制原理主库将变更写入 binlog 日志,然后从库连接到主库之后,从库有一个 IO 线程,将主库的 binlog 日志拷贝到自己本地,写入一个 relay 中继日志中。接着从库中有一个 SQL 线程会从中继日志读取 binlog,然后执行 binlog 日志中的内容,也就是在自己本地再次执行一遍 SQL,这样就可以保证自己跟主库的数据是一样的。这里有一个非常重要的一点,就是...

2019-09-13 12:50:50 2166

原创 并发编程之——线程池

为什么要用线程池?线程池做的工作主要是控制运行的线程的数量,处理过程中将任务放入队列,然后再线程创建后启动这些任务,如果线程数量超过了最大数量,超出数量的线程排队等候,等其它线程执行完毕,再从队列中取出任务来执行。他的主要特点为:线程复用、控制最大并发数,管理线程。第一:降低资源消耗。通过重复利用已创建的线程降低线程创建和销毁造成的消耗。第二:提高响应速度。当任务到达时,任务可以不需要等到...

2019-09-13 12:39:13 298

原创 Dubbo-容错机制

所谓容错机制,举个简单例子,我们在使用电脑的某个程序时,常常会遇到“程序无反应”或“程序未响应”的情况发生,此时这个程序便不能在进行下去,但经常会在过了几秒钟后恢复到正常使用的状态。这种“无反应”或“未响应”几秒钟的错误状态,我们便称之为“容错”。

2019-09-09 22:23:42 448 1

原创 RabbitMQ 如何保证消息不丢失?

RabbitMQ消息丢失的情况第一种:生产者弄丢了数据。生产者将数据发送到 RabbitMQ 的时候,可能数据就在半路给搞丢了,因为网络问题啥的,都有可能。第二种:RabbitMQ 弄丢了数据。MQ还没有持久化自己挂了第三种:消费端弄丢了数据。刚消费到,还没处理,结果进程挂了,比如重启了。解决方案一:针对生产者方案1.开启RabbitMQ事务可以选择用 RabbitMQ 提供的事...

2019-09-03 11:46:45 22699 13

原创 tomcat目录&&系统架构

/bin:存放 Windows 或 Linux 平台上启动和关闭 Tomcat 的脚本文件。/conf:存放 Tomcat 的各种全局配置文件,其中最重要的是 server.xml。/lib:存放 Tomcat 以及所有 Web 应用都可以访问的 JAR 文件。/logs:存放 Tomcat 执行时产生的日志文件。/work:存放 JSP 编译后产生的 Class 文件。/webapp...

2019-08-25 21:34:43 175 1

原创 mysql--体系结构

前言了解MySQL的架构图,对MySQL有一个整体的把握,对于以后深入理解MySQL是有很大帮助的。比如:很多查询优化工作实际上就是遵循一些原则让MySQL的优化器能够按照预想的合理方式运行。 MySQL从概念上分为四层,如下图:Client Connectors:接入方 支持协议很多Management Serveices & Utilities:系统管理和控制工具,mysqld...

2019-08-18 22:02:14 177

原创 算法实现———多种方法排序(java)

选择排序 /** * 希尔排序 针对有序序列在插入时采用交换法 * @param arr */ public static void sort(int []arr){ // for(int i=0;i<arr.length-1;i++){ int max=i;...

2019-08-11 21:38:06 167

原创 hystrix与高可用系统架构

hystrix作用:资源隔离限流机制熔断机制降级机制运维监控资源隔离,让你的系统里,某一块东西,在故障的情况下,不会耗尽系统所有的资源。那一块代码,最多最多就是用掉18个线程,不能再多了,就废掉了,限定好的一些资源限流:高并发的流量涌入进来,比如说突然间一秒钟100万QpS,废掉了,10万QPS进入系统,其他90万QPS被拒绝了。熔断:系统后端的一些依赖,出了一些故障,比如说my...

2019-08-06 16:59:28 331 1

原创 mybatis--运行原理

Mybatis的架构mybatis运行原理mybatis底层还是采用原生jdbc来对数据库进行操作的,只是通过 SqlSessionFactory,SqlSession, Executor,StatementHandler,ParameterHandler,ResultHandler和TypeHandler等几个处理器封装了这些过程。StatementHandler:处理sql语句预编译...

2019-07-28 21:11:40 198 1

原创 springMVC中post、get中文乱码的解决方法

目录post乱码get乱码post乱码在web.xml配置文件中添加<!--解决post请求中文乱码问题--> <filter> <filter-name>characterEncodingFilter</filter-name> <filter-class>org.springframewo...

2019-07-17 09:18:18 336 1

原创 谈谈对volatile的理解

文章目录特性保证可见性不保证原子性禁止指令重排序volatile和synchronize的区别在多线程并发编程中synchronized和volatile都扮演着重要的角色,volatile是轻量级的synchronized。特性保证可见性通俗的来讲就是,两个线程,线程A和线程B 共享同一变量,volatile保证了当线程A对共享变量的值进行修改后,线程B也会得到最新的修改结果。...

2019-07-14 21:32:44 2848 3

原创 并发编程

关键字volatilesynchronizedfinal三大性质:原子性、可见性、有序性

2019-07-07 21:35:06 177

原创 dubbo演变

目录概念背景架构**节点角色说明**概念背景随着互联网的发展,网站应用的规模不断扩大,常规的垂直应用架构已无法应对,分布式服务架构以及流动计算架构势在必行,亟需一个治理系统确保架构有条不紊的演进。单一应用架构当网站流量很小时,只需一个应用,将所有功能都部署在一起,以减少部署节点和成本。此时,用于简化增删改查工作量的数据访问框架(ORM)是关键。垂直应用架构当访问量逐渐增大,单一应用...

2019-06-30 21:35:31 418 2

原创 spring—Bean配置

文章目录概述:在Spring中,对象无需自己查找或创建与其所关联的其它对象。相反,容器负责把需要相互写作的对象引用赋予各个对象。Spring容器负责创建应与程序中的Bean并通过DI(依赖注入)来协调这些对象之间的关系。作为开发人员,只需要告诉Spring要创建哪些Bean并且如何将其装配在一起。对于如何装配Bean,Spring提供了三种装配机制:基于XML文件基于注解自动装配依...

2019-06-23 21:30:30 282 2

原创 spring系列--概览

是什么?1.开源框架2.IOC(DI)和AOP容器框架,容器包含并管理应用对象的生命周期。3.Spring 为简化企业级应用开发而生. 使用 Spring 可以使简单的 JavaBean 实现以前只有 EJB 才能实现的功能.

2019-06-16 23:43:30 252 2

原创 jvm

jdk/jre/jvm的关系jdk:Java Devlepment Kitjre:jvm:java8官方解释生成jvm内存快照jdk的发展历程:jdk各种虚拟机发展历程:java Class VM 1.1 1.2Exact VM 1.2hotspot 1.3~1.6kvm 简单。轻量,可移植,手机平台使用BEA JRockit 专...

2019-05-26 21:51:46 399 2

原创 java反射机制

文章目录概要反射API获取Class对象的三种方式创建对象的两种方法概要在 Java 程序中许多对象在运行是都会出现两种类型:编译时类型和运行时类型。 编译时的类型由声明对象时实用的类型来决定,运行时的类型由实际赋值给对象的类型决定 。如:Person p=new Student();其中编译时类型为 Person,运行时类型为 Student。程序在运行时还可能接收到外部传入的对象,该...

2019-05-13 19:02:24 191 4

原创 java 类加载机制

写一篇博客欢迎使用Markdown编辑器你好! 这是你第一次使用 Markdown编辑器 所展示的欢迎页。如果你想学习如何使用Markdown编辑器, 可以仔细阅读这篇文章,了解一下Markdown的基本语法知识。新的改变我们对Markdown编辑器进行了一些功能拓展与语法支持,除了标准的Markdown编辑器功能,我们增加了如下几点新功能,帮助你用它写博客:全新的界面设计 ,将会带来...

2019-05-12 09:20:47 162 2

原创 虚拟机分配IP

连接网络命令:通过命令行查看ip虚拟机的mac地址 ip addr show查看网卡文件名称:ls –a /etc/sysconfig/network-scripts下面编辑此网卡文件即可vi /etc/sysconfig/network-scripts/ifcfg-eno16777736HWADDR=00:0c:29:e7:17:81TYPE=EthernetBOOTPROTO=st...

2019-04-28 21:58:10 1521 4

原创 操作系统总结

操作系统核心功能包括:文件系统管理、存储器管理、设备管理、进程管理进程是操作系统的核心。内存管理中是以页单位的,页大小一般为4K

2019-04-14 21:26:12 200 3

原创 操作系统梳理

2019-04-07 19:53:24 500 4

原创 前端angular+ionic常用命令

检查nodejs版本:node -v安装ionic环境:cnpm install -g cordova ionic查看ionic版本:ionic -v查看cardova版本:cardova -v运行:ng serve 或 ionic serve创建页面:ionic g page XXX...

2019-03-24 16:39:31 588 3

原创 springBoot——配置文件

目录1.配置文件说明2.YAML语法3.配置文件值注入4.@Value获取值和@ConfigurationProperties获取值比较5.配置文件注入值数据校验6.@PropertySource&amp;amp;amp;@ImportResource&amp;amp;amp;@Bean7. 配置文件占位符8.Profile9.配置文件加载位置1.配置文件说明SpringBoot使用一个全局的配置文件,配置文件名是固定的;...

2019-03-17 10:00:20 392 1

转载 GET和POST两种基本请求方法的区别

GET和POST是HTTP请求的两种基本方法,要说它们的区别,接触过WEB开发的人都能说出一二。 最直观的区别就是GET把参数包含在URL中,POST通过request body传递参数。 你可能自己写过无数个GET和POST请求,或者已经看过很多权威网站总结出的他们的区别,你非常清楚知道什么时候该用什么。 当你在面试中被问到这个问题,你的内心充满了自信和喜悦。你轻...

2019-02-25 18:21:31 1341 2

原创 List去除null元素

方法一:使用 for 循环处理集合思路:这种处理方式是把要处理的集合进行遍历,取出其中不为空的元素,添加到新的集合中,代码如下:public static &lt;T&gt; List&lt;T&gt; removeNull(List&lt;? extends T&gt; oldList) { // 临时集合 List&lt;T&gt; listTemp = new Arr...

2019-02-25 16:58:25 3973 4

原创 ArrayList、LinkedList、HashMap、LinkedHashMap区别

ArrayList:无序集合LinkedList:有序集合,LinkedList链表由一系列表项连接而成。一个表项总是包含3个部分:元素内容,前驱表和后驱表,如图所示:在下图展示了一个包含3个元素的LinkedList的各个表项间的连接关系。在JDK的实现中,无论LikedList是否为空,链表内部都有一个header表项,它既表示链表的开始,也表示链表的结尾。表项header的后驱表...

2019-02-24 19:55:25 6170 3

原创 【java】日期精确到秒的两种方法

方法一:日期类型精确到秒 Date startTime =new Date(); Date endTime =new Date();Calendar calendar = Calendar.getInstance(); calendar.set(Calendar.HOUR_OF_DAY, 0); ...

2019-02-07 16:42:45 17311 4

原创 mysql 创建用户、授权、修改密码、删除

一. 创建用户命令:CREATE USER 'username'@'host' IDENTIFIED BY 'password';说明:username:你将创建的用户名 host:指定该用户在哪个主机上可以登陆,如果是本地用户可用localhost,如果想让该用户可以从任意远程主机登陆,可以使用通配符% password:该用户的登陆密码,密码可以为空,如果为空则该用户可以不...

2019-02-03 17:23:46 332 1

原创 java SDK服务端推送 --极光推送(JPush)

        消息推送在APP应用中越来越普遍,来记录一下项目中用到的一种推送方式,对于Andriod它并没有自己的原生推送机制,一种简单的推送方式是采用第三方推送服务的方式,即通过嵌入SDK使用第三方提供的推送服务,主流的有百度云推送,极光推送,友盟,个推、亚马逊等等。本篇博文只介绍采用极光推送的方式。        如果你是一个新手,建议你先看完本篇博客,然后在去看官网,这样也许上手会快...

2019-01-21 19:06:38 11210 11

原创 Maven根据Profiled读取不同配置文件

 前言在日常开发中,我们大多都会有开发环境(dev)、测试环境(test)、生产环境(prod),不同环境的参数肯定不一样,我们需要在打包的时候,不同环境打不同当包,如果手动改,一方面效率低,容易出错,而且每次打包都改动,非常麻烦,所以Maven给我们提供了profile的配置。 正文Maven resources plugin支持明确声明&lt;directory&gt;指定...

2019-01-15 15:38:55 660 4

原创 jenkins新建job和job配置

前言:jenkins里的最常用的功能就是job的构建,即任务的构建,本篇文章主要介绍job的配置。 一、持续集成的优点1、解放劳动力;2、避免人为失误;3、提高效率;4、质量持续反馈;5、质量保障; 二、jenkins持续集成的体系Linux + svn+ Jenkins + Maven + Jdk 三、配置Job在左边栏列表选择"New 任...

2018-12-30 17:28:33 10209 5

原创 Nginx localtion配置规则及优先级

前言     nginx的location块是配置请求的路由,以及各种页面的处理情况。这篇文章主要介绍了location的配置规则及其优先级。location语法语法规则: location [=|~|~*|^~] /url/ { … }location表达式类型~ 表示执行一个正则匹配,区分大小写 ~* 表示执行一个正则匹配,不区分大小写 ^~ 表示普通字符匹配。使用前缀...

2018-12-30 17:10:35 1525 2

原创 linux服务器集群配置免密

目录 配置免密的背景:正文:前提:1、生成公钥和私钥文件2、将公钥文件内容导入到本机认证文件3、将认证文件远程拷贝到4这台服务器的root/.ssh/目录下4.验证配置免密的背景:       比如现在有两台在同一个局域网内的服务器192.168.1.3和192.168.1.4。(以下简称3和4),3这台服务器分配了外网ip,想要对3这台服务器进行操作,仅仅...

2018-12-02 11:31:14 746 2

原创 Jenkins+maven+svn配置

 上一篇详细介绍完了安装,这一篇介绍一下安装完成后的自动化部署过程:一、安装maven环境Linux 环境下安装Maven注:最好安装低版本的maven,高版本会出现一些maven与jenkins不兼容的问题。二、jenkins配置1.系统管理--&gt;插件管理--&gt;Available因为我们需要构建Java项目,所以需要安装的插件:一个Maven插件 ...

2018-11-25 23:44:46 301 2

原创 zTree 拖拽排序

 首先配置zTree的相关属性 var setting = { callback: { beforeDrop: beforeDrog//用于捕获节点拖拽操作结束之前的事件回调函数,并且根据返回值确定是否允许此拖拽操作 } , ...

2018-11-18 18:36:34 680 2

原创 Mycat+druid+zk实现多租户

前言Mycat的应用场景之一就是实现多租户,多租户应用,每个应用一个库,但应用程序只连接 Mycat,从而不改造程序本身,实现多租户化;接下来我们使用mycat,结合druid拦截sql添加注释头,利用zk修改mycat配置文件中的schema、dataNode节点等信息,来实现多租户。三种实现方案多租户在数据存储上存在三种主要的方案,分别是:独立数据库这种方案一个租户一个数据...

2018-11-09 10:36:06 642

kindeditor-富文本框编辑器插件

富文本框编辑器插件,JSP兼用,分享给大家,希望可以帮助到有同样需求的您。

2018-07-22

2017年下半年 软考 设计师 上午真题+答案详解

2017.11月软考设计师上午真题+答案 选择题基础超级详细的解释。

2018-04-16

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

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