自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(65)

原创 webpack4入门到进阶案例实战课程

愿景:"让编程不在难学,让技术与生活更加有趣" 更多教程请访问xdclass.net第一章 webpack4前言第一集 webpack4入门到进阶案例实战课程介绍简介:讲述webpack4课程大纲第二集 webpack模块化打包概念介绍简介:详细介绍webpack,什么是模块化打包webpack是什么webpack其实就是一个JavaScript应用程序的静态模块打包器...

2019-07-19 17:37:55 95

原创 JMeter接口压力测试实战教程

章节一压力测试课程介绍1、2018年亿级流量压测系列之Jmeter4.0课程介绍和效果演示         简介:              讲解课程安排,使用的Jmeter版本               讲课风格:涉及的组件,操作配置多,不会一次性讲解,会先讲部分,然后在后续操作中慢慢补充,更容易消化和理解  2、常用压力测试工具对比       简介:目前...

2018-09-06 09:52:00 887

原创 分布式压测系列之Jmeter4.0第一季

1)Jmeter4.0介绍jmeter是个纯java编写的开源压测工具,apache旗下的开源软件,一开始是设计为web测试的软件,由于发展迅猛,现在可以压测许多协议比如:http、https、soap、ftp、database数据库、LDAP  轻量目录访问协议、TCP、SOMP(简单邮件协议)等,由于是纯java编写,可以在苹果、window或者Linux下运行,全功能的测试IDE,允许快...

2018-04-01 10:29:34 4513 4

转载 我以为我对Mysql索引很了解,直到我遇到了阿里的面试官

相信很多人对于MySQL的索引都不陌生,索引(Index)是帮助MySQL高效获取数据的数据结构。因为索引是MySQL中比较重点的知识,相信很多人都有一定的了解,尤其是在面试中出现的频率特别高。楼主自认为自己对MySQL的索引相关知识有很多了解,而且因为最近在找工作面试,所以单独复习了很多关于索引的知识。但是,我还是图样图森破,直到我被阿里的面试官虐过之后我才知道,自己在索引方面的知识,只...

2019-11-01 15:40:27 102

转载 重新发明哈希表 Hashtable

Hashtable在实际中到底有什么应用? 它的内部到底在干什么? 搞清楚它的内部结构有什么用? ...  哈希表Hashtable是计算机中最常见也最基本的数据结构之一,但是有的CS基础不扎实的学习者,其实还是对这个结构一知半解,时时感到困惑。对于这部分朋友,不妨尝试一种全新的方式——从创造者的角度,自己把这个结构重新发明一遍。这个想法听来奇怪,这...

2019-01-24 16:06:10 102

转载 Java 实现单例模式的 9 种方法

一. 什么是单例模式因进程需要,有时我们只需要某个类同时保留一个对象,不希望有更多对象,此时,我们则应考虑单例模式的设计。二. 单例模式的特点 单例模式只能有一个实例。 单例类必须创建自己的唯一实例。 单例类必须向其他对象提供这一实例。 三. 单例模式VS静态类在知道了什么是单例模式后,我想你一定会想到静态类,“既然只使用一个对象,为何不干脆使用静态类?”...

2019-01-24 16:03:52 126

转载 微服务改造—架构设计

随着我厂业务需求的压力逐渐增长,同时基础设施的不断完善,系统架构的微服务改造被正式提上日程。从微服务改造的目标架构蓝图设计开始讨论,架构组进行了整整两天的激烈讨论,明确了很多的业务边界。在此过程中我学习到很多知识,结合之前的一些经验在此总结分享一下。00 前言至于为什么构建微服务架构的系统设计,如何构建微服务架构,这些问题有很多文章介绍,我自己也有一篇文章介绍相关话题,感兴趣的同学...

2018-12-19 10:21:47 140

转载 阿里P9架构师简述从单机至亿级流量大型网站系统架构的演进过程

阶段一、单机构建网站网站的初期,我们经常会在单机上跑我们所有的程序和软件。此时我们使用一个容器,如tomcat、jetty、jboos,然后直接使用JSP/servlet技术,或者使用一些开源的框架如maven+spring+struct+hibernate、maven+spring+springmvc+mybatis;最后再选择一个数据库管理系统来存储数据,如mysql、sqlserver、...

