摘要:
StarRocks 官方只提供了单节点运行的镜像,如果是构建可以分布式运行的 StarRocks 的容器镜像,那么基于基础镜像可以有两种选择,分别是:starrocks/artifacts-ubuntu 和 starrocks/allin1-ubuntu,这两个都是基于 Ubuntu 22.04 的 阅读全文
摘要:
Kafka 线上性能调优是一项综合工程,不仅仅是 Kafka 本身,还应该从硬件(存储、网络、CPU)以及操作系统方面来整体考量,首先我们要有一套生产部署方案,基于这套方案再进行调优,这样就有了可靠的底层保证,才能保证 Kafka 集群整体的稳定性。 1. 线上部署方案 1.1 操作系统 我们知道 阅读全文
摘要:
当前按照官网上的提供的安装包方式安装,版本是 3.2.2,部署模式为存算一体,安装的操作系统是 Ubuntu 22.04,JDK 版本为 OpenJDK 11,这里选择 3 个节点进行安装,节点的 hosts 定义如下: 10.0.1.25 ec25 10.0.1.26 ec26 10.0.1.27 阅读全文
摘要:
我们在使用 Kafka 生产和消费消息的时候,肯定是希望能够将数据均匀地分配到所有服务器上。比如在日志收集场景,数据量是非常巨大的,例如大批量的集群每分钟产生的日志都能以 GB 计,所以如何将这么大的数据量均匀地分配到 Kafka 的各个 Broker 上,就是一个非常重要的问题。 除了应对吞吐量的 阅读全文
摘要:
本次实现基于 Flink 1.18 版本,具体的对象之间的关系可以先参考官网的图: 先拿官网上的 Socket 示例来说一下实现过程: 首先编写 SocketDynamicTableFactory 实现 DynamicTableSourceFactory 接口。 在 SocketDynamicTab 阅读全文
摘要:
Redis 作为内存数据库,其性能表现非常出色,单机 OPS 很容易达到 10万以上,这主要得益于其高效的内存数据结构、单线程无锁设计、IO 多路复用等技术实现。但是在线上生产环境的使用中,我们仍然会发现在使用 Redis 的时候其性能和预期是不符的,例如出现了明显的延迟等,如果我们能从 Redis 阅读全文
摘要:
首先在程序中封装了下面一个函数用来执行系统命令: // 执行系统命令 func executeCommand(command string, output, outerr io.Writer) error { cmd := exec.Command("/bin/bash", "-c", comman 阅读全文
摘要:
APISIX 的 proxy-cache 插件可以对上游的查询进行缓存,这样就不需要上游的应用服务自己实现缓存了,或者也能少实现一部分缓存,通用的交给插件来做。 下面的操作都是基于 APISIX 3.2 版本进行配置,关于 proxy-cache 的详细配置的可以参考文档:https://apisi 阅读全文
摘要:
在使用 etcd 作为配置存储或者其他的场景,如果因为误操作对其中 key 的值进行了修改,如果想要找回原来的值,可以利用 etcd 的版本机制进行回溯找回以前的值。在具体操作之前,我们首先获取一下 key 完整的信息来举个例子: # 如果开启认证要指定 --user <username>:<pas 阅读全文
摘要:
本文基于 APISIX 3.2 版本进行插件开发并运行通过。 APISIX 目前开发插件比较简单,只需要编写 Lua 源代码并放到默认的插件目录下,然后通过配置文件开启插件即可,我们如果使用 Docker 运行 APISIX 那么默认的安装目录是:/usr/local/apisix,插件目录是:/u 阅读全文