草庐IT

Android13音频录制适配

Android13音频录制适配前言:之前写过一篇音频录制的文章,当时是在Android10以下的手机可以成功录制和播放,但是Android10及以上手机提示创建文件失败,最近做过Android13的适配,索性一起把之前的录音也适配了,记录一下适配的过程。1.Manifest添加Android13文件读写适配:!--存储图像或者视频权限-->uses-permissionandroid:name="android.permission.READ_EXTERNAL_STORAGE"android:maxSdkVersion="32"/>uses-permissionandroid:name="an

MySQL如何实时同步数据到ES?试试阿里开源的Canal

前言前几天在网上冲浪的时候发现了一个比较成熟的开源中间件—— Canal 。在了解了它的工作原理和使用场景后,顿时产生了浓厚的兴趣。今天,就让我们跟随我的脚步,一起来揭开它神秘的面纱吧。目录前言简介 工作原理 MySQL主备复制原理canal工作原理Canal架构 Canal-HA机制 应用场景 同步缓存Redis/全文搜索ES下发任务数据异构MySQL配置 开启binlog扩展statementrowmixed配置权限Canal配置 配置启动报错解决实战 引入依赖代码样例测试简介 canal 翻译为管道,主要用途是基于MySQL数据库的增量日志Binlog解析,提供增量数据订阅和消费。早期阿

mysql 与 es 数据同步常见方案

mysql与es数据同步常见方案说明@authorJellyfishMIX-github/blog.jellyfishmix.comLICENSEGPL-2.0问题背景最近需求需要使用es,并要求mysql与es做到秒级别的数据同步。梳理了一些mysql与es间数据同步的常见方案。同步方案mysql与es数据同步,目前方案主要有:双写写mysql的同时写es。优点:这种方式简单粗暴,实时写入能做到秒级。缺点:这种方式代码侵入性强,要在之前写mysql的地方加写es的代码。以后写mysql的地方也要加写es的代码。解析binlog+kafka解析binlog->发kafka消息->消费kafka

es 使用 cardinality + collapse做分页去重查询

1.首先我们来介绍一下cardinality的用法cardinality即去重计算,类似sql中count(distinct),先去重再求和,计算指定field值的种类数。GET/index/_search{"size":0,"query":{"match_all":{}}"aggs":{"test_count":{"cardinality":{"field":"name"}}}}//返回结果{//..."aggregations":{"test_count":{"value":5}}}可以看到,aggregations聚合下,返回了按名字查询去重后的结果数,但是只有去重后的条数,没有具体的数

ES中mapping是什么,es中的数据类型

 mapping解释ES中的mapping有点类似与RDB中“表结构”的概念,在MySQL中,表结构里包含了字段名称,字段的类型还有索引信息等。在Mapping里也包含了一些属性,比如字段名称、类型、字段使用的分词器、是否评分、是否创建索引等属性,并且在ES中一个字段可以有对个类型。分词器、评分等概念在后面的课程讲解。ES数据类型常见数据类型数字类型:    longintegershortbytedoublefloathalf_floatscaled_floatunsigned_longkeywords:keyword:适用于索引结构化的字段,可以用于过滤、排序、聚合。keyword类型的字

ES避坑指南

基础篇一.分片分片是一个功能完整的搜索引擎,它拥有使用一个节点上的所有资源的能力。索引一旦创建分片数量就已经确定,且不可更改,默认为5个分片,每个分片有1个副本二.文档元数据;_index:索引名,这个名字必须小写,不能以下划线开头,不能包含逗号_type:索引下的逻辑分区一个_type命名可以是大写或者小写,但是不能以下划线或者句号开头,不应该包含逗号,并且长度限制为256个字符_id:_id+_index+_type组合确定ES中的一个文档三:更新和冲突1为了避免数据丢失,updateAPI在检索步骤时检索得到文档当前的_version号,并传递版本号到重建索引步骤的index请求。如果另

Elasticsearch:创建自定义 ES Rally tracks 的分步指南

作者:AlejandroSánchez按照这个综合教程学习如何制作个性化的RallytracksESRally是什么?它的用途是什么?ESRally是一个用于在Elasticsearch®上测试性能的工具,允许你运行和记录比较测试。做出决策可能很困难,尤其是当你没有所需的信息并且只能根据过去积极或消极的变化进行猜测或经验时。如果我们补充一点,数据世界必须是灵活的,因为它发展迅速,因此我们的Elasticsearch必须适应它,这个工具将帮助我们能够衡量我们随着时间的推移所做的所有变化和演变,并评估它们的影响。最重要的是,我们可以获得做出正确决策所需的信息。使用ESRallyESRally附带了

java SpringBoot2.7整合Elasticsearch(ES)7 带条件分页查询与不带条件分页查询演示讲解

上文javaSpringBoot2.7整合Elasticsearch(ES)7进行文档增删查改我们带着大家整合了Elasticsearch对索引中的文档做了各方面操作然后我们来说说分页查询这里为了方便大家看我加了五条数据进去这里我们仍然需要带个条件这里我们用nameMapper接口加一个这样的函数Pagebooks>findByName(Stringname,Pageablepage);返回一个Page分页泛型对象然后参数中要有一个Pageable类型的不然会报错测试类编写代码如下packagecom.example.webdom;importorg.springframework.data.

13款强大的开源API测试工具,不容错过!

使用SOA和微服务作为软件架构的趋势不断上升,催生了多种用于服务API自动化测试的工具。API是应用程序接口(applicationprogramminginterface)的缩写,是一套用于构建和集成应用软件的定义和协议,是两个或多个计算机程序相互通信的一种方式。API定义了客户端和服务之间的通信协议以及服务的行为方式。你可以使用不同的协议或体系结构约定来管理应用程序中的交互。简单对象访问协议(SOAP)建议使用XML作为消息格式,并通过HTTP或SMTP传送请求。表述性状态传输(REST)与SOAP不同,因为SOAP是一种协议,而REST是一种架构风格。可以使用GraphQL(一种查询语言

【ElasticSearch笔记】安装ES和Kibana

目录一、原生二进制文件安装ES1.安装JavaJDK(可选)2.下载ElasticSearch二进制包3.创建运行ES的普通用户4.根据需求修改ES配置文件5.设置JVM堆大小干货|吃透Elasticsearch堆内存6.创建ES数据及日志存储目录7.修改安装目录及存储目录权限8.注册开机自启动(可选)9.安装与查看ES插件(可选)Kibana(可选)1.下载Kibana二进制压缩包2.解压压缩包3.启动服务4配置中文5.安装与查看Kibana插件(可选)二、使用Docker安装1.使用docker-compose启动Elasticsearch+Logstash+Kibana三、附录ES常见问