2018-12-12 09:55:10 141

转载 Redis分布式锁的正确实现方式(Java版)

前言分布式锁一般有三种实现方式:1. 数据库乐观锁;2. 基于Redis的分布式锁;3. 基于ZooKeeper的分布式锁。本篇博客将介绍第二种方式,基于Redis实现分布式锁。虽然网上已经有各种介绍Redis分布式锁实现的博客,然而他们的实现却有着各种各样的问题,为了避免误人子弟,本篇博客将详细介绍如何正确地实现Redis分布式锁。可靠性首先,为了确保分布式锁可用,我们至少要确保锁的...

2018-11-22 10:13:40 78

原创 互联网架构多线程并发编程高级教程(下)

基础篇幅:线程基础知识、并发安全性、JDK锁相关知识、线程间的通讯机制、JDK提供的原子类、并发容器、线程池相关知识点 高级篇幅:ReentrantLock源码分析、对比两者源码,更加深入理解读写锁,JAVA内存模型、先行发生原则、指令重排序 环境说明:    idea、java8、maven  第四章--锁    01 锁的分类        自旋锁:...

2018-11-09 11:02:47 110

原创 互联网架构多线程并发编程高级教程(上)

基础篇幅:线程基础知识、并发安全性、JDK锁相关知识、线程间的通讯机制、JDK提供的原子类、并发容器、线程池相关知识点 高级篇幅:ReentrantLock源码分析、对比两者源码,更加深入理解读写锁,JAVA内存模型、先行发生原则、指令重排序 环境说明:    idea、java8、maven 第一章 并发简介    01 课程简介        为...

2018-11-09 10:54:21 365

转载 浅谈后端面试指南

面试是一次双向的沟通过程,对求职者而言是找到心仪的东家,对公司而言是招揽合适的人才。面试官的目的是考察求职者能力,评估和岗位的匹配程度,绝非用稀奇古怪的题目面倒求职者。本人近两年面试大几十位求职者,深感作为一个面试者不易,做好一个面试官更难,如何在极其有限的时间内准确的考察出求职的技术能力,对面试官的考验很大。本文关注服务端技术能力的考察,包括考察的范围、方式和注意事项。性格、合作能力、抗压能...

2018-11-01 15:50:44 164

转载 一句话的事儿,Head first 设计模式

head first 设计模式,是比较有趣的一本设计模式的书。在学校里看书和在工作时看书,意义是不一样的。在学校时是为读书而读书,我们可以从0到1,我们有的是时间。但是工作后就不一样。我觉得这时的书更像是打通自己任督二脉的武功秘诀。在平时工作中,杂七杂八地学了一些东西,但是却不能融会贯通。所以还需要通过书来厘清你的思路。这是写本文的出发点,也是我的碎碎念!看完该书后,转换成自己的语言,...

2018-10-31 14:25:57 70

转载 binlog2sql实现MySQL误操作的恢复

对于MySQL数据库中的误操作删除数据的恢复问题,可以使用基于MySQL中binlog做到类似于闪回或者生成反向操作的SQL语句来实现,是MySQL中一个非常实用的功能。原理不难理解,基于MySQL的row格式的binlog中,记录历史的增删改SQL信息,基于此解析出来对应的SQL语句(回滚的话就是反向的SQL语句)。在格式为binlog格式为row的日志模式下,binlog中的内容记录了数据...

2018-10-25 16:53:08 145

原创 18年录制selenium自动化测试视频教程 软件测试unittest教程-张颜源-专题视频课程...

自动化测试课程是2018年10月录制,采用selenium3和python3.7版本,分为9章36节课,零基础讲解自动化测试,selenium安装到八种元素定位,用户事件处理,等待时间处理,到单元测试框架Unitest整合实战,整合自动化测试项目实战,新版本HTMLTestRnner生成测试报告,自动化发送测试报告邮件等核心知识点...

2018-10-19 22:25:06 743 1

原创 18年多线程视频教程并发编程互联网架构视频java面试知识-张颜源-专题视频课程...

