自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 ThreadPoolExecutor源码刨析

ThreadPoolExecutor源码刨析1.创建线程的方式JUC包下ExcutorsForkJoinPool以工作窃取的方式进行拆分过程,可以进行多线程Java中提供了Excutors可以去创建(规范中不允许使用这种方式去创建线程,这种方式对线程的控制粒度比较低),建议用手动方式创建线程池线程池的7个参数线程池的执行流程为什么要先进阻塞在尝试去创建非核心线程线程池(饭店)-线程(厨子)-阻塞队列(人多先排队)-(招厨子)创建最大线程数-(今日客满)拒绝策略execute提交。

2023-04-07 09:50:02 184

原创 缓存(锁,redis)

放入缓存的数据格式本地缓存:放在本地内存中,先进行查询redis依赖redis本地配置方案lettuce可用数据传输量较大,但是会有后台内存溢出的bug,可进行包排除引入jedis指查询一个一定不存在的数据,由于缓存是不命中,蒋去查询数据库,但数据库也无此记录,我们没有将这次查询的null写入缓存,这将导致这个不存在的数据每次请求都要到存储层去查询,失去了缓存的意义利用不存在的数据进行攻击,数据库瞬间压力增大,最终导致崩溃null结果缓存,并加入短暂过期时间缓存雪崩是指在我们设置缓存时key采用了相同

2022-12-07 22:27:13 390

原创 缓存(1)

放入缓存的数据格式本地缓存:放在本地内存中,先进行查询redis依赖redis本地配置方案lettuce可用数据传输量较大,但是会有后台内存溢出的bug,可进行包排除引入jedis。

2022-11-06 17:23:03 263

原创 SpringCloud Eureka解读

Eurela是Netflix公司开发的一款开源的事务注册与发现组件Spring Cloud 将Eureka与Netflix中的其他开源服务组件一起整合进Spring Cloud Netflix模块中,在整合后的组件全称为spring Cloud Netflix EurekaSpring Cloud使用Spring boot 思想为Eureka增加了自动化配置,开发人员只需要引入相关依赖和注释,就能将Springboot 构建额微服务轻松的与Eureka进行整合Eureka两大组件。

2022-10-16 12:19:26 301

原创 微服务划分及部分解读

微服务架构是一种系统架构的设计风格,与传统的单体式架构不同,微服务架构提倡将一个单一的应用程序拆分成多个小型服务,这些小型服务都在各自独立的进程中运行,服务之间使用轻量级通信机制通常是 HTTP RESTFUL API)进行通讯。通常情况下,这些小型服务都是围绕着某个特定的服务进行构建的,每一个服务只只专注于完成一项任务并把它做好,即每个模块进行分离每个服务都能够独立的部署到各个环境中,即开发环境,测试环境,生产环境,每个服务都能独立启动或销毁而不会对其他业务造成影响。

2022-10-16 11:20:30 1119

原创 Elasticseach实践1

分布式的开源搜索和分析引擎,海量数据的查询应用实例全文搜索属于最常见的需求,开源的Elastic search是目前全文搜索引擎的首选它可以快速的存储,搜索,分析,和分析海量的数据官方文档:https://www.elastic.co/guide/en/elasticsearch/reference/current/index.html官方中文:https://www.elastic.co/guide/cn/elasticsearch/guide/current/foreword_id.html。...

2022-08-07 18:09:00 439

原创 Hashmap源码解读

变量一定义序列化id,使其可以序列化变量二// aka 16集合的初始化容量变量三扩容最大范围值2^30次方变量四扩容因子初始大小0,75变量四链表的初始长度,超过8时将会转为红黑树变量五hash桶,当超过这个值时将会转为链表变量六桶结构转化为红黑树的数组容量最小值。...

2022-08-04 19:15:38 146

转载 HashMap(1)

注意插入结点,必须为红色,理由很简单,红色在父结点(如果存在)为黑色结点时,红黑树的黑色平衡没被破坏,不需要做自平衡操作,但如果插入结点是黑色,那么插入位置所在的子树黑色结点总是多1,破坏了红黑树的黑高性质,必须做自平衡。要找最小值,先找根的左节点,然后一直找这个左节点的左节点,直到没有左节点,那么这个节点就是最小值,同理要找最大值,一直找根节点的右节点,直到没有右节点,则就是最大值。遍历树是根据一种特定的顺序访问树的每一个节点,比较常用的有前序遍历,中序遍历和后序遍历。而二叉搜索树最常用的是中序遍历。..

