2024年4月2日

保姆级教程告诉你 grpc-go 的服务端客户端实现

摘要: 目录1.proto环境准备2.编写 IDL3.生成pb.go, grpc_pb.go4.实现服务端5.实现客户端6.测试 以下示例来自于个人整理,大佬轻喷。 示例的项目目录: 1.proto环境准备 这里的环境准备主要就是以下三点: protoc protoc-gen-go protoc-gen-g 阅读全文

posted @ 2024-04-02 17:40 进击的davis 阅读(19) 评论(0) 推荐(0) 编辑

2024年3月27日

elasticsearch esrally 性能测试实操

摘要: 目录准备数据docker 测试环境准备正式测试 最新在用 esrally 测试 es 的性能,今天把相关操作记录下。本人非专业测试,各位大佬请轻喷。 关于 esrally 的文档,请移步:esrally测试 esrally 是个 elastic 官方的测试工具,可以对 es 进行压力测试。其运行对环 阅读全文

posted @ 2024-03-27 15:09 进击的davis 阅读(23) 评论(0) 推荐(0) 编辑

2024年3月26日

elasticsearch 组件基于单机的多实例集群

摘要: 声明: 本示例主要作为测试用,生产请慎重。 最近公司突发奇想,想让我们搞个单机多实例的 es 的集群,看看其性能咋样。通常来说,es 作为搜索引擎,应用场景不乏日志分析、网络安全、搜索引擎等,有时也会用作日志数据库使用,毕竟其出色的搜索查询性能,不是同等量级 关系型数据库可以比拟的,主要还是因为其 阅读全文

posted @ 2024-03-26 10:15 进击的davis 阅读(10) 评论(0) 推荐(0) 编辑

2024年3月23日

归并排序、快排、堆排序的比较

摘要: 目录算法比较复杂度稳定性应用场景算法实现归并排序快速排序堆排序冒泡排序测试数据量100数据量10w 个人理解,不同见解可以一起讨论。 在日常排序算法中,小数据量下,用啥区别都不大,但是数据量起来后,性能差异就会很大了。 而且在常用的大数据量的排序算法中,主要就是归并、快排和堆排,下面从几个方面一起看 阅读全文

posted @ 2024-03-23 18:04 进击的davis 阅读(10) 评论(0) 推荐(0) 编辑

2024年3月22日

Redis 通过 info 命令查看不同分区的信息

摘要: 目录分区info serverinfo clientsinfo cpuinfo memoryinfo persistenceinfo replicationinfo statsinfo keyspaceinfo cluster 连上 redis 后,通过 info 命令,可以得到以下信息,基本就表示 阅读全文

posted @ 2024-03-22 16:42 进击的davis 阅读(4) 评论(0) 推荐(0) 编辑

elasticsearch 6.8 常用数据字段类型

摘要: 在 es 中,字段类型主要有以下几种: Arrays Binary datatype Range datatypes Boolean datatype Date datatype Geo-point datatype Geo-Shape datatype IP datatype Keyword da 阅读全文

posted @ 2024-03-22 14:57 进击的davis 阅读(4) 评论(0) 推荐(0) 编辑

2024年3月21日

elasticsearch ilm 再学习与实战

摘要: 目录了解应用其他脚本 了解 如果你对 es 有一定的使用经验,相信应该听过 ilm 机制,没错,就是 es 的索引生命周期管理机制。 在实际项目应用中,合理应用 ilm 机制可以解放我们的双手,不用手动去管理索引的新建、切分,只需要内部机制处理索引,如: 1.最新的数据可读可写 2.次新的数据仅可读 阅读全文

posted @ 2024-03-21 16:01 进击的davis 阅读(13) 评论(0) 推荐(0) 编辑

2024年3月20日

golang 中 channel cap设为1原理 | 有无缓冲的channel

摘要: 目录1.无缓冲的channel2.有缓冲的channel总结 在golang中,如果涉及消息传递或者是并发控制等,我们常常用到 channel,channel的具体原理这里不讨论,今天主要看看有无缓冲以及缓冲值的设计。 1.无缓冲的channel 联系 channel 的数据结构 mchan 可知, 阅读全文

posted @ 2024-03-20 23:40 进击的davis 阅读(5) 评论(0) 推荐(0) 编辑

golang 多返回值的实现原理-转载

摘要: 之前一次面试时,面试官问到 你知道golang的多返回值的实现吗,一脸懵逼,平时主要注重项目应用开发,对这块确实没关注,答得不好,各位大佬,以后建议也加强下基础哦。 今天看看 golang 中多返回值的实现。 可以简单认为 c 中多返回值的实现,其实就是通过寄存器将返回参数以指针形式传入传入参数中, 阅读全文

posted @ 2024-03-20 23:21 进击的davis 阅读(22) 评论(0) 推荐(0) 编辑

golang vs python 应用项目语言选择