2018年10月并发编程及原理视频培训教程:囊括线程基础知识、线程安全问题、JDK锁机制、线程建通信、并发工具、线程池等详细知识点,面试高频知识点源码深入剖析、笔记详细。全套67节课 基础理论+项目实战,由浅入深,层层深入,带您剖析并发编程原理。...

2018-10-19 17:22:33 535

转载 正确的打日志姿势

使用slf4j使用门面模式的日志框架,有利于维护和各个类的日志处理方式统一。 实现方式统一使用: Logback框架打日志的正确方式什么时候应该打日志当你遇到问题的时候,只能通过debug功能来确定问题,你应该考虑打日志,良好的系统,是可以通过日志进行问题定为的。 当你碰到if…else 或者 switch这样的分支时,要在分支的首行打印日志,用来确定进入了哪个分支 经常以功能...

2018-10-16 09:45:25 51

转载 谈谈JDK8中的字符串拼接

字符串拼接问题应该是每个Java程序员都熟知的事情了,几乎每个Java程序员都读过关于StringBuffer/StringBuilder来拼接字符串。在大多数的教程中,也许你会看到用+号拼接字符串会生成多个String,导致性能过差,建议使用StringBuffer/StringBuilder来拼接。可是真的是这样的吗?本文在JDK8中做了如下实验:public static ...

2018-10-15 10:15:59 67

转载 Spring中获取request的几种方法,及其线程安全性分析

前言本文将介绍在Spring MVC开发的web系统中,获取request对象的几种方法,并讨论其线程安全性。概述在使用Spring MVC开发Web系统时,经常需要在处理请求时使用request对象,比如获取客户端ip地址、请求的url、header中的属性(如cookie、授权信息)、body中的数据等。由于在Spring MVC中,处理请求的Controller、Service等...

2018-10-13 09:00:47 68

转载 详解MySQL基准测试和sysbench工具

前言作为一名后台开发,对数据库进行基准测试,以掌握数据库的性能情况是非常必要的。本文介绍了MySQL基准测试的基本概念,以及使用sysbench对MySQL进行基准测试的详细方法。文章有疏漏之处,欢迎批评指正。一、基准测试简介1、什么是基准测试数据库的基准测试是对数据库的性能指标进行定量的、可复现的、可对比的测试。基准测试与压力测试基准测试可以理解为针对系统的一种压力测...

2018-10-12 09:51:41 80

原创 分享深入学习MongoDB pdf版

可以关注公众号,回复“干货”即可获取《深入学习MongoDB》,还有更多的干货也可在公众号中获取

2018-10-11 18:00:49 1236

转载 Java面试:投行的15个多线程和并发面试题

多线程和并发问题已成为各种 Java 面试中必不可少的一部分。如果你准备参加投行的 Java 开发岗位面试,比如巴克莱银行(Barclays)、花旗银行(Citibank)、摩根史坦利投资公司(Morgan Stanley),你会遇到很多有关多线程的面试题。多线程和并发是投行面试的热门知识点,尤其是在面试有关电子交易开发工作时,他们喜欢用棘手的 Java 线程面试题轰炸面试者。他们希望确保面试者对...

2018-10-11 09:49:36 113

原创 《分布式Java应用基础与实践》PDF下载地址

本书分为基于Java实现网络通信、RPC;基于SOA实现大型分布式Java应用;编写高性能Java应用;构建高可用、可伸缩的系统四个部分,共七章内容。可以关注公众号,回复“干货”即可获取《分布式Java应用基础与实践》,还有更多关于前端、后端、测试等干货也可在公众号中获取...

2018-10-10 14:36:03 1461 1

转载 写给想要做自动化测试的人

接触了不少同行,由于他们之前一直做手工测试,现在很迫切希望做自动化测试,其中不乏工作5年以上的人。 本人从事软件自动化测试已经近5年,从server端到web端,从API到mobile,切身体会到自动化带来的好处与痛楚,在此分享一下个人体会。想做自动化,首先得了解一下自动化测试的一些常见问题:自动化测试一些问题 什么是自动化测试?  自动化测试,顾名思义,自动完成测试工作。通过一...

2018-10-10 11:27:46 374

转载 Java日志框架:slf4j作用及其实现原理