2022-07-31 16:13:35 165

转载 简单手动实现Map

简单手动实现Map。

2022-07-27 16:20:56 139

转载 LInkedList底层源码

然后进行循环依次增加,靠for循环遍历数组,依次指向节点的插入操作,进行类型转换,如果前置节点为空,则newNode为头节点,否则为pred的next的节点。首先建立一个新的节点,并以头节点为后继节点,然后进行判断,如果链表尾空,则last也指向该节点,否则,将头节点的前去指针指向新节点,也就是指向前一个元素。尾部的后置节点一定是null,前置节点是队尾,如果不在链表的末端,在链表的中间,则取出index节点,并作为后继节点,index的前节点,作为节点前驱。说了这么多,这一堆方法到底有什么区别?...

2022-07-27 15:42:20 127

原创 ArrayList底层分析

内部构造方法内存修减扩容规则传值扩容判断对列表进行扩容,判断最小长度,并进行相应大小扩容返回列表长度判断是否为空,为空则返回0查找元素是否包含在数组中的索引判断索引是否大于0.如果大于0,则数据存在看是否输入元素在列表的最后进行列表克隆将集合转为数组查询时集合输入位置进行查询,进行查询看是否超出集合的长度,如果超过,抛出异常返回当前位置的元素根据索引返还元素向list装入新的元素根据泛型对象向集合中添加元素根据泛型对象按某个位置顺序向集合中添加元素集合对特定位置元素进

2022-07-14 16:18:14 307

原创 CompletableFuture使用详解

Future的局限性,他没法直接对多个任务进行链式组合等处理,需要借助并发工具类才能完成,实现逻辑比较复杂而CompletableFutures是对Future的扩展和增强,CompltableFuture实现Future接口,并在此基础上进行了丰富的扩展,完美弥补了Future的局限性,同时CompletableFuture实现了对任务的编排的能力。借助这项能力,可以轻松的组织不同任务的运行顺序,规则以及方式,从某种程序上说,这项能力时他的核心能力。而在以往,虽然通过CountDownlatch等工具类也

2022-07-05 10:22:12 1619

转载 java线程池使用

java中经常使用到多线程来处理业务,我们非常不建议单纯的使用Thread和Runnable接口的方法来创建线程,那必须有创建及销毁线程的耗费资源,线程上下文切换的问题,同时创建过多的线程也可能引发资源耗尽的风险,这个时候引入线程池比较合理,方便线程任务的管理.java中涉及到打的线程池相关的类均在jdk1.5开始的java.util.concurrent包中,设计到几个核心的类和接口,Executor,Executors,ExecutorService,ThreadPoolExecutor、FutureT

2022-07-04 10:37:45 2603

转载 java8新特性stream

java8是一个非常成功的版本,这个版本新增的Stream,配合同版本出现过lamda,给们操作集合(Collection)提供了极大的便利。Stream流是JDK8新增的成员,允许以声明式的方式操作数据集合,可以将流作为遍历数据集合的高级迭代器。他可以指定你希望的集合进行操作,可以执行非常复杂的查找/筛选/过滤、排序、聚合和映射数据等操作,stream主要是迭代器的增强(大批量数据操作)代码可以声明性方式书写,可以把其他几个基础操作连接起来,来表达复杂数据的处理流水线操作从支持数据处理操作的源生成元素序列

2022-06-18 17:39:46 209

原创 云计算考试版本1.0

Hadoop,openstack(nova)

2022-06-12 22:15:36 417

原创 OpenStack(1)

运维Openstack

2022-04-25 21:57:32 246

原创 ajax报错

ajax报错

2021-12-02 20:21:57 179

原创 jdbc-学生管理系统

学生管理系统java + 数据库实现(具体内容包括:数组,列表,线程,字符串,数据库)实体类模块包括学生学号,姓名,课程数,成绩…具体目录信息package ccu.practice.student_systeminfo.bean;import java.io.Serializable;//学生管理系统public class Student_info implements Serializable {//实体类private static final long serialVersio

