自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

小工匠

show me the code ,change the world

  • 博客(985)
  • 资源 (12)
  • 论坛 (1)
  • 收藏
  • 关注

原创 小工匠聊架构文章一览

文章目录超高并发设计技术杂谈超高并发设计小工匠聊架构-超高并发秒杀系统设计 01_总体原则和架构演进小工匠聊架构-超高并发秒杀系统设计 02_数据的动静分离小工匠聊架构-超高并发秒杀系统设计 03_热点数据的处理小工匠聊架构-超高并发秒杀系统设计 04_流量削峰设计小工匠聊架构-超高并发秒杀系统设计 05_服务端性能优化小工匠聊架构-超高并发秒杀系统设计 06_数据一致性小工匠聊架构-超高并发秒杀系统设计 07_Plan B 的设计技术杂谈小工匠聊架构-写给研发工程师的全链路压测小

2020-11-12 00:01:55 86 2

原创 Apache ZooKeeper - 使用原生的API操作ZK

文章目录概述概述前面几篇系列博文我们熟悉了如何通过命令来操作ZK节点数据,下面我们来看下如何使用API来操作主要两种方式原生APICurator今天我们来看下如何使用原生的API操作ZK

2020-11-24 23:56:59 19

原创 NFS - MIPS架构下构建NFS共享目录服务

文章目录概环境信息检查依赖NFS服务端创建共享目录配置文件加载配置文件开机启动启动服务客户端安装测试概环境信息172.168.17.12 (服务端)172.168.17.11 (客户端)检查依赖测试环境,建议关闭防火墙[root@localhost ~]# systemctl stop firewalld.service[root@localhost ~]# systemctl disable firewalld.service[root@localhost ~]# rpm -q

2020-11-24 15:36:14 38 1

原创 小工匠聊架构 - 分布式缓存技术

文章目录why缓存缓存的特征评价缓存的关键指标缓存类型分布式缓存注意事项why缓存缓存是架构设计中一个重要的手段。缓存的主要特点是技术比较简单,同时对性能提升的效果又很显著。使用缓存需要注意几个关键指标:缓存键集合大小、缓存空间的大小以及缓存的使用寿命。这三个指标决定了缓存的有效性、缓存的使用效率、缓存实现的效果缓存的特征评价缓存的关键指标缓存类型分布式缓存注意事项...

2020-11-20 00:06:02 42

原创 小工匠聊架构 - 构建架构思维

文章目录whatwhat架构其实是一种思维方式,是整体与部分之间的关系,以及关键细节的设计与规划。如何把这些关键的细节规划与设计好,如何把各个环节和它们之间的关系梳理好了,就需要用到“架构思维”。如果你有架构思维,主动了解自己的工作在整体中的位置和作用,举个例子你参加一个大系统开发的时候,你熟知自己所做的模块在大系统中的位置,知道该模块和其他重要组成部分之间的关系,进而研究使用更合适的技术和解决方案,并影响团队和项目向更好的方向发展,so biu biu biu ~优秀的架构师的特征有哪些

2020-11-19 23:37:30 42 2

原创 Apache ZooKeeper - ZK的内存数据 + 持久化事务日志 + 数据快照 初探