简单回顾门面模式slf4j是门面模式的典型应用,因此在讲slf4j前,我们先简单回顾一下门面模式,门面模式,其核心为外部与一个子系统的通信必须通过一个统一的外观对象进行,使得子系统更易于使用。用一张图来表示门面模式的结构为:门面模式的核心为Facade即门面对象,门面对象核心为几个点: 知道所有子角色的功能和责任 将客户端发来的请求委派到子系统中,没有实际业务逻辑...

2018-10-09 09:22:40 62

转载 在 Java 8 中避免 Null 检查

如何预防 Java 中著名的 NullPointerException 异常?这是每个 Java 初学者迟早会问到的关键问题之一。而且中级和高级程序员也在时时刻刻规避这个错误。其是迄今为止 Java 以及很多其他编程语言中最流行的一种错误。Null 引用的发明者 Tony Hoare 在 2009 年道歉,并称这种错误为他的十亿美元错误。我将其称之为自己的十亿美元错误。它的发明是在196...

2018-10-08 10:41:31 130

转载 MySQL中的重做日志(redo log),回滚日志(undo log),以及二进制日志(binlog)的简单总结

MySQL中有六种日志文件,分别是:重做日志(redo log)、回滚日志(undo log)、二进制日志(binlog)、错误日志(errorlog)、慢查询日志(slow query log)、一般查询日志(general log),中继日志(relay log)。其中重做日志和回滚日志与事务操作息息相关,二进制日志也与事务操作有一定的关系,这三种日志,对理解MySQL中的事务操作有着重要...

2018-09-28 10:13:56 80

转载 MySQL Innodb如何找出阻塞事务源头SQL

在MySQL数据库中出现了阻塞问题,如何快速查找定位问题根源?在实验开始前,我们先梳理一下有什么工具或命令查看MySQL的阻塞,另外,我们也要一一对比其优劣,因为有些命令可能在实际环境下可能并不适用。1: show engine innodb status2: Innotop工具3: INNODB_TRX 等系统表下面我们理论联系实际,通过实验来测试总结一下这个问题。首先构造测试环...

2018-09-27 10:19:13 85

转载 Java 性能优化的五大技巧

要对你的 Java 代码进行优化,需要理解 Java 不同要素之间的相互作用,以及它是如何与其运行时的操作系统进行交互的。使用下面这五个技巧和资源,开始学习如何分析和优化你的代码吧。在我们开始之前,你也许会担心许可的问题。Java 为 Oracle 公司所有,遵循 Oracle 的 BCL 许可,该许可证不是一个免费/开源许可证。即便如此, 仍然有许多开源项目由 Oracle 公司的 Java...

2018-09-25 16:58:34 63

转载 Java异常处理的9个最佳实践

无论你是新手还是资深程序员,复习下异常处理的实践总是一件好事,因为这能确保你与你的团队在遇到问题时能够处理得了它。在 Java 中处理异常并不是一件易事。新手觉得处理异常难以理解,甚至是资深开发者也会花上好几个小时来讨论是应该抛出抛异常还是处理异常。这就是为何大多数开发团队都拥有一套自己的异常处理规范。如果你初进团队,你也许会发现这些规范和你曾使用的规范大相径庭。尽管如此,这里还是有一...

2018-09-20 15:09:36 46

转载 Java面试:投行的15个多线程和并发面试题

 多线程和并发问题已成为各种 Java 面试中必不可少的一部分。如果你准备参加投行的 Java 开发岗位面试,比如巴克莱银行(Barclays)、花旗银行(Citibank)、摩根史坦利投资公司(Morgan Stanley),你会遇到很多有关多线程的面试题。多线程和并发是投行面试的热门知识点,尤其是在面试有关电子交易开发工作时,他们喜欢用棘手的 Java 线程面试题轰炸面试者。他们希望确保面...

2018-09-18 17:42:52 65

原创 敏捷持续集成详解

敏捷持续集成简介什么是持续集成?    持续集成是一种软件开发实践,即团队开发成员经常集成他们的工作,通过每个成员每天至少集成一次,也就意味着每天可能会发生多次集成。每次集成都通过自动化的构建(包括编译,发布,自动化测试)来验证,从而尽早地发现集成错误。好处    节省人力成本    加快软件开发进度    实时交付整体流程    成员通过git提交代码--》持续集成引擎来去代码...

