自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 ShardingSphere核心原理与应用

原理在思维导图中,这里仅仅是基础使用

2023-02-14 17:28:43 588

原创 Nacos基础操作

Nacos(Naming Configuration Service) 是一个易于使用的动态服务发现、配置和服务管理平台,用于构建云原生应用程序服务发现是微服务架构中的关键组件之一。Nacos 致力于帮助您发现、配置和管理微服务。Nacos 提供了一组简单易用的特性集,帮助您快速实现动态服务发现、服务配置、服务元数据及流量管理。Nacos 帮助您更敏捷和容易地构建、交付和管理微服务平台。 Nacos 是构建以“服务”为中心的现代应用架构 (例如微服务范式、云原生范式) 的服务基础设施。Nacos = 注册中

2022-08-29 22:11:16 1974 2

原创 netty源码解析

netty源码解析

2022-07-17 13:04:51 545

原创 netty

netty原理源码解析

2022-07-16 20:52:15 468

原创 AMS原理

android里面的Activity体系结构(1)ActivityDisplay/ActivityStack/TaskRecord/ActivityRecord1.整体关系图如下2.类定义相关介绍整体类图如下:2.1 ActivityDisplayActivityDisplay表示一个屏幕,Android支持三种屏幕:主屏幕,外接屏幕(HDMI等),虚拟屏幕(投屏)。一般情况下,即只有主屏幕时,ActivityStackSupervisor与ActivityDisplay都.

2022-01-04 15:30:11 1259

原创 Spannable的使用(文本样式设置)

通过Spannable对象我们可以设置textview的各种样式用法setSpan(Object what, int start, int end, int flags)1. 第一个参数what 意思AbsoluteSizeSpan 指定文字大小TypefaceSpan 可以设置不同的字体AlignmentSpan.Standard 标准文本对齐BackgroundColorSpan 文本背景颜色ForegroundColorSpan 文字字...

2021-11-29 16:49:39 512

原创 常用软件下载安装

----------------------------windows下载安装---------------------------Elasticsearch下载地址: https://www.elastic.co/cn/downloads/elasticsearch解压启动后,访问 http://localhost:9200/

2021-04-06 06:45:40 153 1

原创 Elasticsearch

ES核心概念和原理1、什么是搜索:百度、垂直搜索(站内搜索)搜索:通过一个关键词或一段描述,得到你想要的(相关度高)结果。2、如何实现搜索功能?关系型数据库:性能差、不可靠、结果不准确(相关度低)倒排索引、Lucene和全文检索? 倒排索引的数据结构 数据结构:1、包含这个关键词的document list关键词在每个doc中出现的次数 TF term frequency 关键词在整个索引中出现的次数 IDF inverse doc frequency 关键词在当前do

2021-04-04 18:18:20 247 1

原创 java基础源码

HashMap第一部分 基础入门1. 数组的优势、劣势内存地址连续,可以通过下标常数时间复杂度O(1)获取元素,但是增加和删除元素时间复杂度为O(n)。数组长度大小固定,如果需要扩容,需要重新申请一个数组,将原数组元素拷贝到新数组中,不够灵活2. 链表的优势、劣势内存地址不连续,增加和删除元素时间复杂度为O(1),链表没有index,查询元素只能沿着链表一个一个往下找,时间复杂度为O(n)。链表长度大小不固定,可以动态增加和减小链表的长度,比较灵活3. 散列表结构:数组+

2021-03-02 01:28:05 2195

原创 计算机组成原理

第 1 章1.1 计算机硬件的基本组成早期冯诺依曼机的结构概念ENIAC(手动接线来控制计算)效率低,然后产生了第一台采用冯诺依曼结构的计算机EDVAC”存储程序“的概念是指将指令以二进制代码的形式事先输入计算机的主存储器,然后按其在存储器中的首地址执行程序的第一条指令,以后就按照该程序的规定顺序执行其他指令,直至程序执行结束特点1. 计算机由五大部件组成2. 指令和数据以同等地位存于存储器,可按地址访问3. 指令和数据用二进制表示4. 指令由操作码和地址码组成

2021-02-21 07:54:56 151

