- 博客(46)
- 收藏
- 关注
原创 聊聊mysql索引
聊聊mysql索引描述mysql索引是空间换时间的一种方式,主要是提高查询效率,相应的要付出额外的存储空间,mysql索引使用的是B+树。常见的索引模型哈希表,有序数组,搜索树。为什么是B+树B+树的特点:节点的子树数和关键字数相同节点的关键字表示的是子树中的最大数,在子树中同样含有这个数据叶子节点包含了全部数据,同时符合左小右大的顺序[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-5d99oZzN-1618554416496)(http://qiniu.
2021-04-16 14:27:21 297
原创 Redis 学习笔记 一 什么时候用缓存
Redis 学习笔记 一 什么时候用缓存本节开始,我就准备对redis的每个分支做具体的笔记阐述。这里我们都已经很熟练的使用缓存了。但是有没有想过,为啥用缓存,什么时候用缓存,常见的缓存有哪些?1.为啥用缓存在没有缓存的时候,我们一般的前端接口查询都是直接通过后台查数据库把数据返回给前台。我们知道一次sql 的io交互是比较耗性能的。当我们处于高并发的状态下查询数据瓶颈就在于sql查询这里,而且对该表有插入或者更新的时候也会对该资源进行锁定。简单的说计算机系统分为如下三层结构:cpu,1-32M
2021-02-07 14:35:42 1071
原创 必会的算法题
必会的算法题1.关于数组和链表的几个必知必会的代码实现数组实现一个支持动态扩容的数组实现一个大小固定的有序数组,支持动态增删改操作实现两个有序数组合并为一个有序数组链表实现单链表、循环链表、双向链表,支持增删操作实现单链表反转– 实现两个有序的链表合并为一个有序链表实现求链表的中间结点2.关于栈、队列和递归的几个必知必会的代码实现栈用数组实现一个顺序栈用链表实现一个链式栈编程模拟实现一个浏览器的前进、后退功能队列用数组实现一个顺序队列用链表实现一个链式队列
2021-02-03 11:15:18 596 3
原创 代理本地环境访问远程限制数据库
在开过程中,我们一定遇见这种情况,启动本地服务模拟线上环境。但是一般会遇见线上环境的数据库设置有黑白名单,不对本地开放。这种情况我们就需要对本地环境搭一个代理。这里我们本地环境A,一个是线上环境B,一个数据库环境C。线上环境肯定是能够访问到数据库环境的。这里的原理就是通过本地代理到开发环境B,通过开发环境B来访问数据库环境C。一、pom中加入如下依赖。<dependency> <groupId>com.jcraft</groupId>
2021-01-25 14:47:58 336
原创 Redis 学习笔记 一 、引言
序Redis现在基本上有90%的公司选择为缓存框架。但是大多数人都是知其然不知其所以然。当面试的时候问到redis也就仅能打出5个基本类型,redis快,基于内存操作,但更深一些基本类型的底层数据结构,为啥快,一些新的数据结构GEO.BITMAP等就很少有人知道了。不仅仅是面试,在项目中只有深入了解了这个框架才能更好的使用他。我也见过一些项目成员所有的缓存全部哈唆,全部使用string形式来存储,只有了解了每种数据形式的优劣,结合项目业务场景,才能更好的利用这个框架为我们项目服务。正好我最近再重温redi
2021-01-21 11:36:40 145
原创 kafka入门学习笔记(二)
kafka入门学习笔记(二)二、 KAFKA架构这是一个集群的架构图。集群中有多个broker,每个broker相当于一个物理机。每个topic有多个part。每一个part有一个leader,可以有或者没有follower,读写操作都是基于leader进行的。整个集群中的kfk信息,producer,broker,consumer等状态信息都是由zk来管理的。kafka之ZKzk在kafka中的作用。为啥我们选择zk。ZooKeeper是一个分布式的服务框架,可以用来解决集群中应用系统的一
2020-07-14 15:32:50 177
原创 Java初始化对象属性值的方式
Java初始化对象属性值的方式1、数据库设计一般我们在数据库设计时很多字段都会设计一个非空值,如下sql:CREATE TABLE `student` ( `id` int(11) unsigned NOT NULL AUTO_INCREMENT, `name` Varchar(64) Not Null Default '' Comment '姓名', `age` int(11)...
2020-04-05 00:12:57 3079
原创 使用模板方法处理枚举事件的心得
使用模板方法处理枚举事件的心得1、定义枚举类型一般情况我们有多重事件类型的情况肯定先自定义一个事件类型的枚举,代码示例如下:@Getterpublic enum EventTypeEnum { TYPE1(1,"类型1"), TYPE2(2, "类型2"), TYPE3(3, "类型3"), ; private int value;//vn ...
2020-03-23 22:45:29 448
原创 TCP/IP长连接自定义协议解析
TCP/IP长连接自定义协议解析一、 自定义协议概览下面是由终端发送到服务器端的一个自定义报文,我们由这个自定义报文来解释和阐述整个全通信链条过程中的编解码;发送方 终端数据采集中心接收方 中心监控服务器数据域数据类型/长度例(十六进制)例说明字节数数据包类型uint160X0A,0X000x0A=10,表示此包为签到请求(小端模式:0x000A)2...
2020-02-16 16:56:53 1565
原创 java相关面试总结
物联网浅谈开篇语:一家公司工作了3年,对技术和能力及氛围考虑,觉得该换个地方进行下深层次的提高。最近面试了几家大厂,有成功,有失败。因此觉得有必要把最近的经历和经验总结下。技术栈主要氛围以下几个方面:Javaspring frameworkmysqlredis额外篇1、Javajava主要涉及到问题比较多,特别是一些大厂,对基础很重视,例如重载、重写、封装等。hashmap相...
2019-12-27 23:42:39 180
原创 kafka入门学习笔记(一)
kafka入门学习笔记(一)一、 KAFKA概述kafka定义Apache Kafka® is a distributed streaming platform. What exactly does that mean?A streaming platform has three key capabilities:Publish and subscribe to streams ...
2019-12-27 23:40:51 334
原创 物联网浅谈
物联网浅谈开篇语:物联网Iot作为互联网行业一个重要的分支。现在及未来一段时间Iot将会作为一门比重很高的行业热门持续存在。本篇就结合着最近的项目,从技术角度去梳理下Iot的架构和实现1、技术栈springbootnettymqttredisrabbitmqmysql[外链图片转存失败(img-b7IgRfvt-1563330173906)(https://i.imgur.c...
2019-07-17 10:23:38 403
原创 Centos离线安装Mysql5.6
离线安装步骤:1、安装mysql-community-release-el7-5.noarch.rpmrpm -ivh mysql-community-release-el7-5.noarch.rpm2、安装mysql-community-common-5.6.25-2.el7.x86_64.rpmrpm -ivh mysql-community-common-5.6.25-2.el7....
2019-06-06 10:53:32 1562 1
原创 RabbitMQ学习笔记(3)
RabbitMQ学习笔记(3)对照着英文文档写了这么久,突然发现一个哥们《RabbitMQ学习总结》翻译的很详细也很到位,因此后面的就不继续写了。我们本篇主要做下总结,后续会写一篇RabbitMQ与Springboot 集成篇1、Publish/Subcribe、Routing、RPC我们前两篇分别介绍了入门模式及工作队列。入门模式:一个生产者,一个队列,一个消费者这种模式单一通道,逻辑...
2019-03-15 11:56:58 171
原创 RabbitMQ学习笔记(2)
RabbitMQ学习笔记(2)1、工作队列Work Queues由一个生产者进行生产,经由消息队列,被多个消费者消费。发送端代码如下:public class NewTask { private static final String QUEUE_NAME = "work_queue"; public static void main(String[] args) thr...
2019-03-13 15:11:09 249
原创 RabbitMQ学习笔记(1)
RabbitMQ学习笔记(1)1、RabbitMQ安装下载地址:http://www.rabbitmq.com/install-windows.html详情百度一大把2、简要介绍根据官网:http://www.rabbitmq.com/getstarted.html我们也以6种模式去介绍RabbitMQ的用法,如下:快速入门Hello World工作队列Work Queues...
2019-03-13 11:31:55 175
原创 HashMap数据结构浅谈
HashMap数据结构浅谈开篇语:hashmap作为一种非常重要的数据结构,无论是在理论学习中,还是实际开发中都会经常遇到。这里总结一下对于hashmap一些基础的知识点。1、常见的数据结构一般开发中常见的数据结构有数组、链表、树、及HashMap。数组结构和链表结构的图形结构非常简单。本次主要讲解HashMap的结构,并结合着源码进行简要分析2、HashMapHashMap的结构图如...
2019-03-13 10:03:41 1218
原创 JVM学习简要概述
JVM学习简要概述编外话:最近发现面试基本上对3年经验的java工程师都会要求JVM相关的内容,因此想把这部分给总结下,一方面是对自己对于此方面的内容的一个巩固;另一方面也是给相关需要了解这方面的人一个简单的了解。1、JVM简要的了解JVM(Java Virtual Machine),即java虚拟机。是java代码运行的核心组成部分。java能够实现跨平台主要是它是基于java虚拟机运行的...
2019-03-11 16:51:05 517
原创 springcloud之config配置自动刷新
springcloud之config配置自动刷新本项目采用版本选择:springboot的版本是2.1.2.RELEASEspringcloud的版本是Greenwich.SR1springcloud仓库使用的是Gitee1、下载并安装RabbitMq下载地址:http://www.rabbitmq.com/download.html参考文档:https://www.cnblogs....
2019-03-08 11:45:02 973
原创 SpringBoot 中freemarker自定义标签学习
SpringBoot 中freemarker自定义标签学习为什么要自定义标签能够自定义模型,对一些常见的公用返回数据,不用每次通过页面属性进行响应。可以通过自定义标签,在页面进行不同的包装开发准备pom依赖:<dependency> <groupId>org.springframework.boot</groupId> <artifactI...
2019-02-15 11:35:34 2830
原创 关于学习Docker的一点心得
关于学习Docker的一点心得1、image删除docker rmi e9b5b2500f9c直接删除报了这个错误Error response from daemon: conflict: unable to delete e9b5b2500f9c (must be forced) - image is being used by stopped container 7ba129444b8...
2019-02-14 17:20:35 872 1
原创 Springcloud RestTemplate三种方式
Springcloud RestTemplate三种方式第一种方式直接写死urlRestTemplate restTemplate = new RestTemplate();String resp = restTemplate.getForObject("http://localhost:8080/order",String.class);第二种方式通过LoadBalancerCli...
2019-01-14 15:27:48 1048 4
原创 使用redis实现某类型的排序榜思路与设计方案
使用redis实现某类型的排序榜思路与设计方案使用redis的有序集合Sorted Set.集合内不允许有重复元素,每个元素会有一个分数,是根据分数进行排序。集合是通过哈希表实现的。Redis的哈希是一个String类型的field和value的映射表。适合存储对象设计思路:把需要排行的类及依据排行的key存入Sorted Set。zadd PaperRankings nums Pap...
2018-12-21 10:29:02 721
原创 线程的定时任务类ScheduledExecutorService
线程的定时任务类ScheduledExecutorService前言最近再看dubbo源码的时候(DubboRegistry),有这么一段// 定时任务执行器private final ScheduledExecutorService scheduledExecutorService = Executors.newScheduledThreadPool(1, new NamedThread...
2018-12-21 10:26:09 2357
原创 mysql学习笔记
mysql学习笔记一、优化索引索引分单列索引和组合索引。单列索引,即一个索引只包含单个列,一个表可以有多个单列索引,但这不是组合索引。组合索引,即一个索引包含多个列。创建索引时,你需要确保该索引是应用在 SQL 查询语句的条件(一般作为 WHERE 子句的条件)。实际上,索引也是一张表,该表保存了主键与索引字段,并指向实体表的记录。上面都在说使用索引的好处,但过多的使用索引将会造成滥用...
2018-11-28 18:42:42 131
原创 spark-cdh版本编译过程中的各种坑
spark-cdh版本编译过程中的各种坑** bug1 **[ERROR] Failed to execute goal on project spark-launcher_2.11: Could not resolve dependencies for project org.apache.spark:spark-launcher_2.11:jar:2.1.0: Could not fin...
2018-11-28 16:59:39 1760 1
原创 Vue学习笔记(一)
Vue学习笔记(一)Vue框架的标准模式 new Vue({ el:, /*vue监听范围*/ data:{}, /*vue数据模型*/ filters:{}, /*局部过滤器*/ mounted:function (){}, /*生命周期调用*/ methods:{} /*所有事件的绑定*/ }); /*Vue.filter() 定义全局过滤器...
2018-11-27 08:35:40 205
原创 mysql服务配置
mysql服务配置1、进入系统文档cd /etc/systemd/system2、创建一个mysql.service文件mkdir mysql.service3、编辑文件内容如下:## Simple MySQL systemd service file## systemd supports lots of fancy features, look here (and link...
2018-11-27 08:28:18 1215
原创 Hadoop/Yarn/Hive/Spark等大数据环境搭建集成篇
Hadoop/Yarn/Hive/Spark等大数据环境搭建集成篇一、Hadoop环境搭建与配置1、前置准备,安装jdk和ssh免密登录参见https://blog.csdn.net/qq_29269907/article/details/812214302、下载hadoopwget http://archive.cloudera.com/cdh5/cdh/5/hadoop-2.6.0-...
2018-11-26 20:31:50 1706
原创 Linux系统实现log日志自动清理
Linux系统实现log日志自动清理背景简介在实际项目中由于服务器内存有限,人工制定的定时清理时常会忘记。因此启用linux系统定时任务去执行日志清理功能。引用文献创建shell脚本及执行权限touch /**/**/auto-del-log.sh //创建脚本文件cd /**/** //进入该目录chmod +x auto-del...
2018-11-21 19:04:34 9255 2
原创 Git提交项目到码云的流程
Git提交项目到码云的流程Git bash进入本地项目 cd ‘目录’初始化本地仓库 git init将项目添加到本地仓库 git add .查看git状态 git statuscommit 到本地仓库 git commit -am “提交信息”理解远程码云仓库 git remote add origin 仓库地址先拉取项目 git pull推送项目至码云 git ...
2018-11-21 19:02:09 386
原创 关于ThreadLocal一点心得
关于ThreadLocal一点心得防止任务在共享资源上产生冲突的第二种方式是根除对变量的共享。线程本地存储是一种自动化机制,可以为使用相同变量的每个不同线程都创建不同的存储。(摘自Java编程思想)摘自Thread源码:package java.lang;public class Thread implements Runnable { /* ... */ ...
2018-11-21 14:34:02 141
原创 Spring 实现对事务的管理
##SM实现对事务的管理##一、什么是事务a、事务or事务(*来自于百度百科)事务(Transaction),一般是指要做的或所做的事情。在计算机术语中是指访问并可能更新数据库中各种数据项的一个程序执行单元(unit)。事务通常由高级数据库操纵语言或编程语言(如SQL,C++或Java)书写的用户程序的执行所引起,并用形如begin transaction和end transaction语句...
2018-11-13 18:25:58 364
原创 spark.sql.SqlContext等包找不到
##spark.sql.SqlContext等包找不到##报错信息如下:百度了很多,没有找到原因,后在一朋友指导下修复了该问题解决方案修改pom,把依赖包的范围给注释掉然后reimport dependencies重新运行main示例,问题解决关于maven依赖范围的几点补充:scope:This element refers to the classpath of th...
2018-11-05 11:47:37 4500
原创 Spring Aop实现日志记录
Spring Aop实现日志记录前置准备下载依赖 &lt;dependency&gt; &lt;groupId&gt;org.springframework&lt;/groupId&gt; &lt;artifactId&gt;spring-webmvc&lt;/artifactId&gt; &lt;ver
2018-10-30 15:27:51 278
原创 Druid工具配置使用
一、 配置maven&lt;!-- mysql数据库连接池 pool --&gt;&lt;dependency&gt; &lt;groupId&gt;com.alibaba&lt;/groupId&gt; &lt;artifactId&gt;druid&lt;/artifactId&gt; &
2018-10-25 14:37:41 375
原创 maven常用命令学习
maven常用命令学习maven使用了这么久,一直是通过myeclipse集成去操作maven。没有进行过系统的了解。进来觉得还是要系统的去了解下整个maven。做个笔记。maven下载及安装下载网址:http://maven.apache.org/download.cgi截图如下:window系统下载zip,linux下载tar.gz格式配置环境变量:Window:Linu...
2018-10-23 14:34:31 337
原创 MySql主从复制配置
*本文档服务器默认选择centos 7.0 mysql5.6 mysql-proxy0.8.5主机服务器:192.168.162.195从机服务器:192.168.162.197代理服务器:192.168.162.198一、主从配置1、 分别在主机服务器和从机服务器安装mysql。分别配置成服务(详见mysql服务配置)。2、 在主机设置:A. systemctl status ...
2018-10-19 16:40:23 220
原创 SSM+wangEditor+shiro实现博客系统
SSM+wangEditor+shiro实现博客系统##说明:前端采用富文本编辑器wangEditor后台采用springMvc框架数据库采用mysql图片存储的问题使用七牛云*关于wangEditor*关于七牛云一、环境搭建1、搭建maven项目2、springMvc.xml配置3、七牛云配置qiniu.properties4、项目结构图如下二、项目介绍wangEdi...
2018-10-19 15:25:12 610
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人