2018-09-14 09:08:27 186

原创 gitlab系列详解

虚拟机的安装1.安装virtualboxhttps://www.virtualbox.org/2.安装centos6.63.配置网络右键-->网络-->网卡2-->host-onlycd /etc/sysconfig/network-scripts/vi ifcfg-eth0将此处改为yes ONBOOT=yes此时可ping外网cp ifcfg-eth0...

2018-09-13 11:17:45 766

原创 git系列讲解

1.git是什么呢?维基百科给出的定义: git是一个分布式版本控制软件,最初由(Linus Torvalds)创作什么是版本控制?项目经理与程序员的恩怨情仇企业真实案例:开发了a功能,之后项目所要改成b功能,开发完之后又要改c功能,最后又说还是用回a功能。没有git等版本控制软件之前,如何做版本控制。有了git之后,如何做版本控制。2.git的作用是什么?版本控制3.gi...

2018-09-13 09:35:03 70

原创 微服务SpringCloud+Docker入门到高级实战(目录)

 第一章 课程介绍和学习路线 1、微服务架构SpringCloud课程介绍    简介:课程介绍和课程大纲讲解,讲课风格和重点内容理解技巧2、技术选型和学后水平    简介:课程所需基础和技术选型讲解,学完课程可以到达怎样的程度,第二章 架构演进和分布式系统基础知识1、传统架构演进到分布式架构    简介:讲解单机应用和分布式应用架构演进基础知识 (画图)2、微服务核心基...

2018-09-12 12:46:23 575

原创 微服务SpringCloud+Docker入门到高级实战(教程详情)

第一章 课程介绍和学习路线 1、微服务架构SpringCloud课程介绍    简介:课程介绍和课程大纲讲解,讲课风格和重点内容理解技巧2、技术选型和学后水平    简介:课程所需基础和技术选型讲解,学完课程可以到达怎样的程度,        1、IDEA JDK8 Maven SpringBoot基础 Linux    2、理解掌握并开发SpringCloud里面主流架构和组件的...

2018-09-12 12:44:43 1157

原创 2018年ElasticSearch6.2.2教程ELK搭建日志采集分析系统(教程详情)

章节一  2018年 ELK课程计划和效果演示1、课程安排和效果演示    简介:课程介绍和主要知识点说明,ES搜索接口演示,部署的ELK项目演示    es: localhost:9200    kibana http://localhost:5601/章节二 elasticSearch 6.2版本基础讲解到阿里云部署实战2、搜索引擎知识介绍和相关框架    简介:介绍搜索...

2018-09-08 10:11:13 676

原创 2018年ElasticSearch6.2.2教程ELK搭建日志采集分析系统(目录)

章节一  2018年 ELK课程计划和效果演示1、课程安排和效果演示       简介:课程介绍和主要知识点说明,ES搜索接口演示,部署的ELK项目演示章节二 elasticSearch 6.2版本基础讲解到阿里云部署实战2、搜索引擎知识介绍和相关框架       简介:介绍搜索的基本概念,市面上主流的搜索框架elasticSearch和solr等对比       什么是搜...

2018-09-08 10:09:04 425

原创 Websocket视频教程SpringBoot+Maven整合(详情)

1、大话websocket及课程介绍       简介:              websocket介绍、使用场景分享、学习课程需要什么基础              websocket介绍:                     WebSocket协议是基于TCP的一种新的网络协议。它实现了浏览器与服务器全双工(full-duplex)通信——允许服务器主动发送信息给客户端...

2018-09-07 09:10:00 2586

原创 零基础快速入门SpringBoot2.0教程 (四)

一、JMS介绍和使用场景及基础编程模型       简介:讲解什么是小写队列,JMS的基础知识和使用场景       1、什么是JMS: Java消息服务(Java Message Service),Java平台中关于面向消息中间件的接口       2、JMS是一种与厂商无关的 API,用来访问消息收发系统消息,它类似于JDBC(Java Database Connectivity)...

2018-09-05 09:35:26 136

空空如也

空空如也

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