2021-11-04 12:53:16 853

原创 微信机器人

项目三:微信爬虫机器人(再开发)项目目录1.config.py配置接口函数类TOKEN = ‘weixin’XML_STR = ‘’’<![CDATA[%s]]><![CDATA[%s]]>%s<![CDATA[%s]]><![CDATA[%s]]>‘’’joke.py笑话爬虫import requestsfrom lxml import etreefrom random import randintdef get_j

2021-06-28 02:06:53 224 1

原创 python项目二:多种验证码及二维码输出

python项目二:多种验证码及二维码输出import osimport qrcodeimport randomimport timeimport tkinterfrom pystrich.ean13 import EAN13Encoderimport tkinter.filedialogimport tkinter.messageboxfrom string import digitsroot = tkinter.Tk() # tkinter模4块为python的标准图形界面接口。

2021-06-28 01:59:35 1206

原创 python项目一:学生管理系统

-- codeing = utf-8 --@Time:2021/6/18 22:12@Author:publishment ghost@File:项目一:学生管理系统.py@Software:PyCharmimport re # 导入正则表达式模块import os # 导入操作系统模块filename = “studentinfo.txt” # 定义保存学生信息的文件名def menu():# 输出菜单print(’’’╔———————学生信息管理系统————————╗│

2021-06-28 01:57:43 375

转载 字典文件

字典{}d = {key1 : value1, key2 : value2 }ac_1 = {“fred”:12345587,“afaos”:47562}print(ac_1[“fred”])d = dict()创建新字典del()字典元素删除器d.keys()返回字典中键值的所有信息d.values()返回字典中所有的信息d. items()返回键值对所有的信息d.get(key,default)信息查询并返回d.pop(key,default)根据键信息删除字典值d.popitem

2021-04-11 18:47:12 1656

原创 常用函数

切片[起始位置:末尾置:步长]print(“sahfuiafja”[1:5])type()输出数据类型a = afjaofjaprint(a,type(a))查看python的内置函数print(dir(builtins))保留字查看print(help(‘keywords’))a.lower全小写字符a = ‘Aafhnjakfa’print(a.lower)a. = 'afjmafoa’全大写字符print(a.upper)a= ‘ashafha’pritn(a.

2021-04-08 22:11:38 108

原创 基本语句模式

基本输入输出3种引号(‘’,“”,‘’‘ ’‘’)Python中单行注释以 # 开头,例如::这是一个注释print(“Hello, World!”)多行注释用三个单引号 ‘’’ 或者三个双引号 “”" 将注释括起来,例如:1、单引号(’’’)#!/usr/bin/python3‘’’这是多行注释,用三个单引号这是多行注释,用三个单引号这是多行注释,用三个单引号‘’’print(“Hello, World!”)2、双引号(""")#!/usr/bin/python3“”"这

2021-04-07 17:03:34 346 1

原创 python学生教务管理系统

基本架构#----------------------python学生信息管理统---------------------#需求设计:1.添加学生的成绩信息2.学生信息保存在文件夹中3.修改及删除学生信息4.查询学生的信息5.根据学生的成绩进行排名6.计算总成绩进行排列基本系统设定模块一:学生成绩维护部分1.录入学生信息2.删除学生信息3.修改学生信息模块二:查询/统计模块1.按姓名查找2.按学号查找3查询显示所有学生的信息4.统计学生总人数模块三:排序:1。每

2021-03-17 15:49:02 5563 8

原创 小李图形集合设计

python图形集合设计#-- codeing = utf-8 --#@Time:2020/12/29 15:25#@Author:publishment ghost#@File:varity of picture toos.py#@Software:PyCharmfrom scipy import statsfrom matplotlib import pyplotimport matplotlib.pyplot as pltfrom math import pi,sin,cosimp

2021-01-13 15:33:41 127

银河麒麟 arrch k8s 可用 nfs-client-provisioner

银河麒麟 arrch k8s 可用 nfs-client-provisioner

2024-03-07

空空如也

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

TA关注的人

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