- 博客(83)
- 资源 (1)
- 收藏
- 关注
原创 免费游戏,马里奥,温情搞笑图片,shipin素材
免费游戏,马里奥,温情搞笑图片,shipin素材几千个无水印素材,mian fei的,私聊我就可以,球球1315402725加一下##
2021-09-05 12:07:07
225
原创 java类动态编译和加载的实际应用-springBoot下动态加载配置文件的代码并使用
一 背景java代码动态编译的场景有很多,比如说1、 开 发 分 布 式 应 用。 这 对 开 发 远 程 的 客 户 端 应 用 程 序 最 有 用, 客 户 端 仅 需 要 安 装 一 些 基 本 的 系 统 和 一 个 能 实 现 动 态 类 载 入 机 制 的 类, 需 要 本 地 系 统 不 存 在 的 功 能 时, 仅 需 要 从 网 络 动 态 载 入 并 执 行 相 应 类 即 可 获 得 特 定 功 能。 因 为 客 户 端 所 使 用 的 总 是 软 件 的 最 新 版 本, 所
2021-09-04 23:29:57
2244
3
转载 “普通人”鲁迅:31岁那年,我终于当上了公务员
谁是近代中国反差最大的名人?不知道你的答案是谁,书单君先提名一位:鲁迅先生。在我们上学时,鲁迅堪称考场噩梦,课本魔鬼,完全是深沉苦闷的代言人。可最近几年,在互联网文化中,鲁迅先生又摇身一变,成了段子手。一张他夹着香烟微笑的图片,再配上一句模仿他语气的沙雕金句,就能让人哈哈一笑。不论A面还是B面,他都是一副洞察世事的思想者模样,好像只忧虑国家大事,似乎自己的人生总是坦荡顺遂,没啥可说的。然而,在读了一些先生的生平资料后,书单君发现,真正的鲁迅,也像你我一样,...
2020-06-10 20:57:55
806
转载 虚拟内存与物理内存
操作系统有虚拟内存与物理内存的概念。在很久以前,还没有虚拟内存概念的时候,程序寻址用的都是物理地址。程序能寻址的范围是有限的,这取决于CPU的地址线条数。比如在32位平台下,寻址的范围是2^32也就是4G。并且这是固定的,如果没有虚拟内存,且每次开启一个进程都给4G的物理内存,就可能会出现很多问题:因为我的物理内存时有限的,当有多个进程要执行的时候,都要给4G内存,很显然你内存小一点,这很快就分配完了,于是没有得到分配资源的进程就只能等待。当一个进程执行完了以后,再将等待的进程装入内存。这种频繁的装入内
2020-05-25 18:30:30
240
原创 操作系统
1、线程同步的几种方式:互斥量:采用互斥对象机制,只有拥有互斥对象的线程才有访问公共资源的权限。因为互斥对象只有一个,所以可以保证公共资源不会被多个线程同时访问。信号量:它允许同一时刻多个线程访问同一资源,但是需要控制同一时刻访问此资源的最大线程数量。事件(信号):通过通知操作的方式来保持多线程同步,还可以方便的实现多线程优先级的比较操作。2、进程通信的几种方式管道是一种半双工的通信方式,数据只能单项流动,并且只能在具有亲缘关系的进程间流动,进程的亲缘关系通常是父子进程命名管道也是半双工的
2020-05-25 18:27:16
222
转载 netty权威指南第一章
本章内容如下:5种网络I/O模型的介绍I/O多路复用的介绍1、I/O基础入门在Java1.4之前,Java对I/O的支持不完善,开发人员在开发高性能I/O的程序时,会面临以下问题:没有数据缓冲区,I/O性能存在问题没有C++中的Channel概念,只有输入和输出流同步阻塞式I/O通信(BIO),会导致通信线程被长时间阻塞支持的字符集有限,硬件可移植性不好1.1 Linux网络I/O模型简介Linux的内核将所有外部设备当做一个文件来处理,对一个文件的读写操作会调用内核提供的系统命
2020-05-25 18:12:49
218
原创 MYSQL5.7详细安装步骤:
MYSQL5.7详细安装步骤:0、更换yum源1、打开 mirrors.aliyun.com,选择centos的系统,点击帮助2、执行命令:yum install wget -y3、改变某些文件的名称mv /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo.backup4、执行更换yum源的命令wg...
2020-04-07 17:12:01
331
原创 mysql主从复制原理
mysql主从复制原理0、为什么需要主从复制?1、在业务复杂的系统中,有这么一个情景,有一句sql语句需要锁表,导致暂时不能使用读的服务,那么就很影响运行中的业务,使用主从复制,让主库负责写,从库负责读,这样,即使主库出现了锁表的情景,通过读从库也可以保证业务的正常运作。2、做数据的热备3、架构的扩展。业务量越来越大,I/O访问频率过高,单机无法满足,此时做多库的存储,降低磁盘I/O访问的...
2020-04-07 17:11:42
217
原创 mysql主从复制安装配置
mysql主从复制安装配置1、基础设置准备#操作系统:centos6.5#mysql版本:5.7#两台虚拟机:node1:192.168.85.111(主)node2:192.168.85.112(从)2、安装mysql数据库#详细安装和卸载的步骤参考对应的文档3、在两台数据库中分别创建数据库--注意两台必须全部执行create database msb;4、在主...
2020-04-07 17:09:56
159
原创 mysql事务测试
mysql事务测试1、打开mysql的命令行,将自动提交事务给关闭--查看是否是自动提交 1表示开启,0表示关闭select @@autocommit;--设置关闭set autocommit = 0;2、数据准备--创建数据库create database tran;--切换数据库 两个窗口都执行use tran;--准备数据 create table psn(id i...
2020-04-07 17:09:27
257
原创 mysql执行计划
mysql执行计划 在企业的应用场景中,为了知道优化SQL语句的执行,需要查看SQL语句的具体执行过程,以加快SQL语句的执行效率。 可以使用explain+SQL语句来模拟优化器执行SQL查询语句,从而知道mysql是如何处理sql语句的。 官网地址: https://dev.mysql.com/doc/refman/5.5/en/explain-out...
2020-04-07 17:09:02
188
原创 mysql读写分离
mysql读写分离[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-8JPafz3h-1586181202313)(E:\lian\oracle\mysql\mysql-proxy.jpg)]1、读写分离的介绍[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-S8f92GqZ-1586181202314)(E:\lian\oracle\...
2020-04-07 17:07:56
227
原创 使用amoeba实现mysql读写分离
使用amoeba实现mysql读写分离1、什么是amoeba? Amoeba(变形虫)项目,专注 分布式数据库 proxy 开发。座落与Client、DB Server(s)之间。对客户端透明。具有负载均衡、高可用性、sql过滤、读写分离、可路由相关的query到目标数据库、可并发请求多台数据库合并结果。主要解决:• 降低 数据切分带来的复杂多数据库结构• 提供切分规则并降低 数据切...
2020-04-07 17:06:36
305
原创 分区表的底层原理
分区表的底层原理 分区表由多个相关的底层表实现,这个底层表也是由句柄对象标识,我们可以直接访问各个分区。存储引擎管理分区的各个底层表和管理普通表一样(所有的底层表都必须使用相同的存储引擎),分区表的索引知识在各个底层表上各自加上一个完全相同的索引。从存储引擎的角度来看,底层表和普通表没有任何不同,存储引擎也无须知道这是一个普通表还是一个分区表的一部分。 分区表的操作按照以下的操作逻辑进...
2020-04-07 17:06:15
698
原创 前缀索引实例说明
前缀索引实例说明 有时候需要索引很长的字符串,这会让索引变的大且慢,通常情况下可以使用某个列开始的部分字符串,这样大大的节约索引空间,从而提高索引效率,但这会降低索引的选择性,索引的选择性是指不重复的索引值和数据表记录总数的比值,范围从1/#T到1之间。索引的选择性越高则查询效率越高,因为选择性更高的索引可以让mysql在查找的时候过滤掉更多的行。 一般情况下某个列前缀的选择性也是足够...
2020-04-07 17:05:45
213
原创 索引优化分析案例
索引优化分析案例预先准备好数据SET FOREIGN_KEY_CHECKS=0;DROP TABLE IF EXISTS `itdragon_order_list`;CREATE TABLE `itdragon_order_list` ( `id` bigint(11) NOT NULL AUTO_INCREMENT COMMENT '主键id,默认自增长', `transacti...
2020-04-07 17:05:21
199
原创 覆盖索引
覆盖索引1、当发起一个被索引覆盖的查询时,在explain的extra列可以看到using index的信息,此时就使用了覆盖索引mysql> explain select store_id,film_id from inventory\G*************************** 1. row *************************** ...
2020-04-07 17:05:02
189
原创 MYSQL performance schema详解
MYSQL performance schema详解0、performance_schema的介绍 MySQL的performance schema 用于监控MySQL server在一个较低级别的运行过程中的资源消耗、资源等待等情况。 特点如下: 1、提供了一种在数据库运行时实时检查server的内部执行情况的方法。performance_schema 数据库中的表使用per...
2020-04-07 17:04:29
1851
2
原创 二叉树中的最大路径和(递归+分治)
给定一个非空二叉树,返回其最大路径和。本题中,路径被定义为一条从树中任意节点出发,达到任意节点的序列。该路径至少包含一个节点,且不一定经过根节点。示例 1:输入: [1,2,3] **1** **/ \\** **2** **3**输出: 6示例 2:输入: [-10,9,20,null,null,15,7]-10/ \9 20/ \15 7输出:...
2020-03-28 21:41:38
653
原创 至少有K个重复字符的最长子串(分治+动态规划)
找到给定字符串(由小写字符组成)中的最长子串 T , 要求 T 中的每一字符出现次数都不少于 k 。输出 ***T ***的长度。示例 1:输入:s = “aaabb”, k = 3输出:3最长子串为 “aaa” ,其中 ‘a’ 重复了 3 次。示例 2:输入:s = “ababbc”, k = 2输出:5最长子串为 “ababb” ,其中 ‘a’ 重复了 2 次, ‘b’...
2020-03-28 20:28:26
1213
原创 计算右侧小于当前元素的个数(归并排序)
给定一个整数数组 nums,按要求返回一个新数组 counts。数组 counts 有该性质: counts[i] 的值是 nums[i] 右侧小于 nums[i] 的元素的数量。示例:输入: [5,2,6,1]输出: [2,1,1,0] **解释:**5 的右侧有 2 个更小的元素 (2 和 1).2 的右侧仅有 1 个更小的元素 (1).6 的右侧有 1 个更小的元素 (1)....
2020-03-28 16:35:21
406
转载 01背包问题 图解+详细解析 (转载)
原文链接:https://blog.csdn.net/qq_38410730/article/details/81667885(原文写的非常棒,算法核心思想都是一样的,用什么语言实现就不重要了)一、题目描述有n个物品,它们有各自的体积和价值,现有给定容量的背包,如何让背包里装入的物品具有最大的价值总和?为方便讲解和理解,下面讲述的例子均先用具体的数字代入,即:eg:number=4,cap...
2020-03-22 18:47:49
1338
原创 寻找重复数(链表,floyed)
给定一个包含 n + 1 个整数的数组 nums,其数字都在 1 到 *n *之间(包括 1 和 n),可知至少存在一个重复的整数。假设只有一个重复的整数,找出这个重复的数。示例 1:输入: [1,3,4,2,2]输出: 2示例 2:输入: [3,1,3,4,2]输出: 3说明:不能更改原数组(假设数组是只读的)。只能使用额外的 O(1) 的空间。时间复杂度小于 O(n2) ...
2020-03-18 13:03:19
481
原创 寻找峰值(二分查找)
峰值元素是指其值大于左右相邻值的元素。给定一个输入数组 nums,其中 nums[i] ≠ nums[i+1],找到峰值元素并返回其索引。数组可能包含多个峰值,在这种情况下,返回任何一个峰值所在位置即可。你可以假设 nums[-1] = nums[n] = -∞。示例 1:输入: nums = [1,2,3,1]输出: 2解释: 3 是峰值元素,你的函数应该返回其索引 2。示例 2...
2020-03-18 11:00:14
362
原创 摆动排序 II
摆动排序 II给定一个无序的数组 nums,将它重新排列成 nums[0] < nums[1] > nums[2] < nums[3]... 的顺序。示例 1:输入: nums = [1, 5, 1, 1, 6, 4]输出: 一个可能的答案是 [1, 4, 1, 5, 1, 6]示例 2:输入: nums = [1, 3, 2, 2, 3, 1]输出: 一个可能的答...
2020-03-16 23:16:27
184
原创 最大数
给定一组非负整数,重新排列它们的顺序使之组成一个最大的整数。示例 1:输入: [10,2]输出: 210示例 2:输入: [3,30,34,5,9]输出: 9534330说明: 输出结果可能非常大,所以你需要返回一个字符串而不是整数。排序的核心思路: 将要排序得两个数a,b互相拼接组成ab,ba,而后比较大小class Solution { //归并排序 publ...
2020-03-16 10:59:55
192
原创 天际线问题(大顶堆,树)
城市的天际线是从远处观看该城市中所有建筑物形成的轮廓的外部轮廓。现在,假设您获得了城市风光照片(图A)上显示的所有建筑物的位置和高度,请编写一个程序以输出由这些建筑物形成的天际线(图B)。 每个建筑物的几何信息用三元组 [Li,Ri,Hi] 表示,其中 Li 和 Ri 分别是第 i 座建筑物左右边缘的 x 坐标,Hi 是其高度。可以保证 0 ≤ Li, Ri ≤ INT_MAX, 0 <...
2020-03-15 19:12:53
382
原创 二叉树的序列化与反序列化
序列化是将一个数据结构或者对象转换为连续的比特位的操作,进而可以将转换后的数据存储在一个文件或者内存中,同时也可以通过网络传输到另一个计算机环境,采取相反方式重构得到原数据。请设计一个算法来实现二叉树的序列化与反序列化。这里不限定你的序列 / 反序列化算法执行逻辑,你只需要保证一个二叉树可以被序列化为一个字符串并且将这个字符串反序列化为原始的树结构。**示例: **你可以将以下二叉树:1...
2020-03-14 21:12:41
274
原创 待解决_美团面试
例如,二叉树 [1,2,2,3,4,4,3] 是对称的。1/ 2 2/ \ / 3 4 4 3public boolean checkBinaryTree(TreeNode left,TreeNode right){ if(left==null && right!=null){ return false; ...
2020-03-10 22:55:09
140
转载 mysql insert锁机制(insert死锁)
一、前言上周遇到一个因insert而引发的死锁问题,其成因比较令人费解。于是想要了解一下insert加锁机制,但是发现网上介绍的文章比较少且零散,挖掘过程比较忙乱。本以为只需要系统学习一个较完全的逻辑,但是实际牵扯很多innodb锁相关知识及加锁方式。我好像并没有那么大的能耐,把各种场景的加锁过程一一列举并加之分析;亦没有太多的精力验证网上的言论的准确性。只好根据现在了解的内容,参考官方文...
2020-03-09 20:51:38
2272
转载 12306抢票系统详解
12306 抢票,极限并发带来的思考:虽然现在大多数情况下都能订到票,但是放票瞬间即无票的场景,相信大家都深有体会。尤其是春节期间,大家不仅使用 12306,还会考虑“智行”和其他的抢票软件,全国上下几亿人在这段时间都在抢票。“12306 服务”承受着这个世界上任何秒杀系统都无法超越的 QPS,上百万的并发再正常不过了!笔者专门研究了一下“12306”的服务端架构,学习到了其系统设计上很多...
2020-03-09 12:36:44
1950
转载 分布式id生成方案总结
ID是数据的唯一标识,传统的做法是利用UUID和数据库的自增ID,在互联网企业中,大部分公司使用的都是Mysql,并且因为需要事务支持,所以通常会使用Innodb存储引擎,UUID太长以及无序,所以并不适合在Innodb中来作为主键,自增ID比较合适,但是随着公司的业务发展,数据量将越来越大,需要对数据进行分表,而分表后,每个表中的数据都会按自己的节奏进行自增,很有可能出现ID冲突。这时就需要一个...
2020-03-09 11:44:37
141
原创 常数时间插入、删除和获取随机元素
设计一个支持在*平均 *时间复杂度 O(1) 下,执行以下操作的数据结构。insert(val):当元素 val 不存在时,向集合中插入该项。remove(val):元素 val 存在时,从集合中移除该项。getRandom:随机返回现有集合中的一项。每个元素应该有相同的概率被返回。示例 :// 初始化一个空的集合。RandomizedSet randomSet = new Ran...
2020-03-08 19:53:39
222
原创 四数相加 II
给定四个包含整数的数组列表 A , B , C , D ,计算有多少个元组 (i, j, k, l) ,使得 A[i] + B[j] + C[k] + D[l] = 0。为了使问题简单化,所有的 A, B, C, D 具有相同的长度 N,且 0 ≤ N ≤ 500 。所有整数的范围在 -228 到 228 - 1 之间,最终结果不会超过 231 - 1 。例如:输入:A = [ 1, 2]...
2020-03-08 19:11:30
429
转载 Netty背后的事件驱动机制
Netty简介Netty是 一个异步事件驱动的网络应用程序框架,用于快速开发可维护的高性能协议服务器和客户端。事件驱动模型通常,我们设计一个事件处理模型的程序有两种思路轮询方式线程不断轮询访问相关事件发生源有没有发生事件,有发生事件就调用事件处理逻辑。事件驱动方式事件发生时主线程把事件放入事件队列,在另外线程不断循环消费事件列表中的事件,调用事件对应的处理逻辑处理事件。事件驱动方式也...
2020-03-08 18:34:08
356
原创 回文链表
请判断一个链表是否为回文链表。示例 1:输入: 1->2输出: false示例 2:输入: 1->2->2->1输出: true进阶:你能否用 O(n) 时间复杂度和 O(1) 空间复杂度解决此题?/** * Definition for singly-linked list. * public class ListNode { * int ...
2020-03-07 15:32:50
133
原创 反转链表
反转一个单链表。示例:输入: 1->2->3->4->5->NULL输出: 5->4->3->2->1->NULL进阶:你可以迭代或递归地反转链表。你能否用两种方法解决这道题?两种思路思路一/** * Definition for singly-linked list. * public class ListNode ...
2020-03-05 20:01:23
90
原创 相交链表
编写一个程序,找到两个单链表相交的起始节点。如下面的两个链表**:**在节点 c1 开始相交。示例 1:**输入:**intersectVal = 8, listA = [4,1,8,4,5], listB = [5,0,1,8,4,5], skipA = 2, skipB = 3**输出:**Reference of the node with value = 8**输入解释:*...
2020-03-05 19:01:25
134
原创 排序链表
在 O(n log n) 时间复杂度和常数级空间复杂度下,对链表进行排序。示例 1:输入: 4->2->1->3输出: 1->2->3->4示例 2:输入: -1->5->3->4->0输出: -1->0->3->4->5使用归并排序/** * Definition for singly-link...
2020-03-05 15:28:54
128
转载 为什么Netty使用NIO而不是AIO
NIO模型同步非阻塞NIO有同步阻塞和同步非阻塞两种模式,一般讲的是同步非阻塞,服务器实现模式为一个请求一个线程,但客户端发送的连接请求都会注册到多路复用器上,多路复用器轮询到连接有I/O请求时才启动一个线程进行处理。AIO模型异步非阻塞服务器实现模式为一个有效请求一个线程,客户端的I/O请求都是由OS先完成了再通知服务器应用去启动线程进行处理,注:AIO又称为NIO2.0,在JDK7...
2020-03-05 12:17:01
440
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人