自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 mysql数据库一键导出数据表,可以自取表结构、表数据

数据库导出数据

2022-11-25 11:11:12 366 1

原创 日志可视化方案:filebeat+elk

首先采用的是filebeat作为日志采集工具,用它的原因是因为它可以说是logstash的精简版,是后来logstash用go重新写的一个版本,但它没有过滤的功能,而logstash需要jvm即java环境对内存资源占用较大,用filebeat可以极大节省资源;用filebeat采集到日志后输出到logstash进行过滤,当然你也可以在它们之间加一层消息队列,比如kafka,作用是可以做一个持久化,这里是没有用到kafka的;也可以使用devtool做es的语法查询。...

2022-07-19 22:47:25 1285

原创 mysql和elasticsearch数据同步方案:rocketmq做异步

先记录一下我新学习的东西所踩到的坑,elasticsearch的index必须是不包含大写字母的,不然会报错,还有rocketmq的consumerGroup是一个大坑,必须依据topic做区分,当有两个topic的消息队列时,一定要保证consumeGroup是两个不同的。这是因为,Consumer会定期发送心跳,默认是30s一次。心跳会像全部broker发送,心跳包内容包括groupname,topicname1。然后broker端会缓存这个信息,以groupname为key,在broker端的缓存里,

2022-06-02 00:48:36 445

原创 Rocketmq部署与测试

先讲一下rocketmq的具体结构,基本由四个部分组成,producer、consumer、nameserver、broker生产者与消费者与broker(管理消息队列作用)交互时需要先与nameserver(服务注册中心)交互得到需要的消息队列地址,生产者生产到broker需要指定一个topic,消费者进行订阅消费的时候也需要指定一个topicwindows环境下,去官网下载标准二进制压缩包附上下载地址https://archive.apache.org/dist/rocketmq/4.9

2022-05-31 17:07:12 620

原创 利用好innodb新特性全文索引,优化模糊查询

我们使用mysql进行模糊查询时可能经常会考虑用like和%,但这不能很好的利用到索引,只有当出现“你好%”这种格式的模糊查询时,mysql执行器会帮我们选择走索引,而其他的不符合最左前缀的不走索引而降级到全表查询。我们在name字段加了全文索引,用于对用户名的模糊搜索,尽量使用到索引这是使用match(col) against('字符串')的一个模糊查询sql可以看到explain结果的key字段表明了是使用了全文索引的具体点说,全文索引的单位是词(具体是使用了倒排索引,即对词做一个文件的

2022-05-27 15:49:23 179

原创 Windows系统下打包springboot项目,构建dockerfile生成镜像

1.创建dockerfile,需要在cmd中在执行cd. > dockerfile ,在存有jar包的文件夹下的路径栏输入cmd回车即可打开cmd,亲测powershell是不允许的。完成这一步就创建了dockerfile文件,一个没有后缀的文件2.编辑dockerfile文件3.在当前文件夹build出镜像4.可以看到镜像已创建...

2022-04-18 16:22:10 983

原创 初识kubernetes

初识kuberneteskubernetes是什么?kubernetes的具体优点k8s一些概念kubernetes是什么?在聊到k8s之前,需要知道云原生的概念,按照我自己的理解,与传统的开发方式相比,云原生是指一种使用容器化的方式开发程序,并与开发环境一同上传为镜像,镜像可以理解为java中的类,而容器可以视为对象,那么就没有开发环境与部署环境的差别了,都是同一个镜像,也就是是同一个环境的应用程序,这是容器技术应用容器引擎docker所解决的问题:即解决了开发与部署环境的差异性。那么还存在着一个问

2022-04-13 00:01:13 103

原创 mysql全文索引定义语法分析器

create fulltext index username_fulltext on user(name) with parser ngram才可以使得全文索引在两个中文字符的长度下就可以生效

2022-04-09 23:34:20 406

原创 一道动态规划算法题引起的思考(最长回文子字符串)

回文串,是什么?一个字符串从左到右或者从右到左读都是一致的,也就是说回文字符串具有高度对称性的特点,那么它是不是很像我们一层一层的括号结构,可以简单这样理解,而决定它是不是一个“完美括号”,在于以下两种情况在最外层括号应该是对称的,我们用下标i与下标j表示当前进行比较的字符,字符串的每一个字符我们用e表示。1.当e(i)与e(j)不相等时,明显不符合对称性,所以不是一个回文串。2.当e(i)与e(j)相等时,第一种情况:j-i<3,可能为aa、aba类型的字符串,即为回文串;第二种情况:大

2022-03-17 00:58:12 289

原创 jvm总结

jvm总结

2022-03-15 14:14:34 642

原创 jmm原子性操作与volatile关键字的联系与思考

主内存与工作内存八种操作指令:lock(锁定):作用于主内存的变量,它把一个变量标识为一条线程独占的状态; unlock(解锁):作用于主内存的变量,它把一个处于锁定状态的变量释放出来,释放后的变量才可以被其他线程锁定; read(读取):作用于主内存的变量,它把一个变量的值从主内存传输到线程的工作内存中,以便随后的load动作使用; load(载入):作用于工作内存的变量,它把read操作从主内存中得到的变量值放入工作内存的变量副本中; use(使用):作用于工作内存的变量,它把工作内存中一个

2022-02-27 16:52:02 68

原创 高并发情况下对单行数据的频繁访问解决方案

比如说浏览量的增加,点赞与取消点赞,在特定的情况下,都会对数据库中表的某一行在同一时间内产生高并发情况。这样子会形成一种单消息队列的阻塞情况,那么我们可以从数据库设计方面做什么样的优化呢,我们可以把这种容易出现单消息队列情况的义务的字段分出来,独自作为一个表。为什么要单独分表呢,原因在于我们需要的是避免单消息队列的情况,我们用多行数据去记录同一个板块的浏览量,那么可以出现多行数据分担消息请求,请求的时候采用随机访问其中一行,那么总的浏览量就是这些行数据的SUM,避免了单消息队列的情况,而且分表的意义

2022-02-23 13:01:04 573

原创 后序遍历二叉树——巧妙迭代解法

迭代思想迭代是对递归的高度模仿,我们都知道递归是基于栈来实现的,那么我们也可以自己new一个栈,写出我们的迭代算法。前序迭代遍历前序迭代是比较简单的思想代码如下 public static void diedai1(TreeNode root) { ArrayList<Integer> list = new ArrayList<>(); Stack<TreeNode> stack = new Stack<>

2022-01-17 20:44:30 417

空空如也

空空如也

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

TA关注的人

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