FastCDC 项目启动玩玩 😁😁😁😁
我一直想写个轻量级,但是又高性能,能包含各种国外和国产数据库的迁移和同步工具,然后开源。
无奈以前一直没时间,所以一直没干。
但是现在有时间了,昨天就开始干了。
实现的第一个功能是,Oracle 数据库-> Pg数据库的全量数据迁移,今天已经把表结构迁移、数据全量迁移、读和写的并发模型功能都写好了,算是小阶段完成,测试了一下,还可以。

昨天晚上遇到一个技术问题,搞不定,请教落总。 他还是有两把刷子的,很快给我解答了,我很满意。


然后今天从上午写到下午,一直报错,都快搞死我了。
但是最终还是搞到刚才,问了大量的 ai各种参差不齐的解答下,终于把这个分片+并发读+管道+并发写的逻辑搞掂了。
一个人搞,是真的难。。。。

最后还跑了迁移一张表数据,测试一把不同架构cpu性能。

arm m4 pro + macos 运行fastcdc开10 个并发 迁移 2900w数据大表,4 分 30 秒。

x86 AMD 7950x + 虚拟机 centos 7.5 运行fastcdc开10 个并发 迁移 2900w数据大表,1分 41 秒。
无论什么各种厂商来优化arm架构,无论评测,营销啊 什么吹得多厉害,arm就是垃圾,单核性能不够,堆核来凑,垃圾。
还是x86比较猛,跑生产只认x86,其他架构都是耍流氓。
明天继续迭代Oracle 数据库-> Pg数据库的全量数据迁移功能,后续把索引,序列,啥的这些对象都加上。。。。。
FastCDC 项目启动玩玩 😁😁😁😁的更多相关文章
- maven 项目启动tomcat报错 java.lang.ClassNotFoundException: org.springframework.web.context.ContextLoaderListener
maven项目启动tomcat报错: java.lang.ClassNotFoundException: org.springframework.web.context.ContextLoaderLi ...
- eclipse java项目中明明引入了jar包 为什么项目启动的时候不能找到jar包 项目中已经 引入了 com.branchitech.app 包 ,但时tomcat启动的时候还是报错? java.lang.ClassNotFoundException: com.branchitech.app.startup.AppStartupContextListener java.lang.ClassN
eclipse java项目中明明引入了jar包 为什么项目启动的时候不能找到jar包 项目中已经 引入了 com.branchitech.app 包 ,但时tomcat启动的时候还是报错?java. ...
- 项目启动异常java.lang.OutOfMemoryError: PermGen space
java.lang.OutOfMemoryError: PermGen space 解决办法: Eclipse-->window-->Tomcat -->JVM setting - ...
- 【项目启动】 tomcat启动,项目无法启动,无法正常访问/项目可以启动,报错:java.lang.ClassNotFoundException: ContextLoaderListener
使用maven搭建项目(这个错误和是不是使用maven搭建项目没有关系),然后部署到tomcat中运行. 出现问题1: tomcat跑起来了,但是启动时间很短,没有报错,项目不能正常访问 项目启动时间 ...
- SpringMVC——项目启动时从数据库查询数据
SpringMVC项目中遇到这样的问题: 1.很多数据字典需要从数据库中查询: 2.懒得修改SQL语句: 3.想在项目中声明静态变量存储数据字典,但是希望这个字典可以在项目启动时进行加载. 当遇到这样 ...
- eclipse 中导入 maven项目 启动报错
导入Maven项目到Eclipse中时,出现问题如下: java.lang.ClassNotFoundException: org.springframework.web.context.Contex ...
- 关于ionic开发的一些总结(项目启动设置,app图标名称更改)
1.更改包名称 一般项目刚生成时,ionic会根据项目名称自动给你生成一个包名.要修改包名的话,在根目录的config配置文件中,<widget id="x.x.x"换成自己 ...
- 在web项目启动时,使用监听器来执行某个方法
在web项目中有很多时候需要在项目启动时就执行一些方法,而且只需要执行一次,比如:加载解析自定义的配置文件.初始化数据库信息等等,在项目启动时就直接执行一些方法,可以减少很多繁琐的操作. 这里写了个简 ...
- web项目启动流程探索
在web项目的启动过程中,我们希望知道它的一般流程是什么,这样我们就可以在各个流程中加入相应的功能,或者对于我们排错也有帮助. 我们知道,当我们启动tomcat容器以后,容器首先初始化一些必要的组件, ...
- 项目启动时候spring是如何加载和实例化各类的
1.对于注解为默认的,也就是@score不写的,默认是单例的类,这些类在项目启动的时候会依次被加载并被实例化.默认调用的是无参数的构造器. 2.而对于注解是prototype类型的,即@Scope(& ...
随机推荐
- jmeter之请求体类型
一.当post方法的提交数据类型(content-type)为multipart/form-data,请求体为文件文件上传. fiddler抓包请求体的name对应jmerter文件上传的参数名称,f ...
- Go 切片的扩容规则是怎么样的
切片是动态数组,容量是根据元素动态增加的. 本来想看看源码怎么写的,发现切片追加元素的方法是内置的,看起来还挺麻烦 源码位于 builtin.go 中: // The append built-in ...
- Sentinel源码—8.限流算法和设计模式总结
大纲 1.关于限流的概述 2.高并发下的四大限流算法原理及实现 3.Sentinel使用的设计模式总结 1.关于限流的概述 保护高并发系统的三把利器:缓存.降级和限流.限流就是通过限制请求的流量以达到 ...
- PHP 实现微信异步回调数据打印知识分享
一.引言 在微信支付.微信公众号消息推送等场景中,微信服务器会通过异步回调的方式将处理结果发送给我们的服务器.为了便于调试和监控,我们需要获取并打印这些回调数据.本文将详细介绍如何使用 PHP 的 f ...
- K8s新手系列之资源清单(Manifests)
Manifests的基本概念 在 Kubernetes 中,Manifests(清单)是用于定义集群中资源对象的声明式配置文件(通常以 YAML 或 JSON 格式编写,生产环境中通常以YAML编写) ...
- 如何构造一款类似One API的大模型集成平台
作为AI领域的开发者,我们经常需要调用多个不同的大语言模型,但面对各家不同的API规范和接入方式,集成工作变得繁琐.构建一个统一的大模型集成平台,能够极大地简化这一过程. 本文将探讨如何实现一个兼容O ...
- 深入解析Tortoise-ORM关系型字段与异步查询
title: 深入解析Tortoise-ORM关系型字段与异步查询 date: 2025/05/01 00:12:39 updated: 2025/05/01 00:12:39 author: cmd ...
- P6375 「StOI-1」小Z的旅行 题解
题意:P6375 「StOI-1」小 Z 的旅行 给定一座山,每座山有一个高度,只能向更低的山走或者向高度相同的山走,要求不能向高度相同的山连续走两次,不能原地不动. 每次走的权值都是两座山之间的坐标 ...
- ARM终端 KylinOS 容器镜像导入排障
背景信息 电脑:华为擎云L420 CPU:ARM架构,HUAWEI Kirin 9006C OS:Kylin桌面操作系统V10(SP1) Kernel:5.4.96 Docker: 27.5.1 已准 ...
- 双向 和 多重 RNN
前面已经对 RNN (递归神经网络) 的变体 (主要为解决 梯度消失和梯度爆炸) 接触了两个比较流行的 LSTM 和 GRU, 其核心思想呢, 是通过其所谓 **"gate" ** ...