自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(341)
  • 收藏
  • 关注

原创 let 和 const 命令

let 和 const 命令

2022-10-13 17:41:11 154 1

转载 通俗易懂的Vue异步更新策略及 nextTick 原理

通俗易懂的Vue异步更新策略及 nextTick 原理

2022-10-13 17:38:40 1784 2

转载 mysql explain用法和结果的含义

explain显示了mysql如何使用索引来处理select语句以及连接表。可以帮助选择更好的索引和写出更优化的查询语句。使用方法,在select语句前加上explain就可以了:如:explainselectsurname,first_nameforma,bwherea.id=b.idEXPLAIN列的解释:table:显示这一行的数据是关于哪张表的type:...

2019-10-09 14:32:17 226

转载 常用的服务发现对比(Consul、zookeeper、etcd、eureka)

这里就平时经常用到的服务发现的产品进行下特性的对比,首先看下结论: Feature Consul Zookeeper Etcd Eureka 服务健康检查 服务状态,内存,硬盘等 (弱)长连接,keepalive 连接心跳 可配支持 多数据中心 支持 — — — kv存储服务 支持...

2019-09-23 10:54:34 816

转载 Java实现缓存(LRU,FIFO)

出处:https://www.cnblogs.com/liuyang0/p/6664586.html现在软件或者网页的并发量越来越大了,大量请求直接操作数据库会对数据库造成很大的压力,处理大量连接和请求就会需要很长时间,但是实际中百分之80的数据是很少更改的,这样就可以引入缓存来进行读取,减少数据库的压力。常用的缓存有Redis和memcached,但是有时候一些小场景就可以直接使用Jav...

2019-06-17 10:27:00 244

转载 关于HttpClient重试策略的研究

出处:https://www.cnblogs.com/kingszelda/p/8886403.html一、背景 由于工作上的业务本人经常与第三方系统交互,所以经常会使用HttpClient与第三方进行通信。对于交易类的接口,订单状态是至关重要的。 这就牵扯到一系列问题: HttpClient是否有默认的重试策略?重试策略原理?如何禁止重试? 接下来,本文将从源码中探讨...

2019-06-14 16:50:07 752

转载 HttpUrlConnection 基础使用

出处:https://www.cnblogs.com/libertycode/p/5979260.htmlFromhttps://developer.android.com/reference/java/net/HttpURLConnection.htmlHttpUrlConnection:A URLConnection with support for HTTP-specific ...

2019-06-14 15:55:05 1678

转载 HttpClient 4.3与4.3版本以下版本 close 比较

出处:https://blog.csdn.net/u011136197/article/details/78755935网上利用java发送http请求的代码很多,一搜一大把,有的利用的是java.net.*下的HttpURLConnection,有的用httpclient,而且发送的代码也分门别类。今天我们主要来说的是利用httpclient发送请求。httpclient又可分为ht...

2019-06-14 15:42:38 256

转载 Http 持久连接与 HttpClient 连接池

出处:https://www.cnblogs.com/kingszelda/p/8988505.html一、背景 HTTP协议是无状态的协议,即每一次请求都是互相独立的。因此它的最初实现是,每一个http请求都会打开一个tcp socket连接,当交互完毕后会关闭这个连接。 HTTP协议是全双工的协议,所以建立连接与断开连接是要经过三次握手与四次挥手的。显然在这种设计中,每次...

2019-06-14 15:31:56 269

转载 spring-session(二)与spring-boot整合实战

出处:https://www.cnblogs.com/lxyit/p/9720159.html前两篇介绍了spring-session的原理,这篇在理论的基础上再实战。spring-boot整合spring-session的自动配置可谓是开箱即用,极其简洁和方便。这篇文章即介绍spring-boot整合spring-session,这里只介绍基于RedisSession的实战。原理篇是基...

2019-06-04 11:04:12 638

转载 spring-session(一)揭秘

出处:https://www.cnblogs.com/lxyit/p/9672097.html前言在开始spring-session揭秘之前,先做下热脑(活动活动脑子)运动。主要从以下三个方面进行热脑:为什么要spring-session 比较traditional-session方案和spring-session方案 JSR340规范与spring-session的透明继承一....

2019-06-04 11:02:54 270

转载 记一次gitlab服务器迁移记录

出处:https://www.cnblogs.com/wenwei-blog/p/6362829.html公司更换了新的服务器,需要把原先的gitlab迁移到新的服务器上。1.迁移准备工作和思路:从a服务器迁移到b服务器,由于Gitlab自身的兼容性问题,高版本的Gitlab无法恢复低版本备份的数据,需要注意在b服务器部署和a服务器一样版本的gitlab,部署好环境后开始备份和数据迁移....