摘要: 目录1.语言选择2.python语言特点及应用场景2.1 语言特点1.简单2.易于学习3.自由且开放4.丰富的库5.互动模式6.跨平台性7.可扩展8.数据库9.可嵌入10.高级语言2.2 应用场景Python在系统编程中的应用Python在网络爬虫方面的应用Python在人工智能、科学计算中的应用P 阅读全文

posted @ 2024-03-20 23:02 进击的davis 阅读(15) 评论(0) 推荐(0) 编辑

2024年3月18日

golang fasthttp服务端的简单实现

摘要: 使用示例: package main import ( "github.com/buaazp/fasthttprouter" "github.com/valyala/fasthttp" "log" ) func main() { // 创建路由 r := fasthttprouter.New() r 阅读全文

posted @ 2024-03-18 10:59 进击的davis 阅读(13) 评论(0) 推荐(0) 编辑

2024年3月15日

golang 随机数组的性能对比测试

摘要: 最近需要用到随机数,但在随机数的生成方面遇到些问题,如加了 seed 后反而生成的数组是固定的,没有加是随机的,后面查资料了解到,如果 seed 值是一样的,序列中的值就固定的,而不加 seed 时,每次的都是随机的,后面想到如果用来做负载均衡呢,性能又如何。 下面是源码: package benc 阅读全文

posted @ 2024-03-15 11:29 进击的davis 阅读(4) 评论(0) 推荐(0) 编辑

2024年3月13日

es 实现模糊匹配/正则匹配

摘要: 模糊匹配: { "query": { "wildcard": { "userName.keyword": "*hello*" # 匹配带 hello 串的用户名 } } } 正则匹配: { "query": { "regexp": { "userName.keyword": "[0-9a-f]{8} 阅读全文

posted @ 2024-03-13 11:34 进击的davis 阅读(63) 评论(0) 推荐(0) 编辑

2024年3月8日

elasticsearch 查询数据-深度分页解决方案

摘要: es深度查询时,如果数据量超过10000,es会报错,后续的数据就查不了了,当然,es为我们提供了下查询方案,游标查询或者search_after查询。 以下是 kibana 测试 dsl: # 1.游标方式 # 第一次查询获取游标,同时处理数据(返回数据中含游标信息) GET my_results 阅读全文

posted @ 2024-03-08 10:26 进击的davis 阅读(10) 评论(0) 推荐(0) 编辑

2024年3月1日

统计代码行数,用来做日报周报用

摘要: 命令: find . -name "*.go" | xargs wc 阅读全文

posted @ 2024-03-01 17:58 进击的davis 阅读(2) 评论(0) 推荐(0) 编辑

2024年2月24日

单调栈的定义与应用

摘要: 定义: 单调栈是一种特殊的栈结构,通常用于解决一类特定的问题,如找到数组中元素的下一个更大(或更小)元素。它的核心特性是维护栈内元素的单调性,即栈内元素按照从栈底到栈顶的顺序,要么严格递增,要么严格递减。 也即: 单调递增栈:从栈底到栈顶,依次递增的顺序 单调递减栈:从栈底到栈顶,依次递减的顺序 单 阅读全文

posted @ 2024-02-24 10:09 进击的davis 阅读(5) 评论(0) 推荐(0) 编辑

2024年1月27日

python 多线程运行 串行或并行

摘要: 我们知道在 python 中运行多线程程序很简单,只需要几步,创建线程,start线程即可,下面简单说下多线程的串行或者并行的使用示例: # -*- coding: utf-8 -*- # @Time : 2024-01-27 14:03 import threading import time d 阅读全文

posted @ 2024-01-27 14:29 进击的davis 阅读(33) 评论(0) 推荐(0) 编辑

2024年1月10日

Java Spring Boot Controller、Service、DAO实践

摘要: 如果你用过 Spring MVC,那就对 Controller、Service、DAO 三者的概念一定不陌生,我们通过 Controller 来接收请求和返回响应,具体的业务处理则放在 Service层 处理,而 DAO 则实现具体与数据库等持久层的操作。 今天从分层的角度来学习下在 Spring 阅读全文

posted @ 2024-01-10 14:00 进击的davis 阅读(38) 评论(0) 推荐(0) 编辑

2024年1月9日

SpringBoot中mybatis-plus mapper始终为null

摘要: 参考: SpringBoot中mapper始终为null 阅读全文

posted @ 2024-01-09 17:00 进击的davis 阅读(57) 评论(0) 推荐(0) 编辑

2024年1月3日

Java Spring Boot 中集成文件上传和下载功能

摘要: 在日常开发中,可能会遇到文件上传下载的需求,今天简单学习下,在项目开发中,如果遇到类似需求,该如何应对。 在 Spring Boot 项目中如果增加 文件上传下载 的功能,其实也挺简单,无非就是增加接口而已,但具体实现需要根据需求来定,通常我们的上传,可能会限制文件类型,限制文件大小,或者是限制文件 阅读全文

posted @ 2024-01-03 11:36 进击的davis 阅读(124) 评论(0) 推荐(0) 编辑

导航