文章目录内存数据源码实现事务日志配置项查看事务日志数据内存数据Zookeeper数据的组织形式为一个类似文件系统的数据结构,而这些数据都是存储在内存中的, 可以认为 Zookeeper是一个基于内存的小型数据库 .源码实现看看源码是如何存储的public class DataTree { private final ConcurrentHashMap<String, DataNode> nodes = new ConcurrentHashMap<Stri

2020-11-19 00:17:41 40

原创 Apache ZooKeeper - ZK的ACL权限控制( Access Control List )

文章目录概述概述ACL全称为Access Control List(访问控制列表),用于控制资源的访问权限,可以控制节点的读写操作,保证数据的安全性 。ZooKeeper使用ACL来控制对其znode的防问。Zookeeper ACL 权限设置分为 3 部分组成,分别是:权限模式(Scheme)、授权对象(ID)、权限信息(Permission)基于scheme????permission的方式进行权限控制: scheme表示授权模式、id模式对应值、permission即具体的增删改权限位。

2020-11-18 00:32:37 46

原创 Apache ZooKeeper - 事件监听机制详解

文章目录事件监听机制命令Zookeeper事件类型事件监听机制命令针对节点的监听:一定事件触发,对应的注册立刻被移除,所以事件监听是一次性的get -w /path // 注册监听的同时获取数据stat -w /path // 对节点进行监听,且获取元数据信息Zookeeper事件类型None: 连接建立事件NodeCreated: 节点创建NodeDeleted: 节点删除NodeDataChanged:节点数据变化NodeChildrenChanged:子节点列表

2020-11-17 00:18:48 271 2

原创 Apache ZooKeeper - 节点实操常用zookeeper命令

文章目录help 查看zookeeper所支持的所有命令创建zookeeper 节点命令事件监听机制命令节点属性命令help 查看zookeeper所支持的所有命令[zk: localhost:2181(CONNECTED) 1] helpZooKeeper -server host:port cmd args addauth scheme auth close config [-c] [-w] [-s] connect host:port create [-s] [-e] [-c]

2020-11-16 00:17:03 69

原创 Apache ZooKeeper - ZK的基本特性与节点&应用场景一览

文章目录概述ZK产生的背景安装概述说点正确的废话zookeeper是一个分布式协调框架,是Apache Hadoop 的一个子项目,它主要是用来解决分布式应用中经常遇到的一些数据管理问题,如:统一命名服务、状态同步服务、集群管理、分布式应用配置项的管理等。ZK由JAVA编写,支持JAVA 和C两种语言的客户端。ZK产生的背景项目从单体到分布式转变之后,将会产生多个节点之间协同的问题每天的定时任务由谁哪个节点来执行RPC调用时的服务发现如何保证并发请求的幂等…这些问题可以统一

2020-11-15 17:13:51 37

原创 小工匠聊架构 - 缓存与数据库【双写不一致】&【读写并发不一致】解决方案一览

文章目录概述双写不一致读写并发不一致概述在大并发的情况下,同时操作数据库和缓存,有可能出现数据不一致的情况 , 那碰到这种情况我们该怎么处理呢?下面模拟几个场景及对应的解决方案,供大家参考~双写不一致读写并发不一致...

2020-11-15 10:45:25 49

原创 Redis进阶 - 如何避免Redis集群脑裂?

文章目录CAPRedis放脑裂参数 min-slaves-to-write注意事项CAPCAP定理(CAP theorem),又被称作布鲁尔定理(Brewer’s theorem) 。这个定理起源于加州大学伯克利分校 的计算机科学家埃里克·布鲁尔在2000年的分布式计算原则研讨会 上提出的一个猜想。 在2002年,麻省理工学院(MIT)的赛斯·吉尔伯特和南希·林奇发表了布鲁尔猜想的证明, 使之成为一个定理。吉尔伯特和林奇证明的CAP定理比布鲁尔设想的某种程度上更加狭义。 定理讨论了在两个互相矛盾

2020-11-05 00:16:40 239 1

原创 Redis进阶 - Redis主从工作原理详解

文章目录主从配置主从工作原理全量复制增量复制主从复制风暴主从配置简要回顾一下,Redis的主从配置复制一份redis.conf文件将相关配置修改为如下值: port 6380 pidfile /var/run/redis_6380.pid # 把pid进程号写入pidfile配置的文件 logfile "6380.log" dir /usr/local/redis-5.0.3/data/6380 # 指定数据存放目录配置主从复制 replicaof 127.0.0.1

2020-11-01 23:52:43 139 2

原创 Spring5源码 - 14 如何在所有Bean创建完后做扩展?

文章目录葛大爷的问题Answer方式一 基于Spring事件监听方式二 基于SmartInitializingSingleton接口葛大爷的问题Answer想要回答这个问题,就要对Spring的生命周期有一定的了解,今天我们就来回顾一下IOC的生命周期及Spring提供给开发人员的扩展点,当然了,我们今天只聊Bean加载完成后的事儿 。老规矩 先应用后源码 ,开搞~方式一 基于Spring事件监听方式二 基于SmartInitializingSingleton接口.

2020-10-31 12:26:50 99 6

原创 Spring5源码 - 13 Spring事件监听机制_@EventListener源码解析

文章目录Pre概览@EventListenerPreSpring5源码 - 10 Spring事件监听机制_应用篇Spring5源码 - 11 Spring事件监听机制_源码篇Spring5源码 - 12 Spring事件监听机制_异步事件监听应用及源码解析通过上面三篇文章的学习,是不是发现没有看到Spring是如何解析@EventListener注解的呢? Let’s go ~~~概览@EventListener...

2020-10-31 11:21:56 79

原创 Spring5源码 - 12 Spring事件监听机制_异步事件监听应用及源码解析

文章目录Pre应用原理配置类PreSpring5源码 - 11 Spring事件监听机制_源码篇应用原理Spring提供的事件机制,默认是同步的。如果想要使用异步事件监听,可以自己实现ApplicationEventMulticaster接口,并在Spring容器中注册id为applicationEventMulticaster的Bean , 设置 executor配置类package com.artisan.eventlistener2;import org.springfram

2020-10-30 21:09:50 45

原创 Spring5源码 - 11 Spring事件监听机制_源码篇

preSpring5源码 - 10 Spring事件监听机制_应用篇观察者模式说了应用,那我们来看下Spring的源码是如何实现这种事件监听机制的吧事件监听机制的实现原理[观察者模式]其实就是观察者模式事件 ApplicationEvent事件监听者 ApplicationEvent相当于观察者模式中的观察者。监听器监听特定事件,并在内部定义了事件发生后的响应逻辑事件发布者 ApplicationEventMulticaster (多播器)相当于观察者模式中的被观察者/主题..

2020-10-29 23:07:48 72

原创 Spring5源码 - 10 Spring事件监听机制_应用篇

文章目录Spring事件概览事件事件监听器事件广播器Spring事件概览Spring事件体系包括三个组件:事件,事件监听器,事件广播器事件Spring的内置事件中由系统内部进行发布,只需注入监听器ContextRefreshedEvent当容器被实例化或refreshed时发布.如调用refresh()方法, 此处的实例化是指所有的bean都已被加载,后置处理器都被激活,所有单例bean都已被实例化, 所有的容器对象都已准备好可使用. 如果容器支持热重载,则refresh可以被触

2020-10-29 21:04:02 60

原创 小工匠聊架构 - 如何优雅的做系统架构设计01

文章目录目标目标清楚地理解架构设计相关的概念、本质、目的,避免架构师在实践过程中把握不住重点、分不清主次,眉毛胡子一把抓,导致架构设计变形或者“四不像”掌握通用的架构设计原则,无论是何种业务或技术,架构师在判断和选择的时候有一套方法论可以参考,避免架构设计举棋不定,或者拍脑袋式设计掌握标准的架构设计流程,即使是刚开始做架构设计的新手,也能够按照步骤一步一步设计出合适的架构,避免某些步骤缺失导致错误的架构设计深入理解已有的架构模式,做到能够根据架构特点快速挑选合适的模式完成架构设计

2020-10-28 23:27:29 75 2

原创 小工匠聊架构-超高并发秒杀系统设计 07_Plan B 的设计

文章目录Pre概高可用建设贯穿系统建设的整个生命周期1. 架构阶段2. 编码阶段3. 测试阶段4. 发布阶段5. 运行阶段6. 故障发生How降级限流客户端限流服务端限流基于 QPS 和线程数的限流拒绝服务总结Pre小工匠聊架构-超高并发秒杀系统设计 01_总体原则和架构演进小工匠聊架构-超高并发秒杀系统设计 02_数据的动静分离小工匠聊架构-超高并发秒杀系统设计 03_热点数据的处理小工匠聊架构-超高并发秒杀系统设计 04_流量削峰设计小工匠聊架构-超高并发秒杀系统设计 05_服务端性能优

2020-10-20 23:13:50 104 2

原创 小工匠聊架构-超高并发秒杀系统设计 06_数据一致性

文章目录Pre概减库存分析方案利弊下单减库存付款减库存预扣库存大型秒杀中如何减库存秒杀减库存的优化Pre小工匠聊架构-超高并发秒杀系统设计 01_总体原则和架构演进小工匠聊架构-超高并发秒杀系统设计 02_数据的动静分离小工匠聊架构-超高并发秒杀系统设计 03_热点数据的处理小工匠聊架构-超高并发秒杀系统设计 04_流量削峰设计小工匠聊架构-超高并发秒杀系统设计 05_服务端性能优化概我们这里说的就是经典的超卖问题来回顾下以前的博文高并发-【抢红包案例】之一:SSM环境搭建及复现红

2020-10-20 00:47:37 73 1

原创 小工匠聊架构-超高并发秒杀系统设计 05_服务端性能优化

文章目录Pre概影响性能的因素响应时间 与 QPS线程数 与 QPS如何发现瓶颈工具 JProfiler 和 Yourkit如何简单的判断 CPU 是不是瓶颈如何优化系统减少编码减少序列化Java 极致优化并发读优化总结Pre小工匠聊架构-超高并发秒杀系统设计 01_总体原则和架构演进小工匠聊架构-超高并发秒杀系统设计 02_数据的动静分离小工匠聊架构-超高并发秒杀系统设计 03_热点数据的处理小工匠聊架构-超高并发秒杀系统设计 04_流量削峰设计概前面几篇文章,我们了解了高并发系

2020-10-19 20:35:27 55 1

原创 小工匠聊架构-超高并发秒杀系统设计 04_流量削峰设计

文章目录PrePre小工匠聊架构-超高并发秒杀系统设计 01_总体原则和架构演进小工匠聊架构-超高并发秒杀系统设计 02_数据的动静分离小工匠聊架构-超高并发秒杀系统设计 03_热点数据的处理

2020-10-19 18:41:17 49 1

原创 小工匠聊架构-超高并发秒杀系统设计 03_热点数据的处理

文章目录Pre热点数据静态热点数据 VS 动态热点数据发现热点数据发现静态热点数据发现动态热点数据动态热点探测架构注意事项处理热点数据优化限制隔离总结Pre小工匠聊架构-超高并发秒杀系统 01_总体原则和架构演进小工匠聊架构-超高并发秒杀系统设计 02_数据的动静分离热点数据秒杀商品,在很短时间内被大量用户执行访问、添加购物车、下单等操作,这些操作我们就称为“热点操作”。那么问题来了:这些热点对系统有啥影响,我们非要关注这些热点吗?首先,热点请求会大量占用服务器处理资源,虽然这个热点可能

2020-10-19 00:14:51 82 1

原创 小工匠聊架构-超高并发秒杀系统设计 02_数据的动静分离

文章目录Pre动静数据的区分如何对静态数据做缓存Pre小工匠聊架构-超高并发秒杀系统 01_总体原则和架构演进首篇文章中我们介绍了秒杀系统在架构上要考虑的几个原则,但是这些原则应该怎么应用到系统中呢?从这篇文章开始,我们开始聊一聊秒杀系统的各个关键环节中涉及的关键技术。我们就先来讨论第一个关键点:数据的动静分离。通常情况下我们在深度参与公司内类秒杀类系统的架构或者开发工作,迟早会想到动静分离的方案。为什么?很简单,秒杀的场景中,对于系统的要求其实就三个字:快、准、稳。那怎么才能“快”起来呢

2020-10-18 23:04:01 80 1

原创 小工匠聊架构-超高并发秒杀系统设计 01_总体原则和架构演进

文章目录系统设计的核心点系统设计的核心点直接切入正题如何更好地去设计一个高并发的系统? 我们首先应该从整体出发,整体上去思考问题 ,看透这样的系统应该解决的问题是什么样子的。高并发的系统,主要解决的两个核心问题,依我的拙见并发读并发写如何解决并发读的问题呢? 核心思想在于尽量减少请求到服务端来“读”数据,或者读更少的数据 。如何解决并发写的问题呢?核心思想也在于针对数据库层面上,做一些特殊的处理。另外,为了系统的稳定性,通常我们也需要对系统做一些保护,针对意料之外的情况设计兜底方案

2020-10-18 17:26:50 146 1

原创 Spring MVC源码 - 00开篇主题框架一览

文章目录主流程主流程

2020-10-17 23:47:35 50

原创 Spring5源码 - 00 IOC容器创建_前期准备

文章目录Demo源码分析this调用父类的构造函数然后调用自己的构造函数register(annotatedClasses);DemoAnnotationConfigApplicationContext ctx = new AnnotationConfigApplicationContext(App.class);进去看一下public AnnotationConfigApplicationContext(Class<?>... annotatedClasses) { /

2020-10-14 00:35:25 99 1

原创 Spring5源码 - 05 invokeBeanFactoryPostProcessors 源码解读_3细说invokeBeanDefinitionRegistryPostProcessors

文章目录Pre细说invokeBeanDefinitionRegistryPostProcessorsPreSpring5源码 - 04 invokeBeanFactoryPostProcessors 源码解读_1Spring5源码 - 05 invokeBeanFactoryPostProcessors 源码解读_2细说invokeBeanDefinitionRegistryPostProcessors我们来看流程图...

2020-10-13 20:28:13 89 2

原创 Spring5 - Bean的初始化和销毁的4种方式

文章目录概述方式一: 自行指定bean的初始化方法和bean的销毁方法方式二: 通过 InitializingBean和DisposableBean 接口实现bean的初始化以及销毁方法方式三: 通过JSR250规范 提供的注解@PostConstruct 和@ProDestory标注的方法方式四:通过Spring的BeanPostProcessor的 bean的后置处理器会拦截所有bean创建过程概述针对单实例bean的话,容器启动的时候,bean的对象就创建了,而且容器销毁的时候,也会调用B

2020-10-11 23:50:58 87

原创 Spring5 - 向IOC容器中添加组件的4种方式

文章目录概述方式一方式二方式三方式四概述简单来说,4种方式@CompentScan + @Controller @Service @Respository @compent@Bean@ImportFacotryBean接下来我们针对每种方式,来演示一下方式一方式二方式三方式四...

2020-10-11 18:15:00 65

原创 Spring5源码 - Spring IOC 注解复习

文章目录Prexml配置文件JavaConfigPre为了更好地学习源码,我们有必要对基础知识进行一次简单的复习,只有在知道如何使用的基础上,再去阅读源码才能明白spring这些源码是对哪些功能的支持。这里简单的梳理一下xml配置文件【配置文件 】<beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"

2020-10-11 14:17:09 242 2

原创 APM - 零侵入监控JDBC服务

文章目录CodeCodepublic class JdbcCommonCollects extends AbstractByteTransformCollect implements ICollect { public static JdbcCommonCollects INSTANCE; private ApmContext context; public JdbcCommonCollects(ApmContext context, Instrumentation instrumenta

2020-10-08 12:24:40 110

原创 APM - 零侵入监控Http服务

文章目录PreHTTP采集入口CodePreAPM - 零侵入监控Service服务HTTP采集入口DispacherServlet .doServer() ?@Control ?javax.servlet.http.HttpServlet ?很显然第三种更具有通用性,不管是DispacherServlet 还是@Control 都会调用HttpServletCodepackage com.artisan.collects;import com.artisan.Apm

2020-10-08 12:09:41 135

原创 APM - 零侵入监控Service服务

文章目录需求采集方案采集目标需求通常情况下,如果我们没有系统内部的调用情况,比如我们这里重点聚焦的Service层的接口性能指标 ,比如 调用次数、Avg执行时间、Min执行时间、Max执行时间、成功次数、失败次数、慢执行次数等等,以及根据监控结果触发某些告警等等 ,上述指标都是没有办法很灵活的采集到的采集方案我们先来讨论下实现上述需求的方案硬编码AOPJavaAgent 字节码插桩那如何做到更灵活的实现代码零侵入的实现Service层的接口监控呢?OK ,直奔主题 。方案必然

2020-10-08 10:03:45 113 2

原创 IDEA 启动 Tomcat 乱码 解决办法

文章目录问题描述解决办法问题描述06-Oct-2020 19:36:14.480 淇℃伅 [main] org.apache.catalina.startup.VersionLoggerListener.log 鍛戒护琛屽弬鏁帮細-Dcom.sun.management.jmxremote.access.file=C:\Users\artisan\AppData\Local\JetBrains\IntelliJIdea2020.2\tomcat\Unnamed_coderead-apm_3\jmxre

2020-10-06 19:37:52 112 2

原创 APM - 使用JavaAgent+Javassit 插桩C3P0

文章目录核心思想编码实现打包核心思想 <bean id="dataSource" class="com.mchange.v2.c3p0.ComboPooledDataSource" ......很熟悉吧,我们要插桩的这个对象就是 ComboPooledDataSource ,如何很直观的展示出来的实时获取ComboPooledDataSource的属性信息简洁直观的展示相关属性信息实现第一个,那就在ComboPooledDataSource构造函数后下手

2020-09-29 21:11:01 106

原创 Shell - 通过hook文件后门实现应用的自动启停

文章目录启动脚本daemon启动脚本 #!/bin/bashset_network_param(){ sysctl -w fs.file-max=999999 sysctl -w net.ipv4.tcp_tw_reuse=1 sysctl -w net.ipv4.tcp_fin_timeout=15 sysctl -w net.core.netdev_max_backlog=4096 sysctl -w net.core.somaxconn=40960 sysctl -w net.

2020-09-28 11:06:06 70

原创 Shell - 监控某个进程的内存占用情况、主机CPU、磁盘空间等信息以及守护进程

文章目录脚本启动的两种方式方式一 注册到系统Cron方式二运行结果脚本 #!/bin/sh################################ 名称: MonitorES.sh## 描述: 主机利用率超过阈值 判断top占用内存的进程 匹配ES 重启## 参数: 暂无## 作者: 小工匠###############################定义退出标识符EXIT_FAILURE=1 #Failing exit status EXIT_SUCCESS=0

2020-09-28 10:48:12 134

原创 Spring5源码 - 09 循环依赖解读

文章目录什么是循环依赖模拟循环依赖的问题什么是循环依赖举个简单的例子A 依赖 B,B 又依赖 A,它们之间形成了循环依赖。或者是 A 依赖 B,B 依赖 C,C 又依赖 A,同样的 也是循环依赖模拟循环依赖的问题package com.artisan.cycleDepend;import org.springframework.beans.factory.annotation.Autowired;import org.springframework.stereotype.Comp

2020-09-25 00:17:41 121 1

中标龙芯-MIPS- NFS rpm包|ls-mips64-rpm.rar

gssproxy-0.7.0-4.ns7_4.mips64 keyutils-1.5.8-3. libbasicobjects-0 libcollection-0.6 libevent-2.0.21-4 libini_config-1.3 libnfsidmap-0.25- libpath_utils-0.2 libref_array-0.1. libtirpc-0.2.4-0. libverto-libeventm nfs-utils-1.3.0-0m quota-4.01-14.ns7 quota-nls-4.01-14 rpcbind-0.2.0-42. tcp_wrappers-7.6

2020-11-24

X86-NFS rpm包|nfs.rar

gssproxy-0.7.0-21.el7.x86_64.rpm keyutils- libbasicobjects-0 libcollection-0.6 libevent-2.0.21-4 libini_config libnfsidmap libpath_utils-0.2 libref_array-0.1. libtirpc-0.2.4-0. libverto-libeventm nfs-utils-1.3.0-0m quota-4.01-14.ns7 quota-nls-4.01-14 rpcbind tcp_wrappers

2020-11-24

ORACLE_AWR报告详细分析|ORACLE_AWR报告详细分析.doc

ORACLE_AWR报告详细分析

2016-09-28

mybatisSource.zip

MyBatis源码功能演示环境 ,演示MyBatis的Executor 、StatementHandler 、 SQL映射、对象转换 等核心功能

2020-06-14

apache-tomcat-8.5.50-src.zip

Tomcat启动流程分析 组件的生命周期管理 用Lifecycle管理启动、停止、关闭 Lifecycle接口预览 几个核心方法 Server中的init方法示例 为啥StandardServer没有init方法 LifecycleBase中的init与initInternal方法 为什么这么设计? 分析Tomcat请求过程 链接器(Connector)与容器(Container) 解耦 Connector设计 监听服务端口,读取来自客户端的请求 将请求数据按照指定协议进行解析 根据请求地址匹配正确的容器进行处理 将响应返回客户端 Container设计 Servlet容器的实现。

2020-06-02

「Tomcat源码剖析」.pdf

Tomcat源码剖析 : 整体架构 层层分析 源码解析 架构分析 (Http服务器功能:Socket通信(TCP/IP)、解析Http报文 Servlet容器功能:有很多Servlet(自带系统级Servlet+自定义Servlet),Servlet处理具体的业务逻辑)

2020-06-01

Jest-5.3.4.zip

Jest是Elasticsearch 的Java Http Rest 客户端。 ElasticSearch已经具备应用于Elasticsearch内部的java API,但是Jest弥补了ES自有API缺少Elasticsearch Http Rest接口客户端的不足。 Jest 配置ES 集群 示例代码 及源码解读 - 核心原理 - NodeChecker源码解读 -

2020-01-19

MQ对比:Kafka VS Rocketmq VS Rabbitmq.pdf

MQ对比:Kafka VS Rocketmq VS Rabbitmq 超详细 ,值的收藏,参考资料

2019-11-04

elasticsearch-analysis-ik-6.4.1.zip

修改ik分词器源码,支持从mysql中每隔一定时间,自动加载新的词库

2019-08-20

Nginx1.14.2 + zlib + pcre + openssl

1. nginx 主软件 和 3个依赖包 zlib + pcre + openssl

2019-03-12

Spring4CachingAnnotationsExample

Spring4CachingAnnotationsExample的示例,通过Java注解的方式整合EhCache框架

2017-10-04

Java反编译工具

jd-gui.exe使用C++开发,主要具有以下功能: 一、支持众多Java编译器的反编译; 二、支持对整个Jar文件进行反编译,并本源代码可直接点击进行相关代码的跳转;

2015-06-04

小小工匠的留言板

发表于 2020-01-02 最后回复 2020-01-02

空空如也

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

TA关注的人 TA的粉丝

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