2019-06-03 20:28:01 187

转载 Spring boot 使用freemarker ftl 引入静态资源

出处:https://www.jianshu.com/p/861b8e9e2c79我们知道在传统的Spring MVC项目中需要配置静态资源文件夹才能访问到静态文件,boot中同样如此,不过boot追求的少的配置,讲究开箱即用,所以boot给我们默认了几个静态文件路径classpath:/staticclasspath:/publicclasspath:/resourcesclas...

2019-05-27 17:33:11 5081

转载 nginx location proxy_pass 后面的url 加与不加/的区别.

出处:https://www.cnblogs.com/jiuhaoyun/p/10592273.html这里我们分4种情况讨论这里我们请求的网站为:192.168.1.123:80/static/a.html整个配置文件是server{port 80,server name 192.168.1.123location /static{proxy_pass 19...

2019-05-27 15:35:39 206

转载 CSRF理解与防御

出处:https://www.cnblogs.com/lsdb/p/9591399.html一、说明记得以前去面试技术也不太会但你总得讲点东西,让面试时间长一些让面试官觉得你基础还可以,当时选的就是名头比较大的OWASP TOP 10。TOP 10嘛你总得拿出至少三个点来讲的细一些以证明你是真的知道而不是背概念。纵观TOP 10 注入和XSS是比较有把握的,其他什么“失效的认证和会话管...

2019-05-23 11:29:00 181

转载 Https协议简析及中间人攻击原理

出处:https://www.cnblogs.com/gordon0918/p/5237717.html1、基础知识1.1 对称加密算法对称加密算法的特点是加密密钥和解密密钥是同一把密钥K,且加解密速度快,典型的对称加密算法有DES、AES等对称加密算法加密流程和解密流程1.2 非对称加密算法...

2019-05-20 16:54:00 209

转载 微服务架构集大成者—Spring Cloud

出处:https://www.jianshu.com/p/3899d7f47303软件是有生命的,你做出来的架构决定了这个软件它这一生是坎坷还是幸福。本文不是讲解如何使用Spring Cloud的教程,而是探讨Spring Cloud是什么,以及它诞生的背景和意义。1 背景2008年以后,国内互联网行业飞速发展,我们对软件系统的需求已经不再是过去”能用就行”这种很low的档次了...

2019-04-23 08:34:47 398

转载 7张图了解 Spring Cloud 的整体构架!

出处:https://cloud.tencent.com/developer/article/1142530Spring Cloud整体核心架构只有一点:Rest服务,也就是说在整个Spring Cloud配置过程之中,所有的配置处理都是围绕着Rest完成的,在这个Rest处理之中,一定要有两个端:服务的提供者(Provider)、服务的消费者(Consumer),所以对于整个Spring C...

2019-04-22 23:41:32 803

转载 Spring Cloud的架构

出处:https://blog.csdn.net/qq_33394088/article/details/80210941Spring Cloud架构图Eureka用于服务注册和发现,利用了客户端的服务发现,所以它内部需要Ribbon作为客户端负载均衡。Hystrix,客户端容错保护,服务熔断、请求缓存、请求合并、依赖隔离。Feign,声明式服务调用。Bus,消息总线,配合C...

2019-04-22 23:34:36 90

转载 Springcloud 的Eureka和ZooKeeper比较

出处:https://www.cnblogs.com/vincent928/p/10084176.html关于CAP理论,可以去看看阮一峰的文章[http://www.ruanyifeng.com/blog/2018/07/cap.html]C(一致性)A(可用性)P(分区容错性)ZooKeeper:zookeeper保证了cp(一致性、分区容错性),但是作为服务注册中心,我们可以容忍...

2019-04-22 23:18:27 159

转载 一文带你了解华为私有云

出处:http://baijiahao.baidu.com/s?id=1604422231477394724&wfr=spider&for=pc我们知道,云计算包括公有云、私有云、混合云三块。我们普通消费者和小微企业一般用到的云计算属于公有云范畴,而私有云一般针对的是政企等大中型客户。对于公有云,国内领先的主要是阿里云和腾讯云,国外领先的是亚马逊、微软、谷歌这些科技巨头。下...

2019-04-22 22:44:36 4990

转载 私有云行业现状

出处:http://www.sohu.com/a/138522038_610730随着技术的发展,公有云、私有云所提供的业务已经在部分领域互相融合,并且在行业客户方面也有较大突破,不再局限于IT企业而渗入到了制造、银行、汽车等诸多行业中。相比公有云,私有云具有本地部署、管理受控、带宽充裕等特点而受到客户青睐。本章首先将介绍公有云与私有云在通用标准上的区别,然后再通过私有云在一些典型行业落地...