原创 23种设计模式

单例(Singleton)应用场景只需要一个实例比如各种Manager比如各种Factory1. 饿汉式类加载到内存后,就实例化一个单例,JVM保证线程安全优点:简单实用,推荐使用缺点:不管用到与否,类加载时就完成实例化 Class.forName("") (话说你不用的,你装载它干啥)class Manager01 { private static final Manager01 INSTANCE = new Manager01(); pri...

2021-02-09 16:04:29 207

原创 计算机网络基础

一. 底层协议(TCP/UDP)OSI七层模型OSI模型介绍OSI模型指的是Open System Interconnection Reference Model,即开放式系统互联模型。它是世界上第一个试图在世界范围内规范网络标准的框架。OSI的产生背景基础建设在学术界早已成型,如封包交换原理理论,数据传输能力等。OSI模型图示应用层(Application Layer)应用层位于OSI模型最上方只关心业务逻辑,不关心数据的传输表示层(Presentati

2021-02-05 05:44:38 285

原创 dubbo

Dubbo 01架构模型传统架构 All in One测试麻烦,微小修改 全都得重新测单体架构也称之为单体系统或者是单体应用。就是一种把系统中所有的功能、模块耦合在一个应用中的架构方式。其优点为:项目易于管理、部署简单。缺点:测试成本高、可伸缩性差、可靠性差、迭代困难、跨语言程度差、团队协作难聚合项目划分单项目容易 因为某个功能导致整体oom拆分完 咋实现SOA 架构: Service-Oriented Architecture面向服务的架构(SOA)是一个组..

2021-02-03 10:13:39 660

原创 mysql调优

性能监控使用show profile查询解析工具,可以指定具体的type使用perform schema更加容易的监控mysqlMYSQL performance schema详解0、performance_schema的介绍MySQL的performance schema 用于监控MySQL server在一个较低级别的运行过程中的资源消耗、资源等待等情况。特点如下:1、提供了一种在数据库运行时实时检查server的内部执行情况的方法。performance_schema 数据

2021-01-28 00:41:43 273

原创 FastDFS

FastDFS介绍技术论坛: http://bbs.chinaunix.net/forum-240-1.htmlFAQ:http://bbs.chinaunix.net/thread-1920470-1-1.html资源地址: https://sourceforge.net/projects/fastdfs/源码资源: https://github.com/happyfish100FastDFS是一个开源的轻量级分布式文件系统,它对文件进行管理,功能包括:文件存储、文件同步、文件访问

2021-01-26 05:01:11 637 2

原创 项目开发所遇到的问题

问题一org.apache.ibatis.binding.BindingException: Invalid bound statement (not found): com.study.oa.dao.AccountDAO.selectByExample2021-01-17 04:39:02.716 ERROR 57660 --- [nio-8080-exec-7] o.a.c.c.C.[.[.[/].[dispatcherServlet] : Servlet.service() for se...

2021-01-17 04:47:52 326

原创 OA系统

用户管理模块需求设计

2021-01-16 04:35:35 838

原创 前置基础框架

Spring家族介绍与开发环境课程主要内容 Spring能做什么? Spring开发环境搭建 HelloWorld程序 Spring能做什么?Spring是一个轻量级的控制反转(IoC/di)和面向切面编程(AOP) 的对象容器框架Spring官网:http://spring.io/Spring 是一个于 2003 年兴起的一个轻量级的 Java 开源开发框架如今Spring已是Java项目的标配,它极大的简化了开发过程,降低了开发难度。 方便解耦,简

2021-01-13 21:32:34 293

原创 RocketMQ--核心

rocketmq常用应用场景解耦流量削峰大数据处理系统异构

2021-01-11 03:04:03 765

原创 RocketMQ文档

RocketMQ 01主要内容:编译安装HelloWorld官方网站http://rocketmq.apache.orgGitHubhttps://github.com/apache/rocketmqQuick StartLinux下使用Maven编译源码安装Rocketmq4.6+需要jdk1.8环境编译和运行[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-UhkkorHu-1609973544619)(image-rocketMQ/image-20

2021-01-07 06:58:54 5102

原创 maven

什么是Maven目前无论使用IDEA还是Eclipse等其他IDE,使用里面ANT工具。ANT工具帮助我们进行编译,打包运行等工作。Apache基于ANT进行了升级,研发出了全新的自动化构建工具Maven。Maven是Apache的一款开源的项目管理工具。以后无论是普通javase项目还是javaee项目,我们都创建的是Maven项目。Maven使用项目对象模型(POM-Project Object Model,项目对象模型)的概念,可以通过一小段描述信息来管理项目的构建,报告和文档的.

2021-01-04 20:17:15 1805

原创 Git

Git的概念【1】Git技术:公司必备,一定要会【2】Git概念:Git是一个免费的、开源的分布式版本控制系统,可以快速高效地处理从小型到大型的项目。【3】什么是版本控制?版本控制是一种记录一个或若干文件内容变化,以便将来查阅特定版本修订情况的系统 。【4】为什么要使用版本控制?软件开发中采用版本控制系统是个明智的选择。有了它你就可以将某个文件回溯到之前的状态,甚至将整个项目都回退到过去某个时间点的状态。就算你乱来一气把整个项目中的文件改的改删的删,你也照样可以轻松恢复到原

2021-01-03 17:41:04 116

原创 ActiveMQ--文档

消息中间件之ActiveMQ 01什么是JMS MQ全称:Java MessageService 中文:Java 消息服务。JMS 是 Java 的一套 API 标准,最初的目的是为了使应用程序能够访问现有的 MOM 系 统(MOM 是 MessageOriented Middleware 的英文缩写,指的是利用高效可靠的消息传递机 制进行平台无关的数据交流,并基于数据通信来进行分布式系统的集成。) ;后来被许多现有 的 MOM 供应商采用,并实现为 MOM 系统。【常见 MOM 系统包括

2020-12-25 20:58:21 1061

原创 ActiveMQ--核心

概念特点安全,可靠,解耦合,异步,高吞吐,低延迟MQ常用应用场景一般处理方式(不使用MQ)MQ消息处理方式缓冲,解耦,异步通信,扩展性,可恢复性,顺序保证,过载保护异构系统,解耦数据流处理(kafka),日志处理一般的MQ连接使用基础(Queue)发送端package com.study;import org.apache.activemq.ActiveMQConnectionFactory;import javax.jms.*;/

2020-12-24 14:38:13 160

原创 常用排序算法

常见排序算法:注:快排的空间复杂度为log2N1.选择排序 //选择排序 public void sort(int[] arr) { for (int i = 0; i < arr.length - 1; i++) { int min = i; for (int j = i + 1; j < arr.length; j++) { if (arr[j] < arr.

2020-11-18 13:26:55 188 1

原创 计组--操作系统底层原理

计算机的组成pc(程序计数器):存储的是内存中程序下一条指令的地址Registers(寄存器):通过PC的值,找到对应的指令,通过总线把这条数据拿到CPU中来做计算,数据从内存中拿进来存储在CPU的Registers中...

2020-10-26 21:33:34 1126

原创 IO

BIO---Blocking IO(阻塞I/O模型)阻塞I/O模型是常见的I/O模型,在读写数据时客户端会发生阻塞。阻塞I/O模型的工作流程为:在用户线程发出I/O请求之后,内核会检查数据是否就绪,此时用户线程一直阻塞等待内存数据就绪;在内存数据就绪后,内核将数据复制到用户线程中,并返回I/O执行结果到用户线程,此时用户线程将解除阻塞状态并开始处理数据。典型的阻塞I/O模型的例子为data = socket.read(),如果内核数据没有就绪,Socket线程就会一直阻塞在read()中等待内核数据就

2020-10-15 03:09:40 261

原创 ZooKeeper

Zookeeper 是一个开源的分布式的,为分布式应用提供协调服务的 Apache 项目。 入门Zookeeper工作机制Zookeeper从设计模式角度来理解:是一个基于观察者模式设计的分布式服务管理框架,它负责存储和管理大家都关心的数据,然后接受观察者的注册,一旦这些数据的状态发生变化,Zookeeper就将负责通知已经在Zookeeper上注册的那些观察者做出相应的反应。 Zookeeper=文件系统+通知机制Zookeeper特点1)Zookeeper:一.

2020-10-14 08:57:50 652

原创 Linux操作系统

入门用户和密码1.root用户修改密码: password2.root用户添加用户: useradd ypf3.root用户修改ypf用户的密码 passwd ypf4.查看帮助手册: useradd -h 或者 man useradd创建的用户,其实是放在 /etc/passwd 文件里组的信息我们放在 /etc/group 文件中命令chown改变所属用户,chgrp改变所属组。安装软件rpm1.CentOS 下面使用rpm -i...

2020-09-18 00:42:50 275

原创 trie树(前缀树)

208. 实现 Trie (前缀树) 中等实现一个 Trie (前缀树),包含insert,search, 和startsWith这三个操作。示例:Trie trie = new Trie();trie.insert("apple");trie.search("apple"); // 返回 truetrie.search("app"); // 返回 falsetrie.startsWith("app"); // 返回 truetrie.insert("ap...

2020-09-15 17:35:49 94

原创 计算机网络

传输层:所谓的建立连接,是为了在客户端和服务端维护连接,而建立一定的数据结构来维护双方交互的状态,用这样的数据结构来保证所谓的面向连接的特性1.TCP和UDP有哪些区别:1.TCP提供可靠交付,无差错,不丢失,不重复且按序到达;UDP继承了IP包的特性,不保证不丢失,不保证按序到达2.TCP是面向字节流的;UDP继承了IP包的特性,基于数据报的,一个一个的发,一个一个的收3.TCP是可以有拥塞控制的.会根据网络情况调整自己的行为,如调节速度;udp就不会,该发就发,也不管网络状态...

2020-09-07 23:34:35 1068

原创 初级---算法

目录常见排序算法:1.选择排序2.冒泡排序3.插入排序常见排序算法:注:快排的空间复杂度为log2N1.选择排序 //选择排序 public void sort(int[] arr) { for (int i = 0; i < arr.length - 1; i++) { int min = i; for (int j = i + 1; j < arr.length; j++) .

2020-08-30 05:10:09 311

原创 多线程与高并发JUC

1.synchronized锁升级过程

2020-08-29 03:58:36 168

原创 Spring--Mybatis--SpringMVC--SpringBoot框架

目录1.spring的概略图2.spring的架构设计过程1.spring的概略图总结: 要想成为一个框架,首先应该考虑的是扩展性spring提供了什么扩展性?1.对象创建之前2.容器初始化之前3.在不同的阶段发出不同的事件,完成一些功能4.抽象出一堆接口来帮助扩展5.面向接口编程2.spring的架构设计过程...

2020-08-29 01:57:41 115

原创 JVM

1. JVM参数分类:共分为三种 标准参数: -开头,所有的Hotspot都支持 分标准参数: -X开头,特定版本Hotspot支持特定命令 不稳定: -XX开头,下个版本可能会取消 -XX:+PrintCommandLineFlags 打印虚拟机启动时带的命令行参数 -XX:+PrintFlagsFinal 最终参数值 -XX:+PrintFlagsInitial 默认参数值一.java内存区域1.运行时数据区: java虚拟机在执行ja...

2020-08-25 07:13:34 1389

原创 redis

String结构:字符串常用操作:set key value //存入字符串键值对mset key value [key value ...] //批量存储字符串键值对setnx key value //存入一个不存在的字符串键值对get key //获取一个字符串键值mget key [key...] //批量获取字符串键值del key [key..] //删除一个键expire key seconds //设置一个键的过期时间(秒)原

2020-08-10 23:26:27 254

原创 mysql数据库

# 一. Explain(查看执行计划) 使用Explain关键字可以模拟优化器执行SQL查询语句,从而知道mysql是如何处理你的SQL语句的,用来分析你的查询语句或表结构性能瓶颈 能干嘛:1.表的读取顺序2.数据读取操作的操作类型3.哪些索引可以使用4.那些索引被实际使用5.表之间的引用6.每张表有多少行被优化器查询

2020-08-09 00:13:36 181

空空如也

空空如也

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

TA关注的人

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