2019-04-22 22:31:27 3036

转载 DevOps简介

出处:https://www.cnblogs.com/liufei1983/p/7152013.htmlDevOps一词的来自于Development和Operations的组合,突出重视软件开发人员和运维人员的沟通合作,通过自动化流程来使得软件构建、测试、发布更加快捷、频繁和可靠。DevOps是为了填补开发端和运维端之间的信息鸿沟,改善团队之间的协作关系。不过需要澄清的一点是,从开发...

2019-04-22 22:24:49 155

转载 Zookeeper 架构原理

出处:https://blog.csdn.net/sunjin9418/article/details/801383701.Zookeeper是什么Zookeeper 作为一个分布式的服务框架,主要用来解决分布式集群中应用系统的一致性问题,它能提供基于类似于文件系统的目录节点树方式的数据存储,但是 Zookeeper 并不是用来专门存储数据的,它的作用主要是用来维护和监控你存储的数据的状态变...

2019-04-22 16:31:41 112

转载 Zookeeper原理架构

出处:https://www.cnblogs.com/ChrisMurphy/p/6683397.htmlZookeeper到底是什么!?学一个东西,不搞明白他是什么东西,哪还有心情学啊!!首先,Zookeeper是Apache的一个java项目,属于Hadoop系统,扮演管理员的角色。然后看到官网那些专有名词,实在理解不了。在Zookeeper的官网上有这么一句话:ZooK...

2019-04-22 16:28:52 93

转载 ZooKeeper:架构和算法

出处:https://www.cnblogs.com/biterror/p/6909899.htmlZooKeeper主要用来解决分布式应用场景中存在的一些问题,如:统一命名服务、状态同步服务、集群管理、分布式应用配置管理等。它支持Standalone模式和分布式模式,在分布式模式下,能够为分布式应用提供高性能和可靠地协调服务,而且使用ZooKeeper可以大大简化分布式协调服务的实现,为...

2019-04-22 16:27:07 102

转载 Zookeeper的sync操作是什么

出处:https://www.jianshu.com/p/44a1b28b1c98笔者关注ZooKeeper有一段时间,从ZooKeeper提供的API中,发现有一个比较有意思的API,叫sync。但一直不太明白sync API的含义。从官方的文档里,找到了这段话:Sometimes developers mistakenly assume one other guarantee t...

2019-04-22 14:56:59 3441

转载 Hibernate---架构

出处:https://www.cnblogs.com/xiaobaizhiqian/p/7910707.htmlHibernate 架构是分层的,作为数据访问层,你不必知道底层 API 。Hibernate 利用数据库以及配置数据来为应用程序提供持续性服务(以及持续性对象)。下面是一个非常高水平的 Hibernate 应用程序架构视图。下面是一个详细的 Hibernate 应用程序...

2019-04-18 16:23:07 90

转载 MyBatis架构设计及源代码分析系列(一):MyBatis架构

出处:https://www.cnblogs.com/mengheng/p/3739610.html如果不太熟悉MyBatis使用的请先参见MyBatis官方文档,这对理解其架构设计和源码分析有很大好处。一、概述MyBatis并不是一个完整的ORM框架,其官方首页是这么介绍自己The MyBatis data mapper framework makes it easier to...

2019-04-18 16:01:02 105

转载 BIO与NIO、AIO的区别(容易理解的解释)

IO的方式通常分为几种,同步阻塞的BIO、同步非阻塞的NIO、异步非阻塞的AIO。一、BIO在JDK1.4出来之前,我们建立网络连接的时候采用BIO模式,需要先在服务端启动一个ServerSocket,然后在客户端启动Socket来对服务端进行通信,默认情况下服务端需要对每个请求建立一堆线程等待请求,而客户端发送请求后,先咨询服务端是否有线程相应,如果没有则会一直等待或者遭到拒绝...

2019-04-15 19:34:47 114

转载 Java 浅拷贝和深拷贝的理解和实现方式

出处:https://www.cnblogs.com/shakinghead/p/7651502.htmlJava中的对象拷贝(Object Copy)指的是将一个对象的所有属性(成员变量)拷贝到另一个有着相同类类型的对象中去。举例说明:比如,对象A和对象B都属于类S,具有属性a和b。那么对对象A进行拷贝操作赋值给对象B就是:B.a=A.a; B.b=A.b;在程序中拷贝对象是很常见的,...

2019-04-09 19:47:24 90

转载 深入理解java垃圾回收算法

Java虚拟机的内存区域中,程序计数器、虚拟机栈和本地方法栈三个区域是线程私有的,随线程生而生,随线程灭而灭;栈中的栈帧随着方法的进入和退出而进行入栈和出栈操作,每个栈帧中分配多少内存基本上是在类结构确定下来时就已知的,因此这三个区域的内存分配和回收都具有确定性。垃圾回收重点关注的是堆和方法区部分的内存。常用的垃圾回收算法有:(1).引用计数算法:给对象中添加一个引用计数器,每当有一个...

2019-04-02 15:57:58 107

转载 HashMap的hash()

为什么要有HashMap的hash()方法,难道不能直接使用KV中K原有的hash值吗?在HashMap的put、get操作时为什么不能直接使用K中原有的hash值。 /** * Computes key.hashCode() and spreads (XORs) higher bits of hash * to lower. Because the table ...

2019-04-01 19:20:50 146

转载 Java引用总结--StrongReference、SoftReference、WeakReference、PhantomReference

1 Java引用介绍 Java从1.2版本开始引入了4种引用,这4种引用的级别由高到低依次为: 强引用 > 软引用 > 弱引用 > 虚引用⑴强引用(StrongReference) 强引用是使用最普遍的引用。如果一个对象具有强引用,那垃圾回收器绝不会回收它。当内存空间不足,Java虚拟机宁愿抛出OutOfMemoryError错误,使程序异...

2019-04-01 16:46:16 103

转载 Java 并发编程:核心理论

Java并发编程系列: Java 并发编程:核心理论 Java并发编程:Synchronized及其实现原理 Java并发编程:Synchronized底层优化(轻量级锁、偏向锁) Java 并发编程:线程间的协作(wait/notify/sleep/yield/join) Java 并发编程:volatile的使用及其原理   并发编程是Jav...

2019-03-29 16:37:20 85

转载 Linux探秘之用户态与内核态

出处:https://www.cnblogs.com/bakari/p/5520860.html一、Unix/Linux的体系架构  如上图所示,从宏观上来看,Linux操作系统的体系架构分为用户态和内核态(或者用户空间和内核)。内核从本质上看是一种软件——控制计算机的硬件资源,并提供上层应用程序运行的环境。用户态即上层应用程序的活动空间,应用程序的执行必须依托于内核提供的资源,包括...

2019-03-07 11:56:54 100

转载 JAVA中写时复制(Copy-On-Write)Map实现

出处:https://www.cnblogs.com/hapjin/p/4840107.html1,什么是写时复制(Copy-On-Write)容器?写时复制是指:在并发访问的情景下,当需要修改JAVA中Containers的元素时,不直接修改该容器,而是先复制一份副本,在副本上进行修改。修改完成之后,将指向原来容器的引用指向新的容器(副本容器)。2,写时复制带来的影响①由于...

2019-03-07 11:45:18 249

转载 浅谈 Linux下的零拷贝机制

什么是零拷贝维基上是这么描述零拷贝的:零拷贝描述的是CPU不执行拷贝数据从一个存储区域到另一个存储区域的任务,这通常用于通过网络传输一个文件时以减少CPU周期和内存带宽。零拷贝给我们带来的好处:减少甚至完全避免不必要的CPU拷贝,从而让CPU解脱出来去执行其他的任务 减少内存带宽的占用 通常零拷贝技术还能够减少用户空间和操作系统内核空间之间的上下文切换 Linux系统的“...

2019-03-07 11:28:50 130

转载 这可能是目前最透彻的Netty原理架构解析

出处:https://www.toutiao.com/i6620280257846968840本文基于 Netty 4.1 展开介绍相关理论模型,使用场景,基本组件、整体架构,知其然且知其所以然,希望给大家在实际开发实践、学习开源项目方面提供参考。Netty 是一个异步事件驱动的网络应用程序框架,用于快速开发可维护的高性能协议服务器和客户端。JDK 原生 NIO ...

2019-03-07 10:55:44 275

转载 零拷贝

今日看rocketMQ的设计,读到如何提高broker的发送性能,看到了使用mmp(文件内存映射)的技术,零拷贝,提高了数据从文件到内存再到网络的传输效率。这里有点迷糊,所以详细google了一把。特写下来留作记录。内容都是来自于已有的东西,都放到后文的参考文档里面,参考文档比我详细多了,有图有解释,有理论,甚至有代码,如果能看参考文档的原文的话,建议看原文。概念澄清“零拷贝”:在整个发...

2019-03-07 10:54:10 155

空空如也

空空如也

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

TA关注的人

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