自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(524)
  • 资源 (1)
  • 收藏
  • 关注

原创 python脚本将mysql数据写入doris

你可以看到varchar在doris中变成了4倍,utf8mb4 编码(这是 MySQL 默认推荐的 UTF-8 实现,支持完整的 Unicode 字符集,包括表情符号等),flink采取了最坏的保守策略。扩展后,数据写入正常了,于是我又验证了,反复执行,看看有没有问题。结果在doris中出现了两条数据。但实际写入,报下面的错误,看来错误原因应该是mysql的字节与doris的字节计算不一样。这个就是搞技术最麻烦的地方,提示的异常,有没有具体信息,根本就不知道原因是啥,要猜。连接的FE,数据写入时正常的,

2025-03-01 15:32:15 453 2

原创 superset

开源的BI工具还是选择apache的superset,2021年的是用过davince,结果2023年就不维护了,dataart也是一样的到2023年也没人维护了,dataease国产的人家也要吃饭,社区版也有限制。因而选择用python开发的superset成了唯一的选择了。

2025-02-23 12:11:58 448

原创 flink-cdc同步数据到doris中

此时任务可以正常执行了,数据也可以正常过来了。可以看到下面,要获取acc的全部表,但是有一些是做了分表,需合并到其中doris的一张表里面,这个规则是有效的,开始。从下面的yml脚本可以看到,并没有doris中创建eayc_user表,应该是flink-cdc自动创建的。如果mysql的表没有主键,则报下面的错误,这个时候就需要修正原mysql表数据。默认也是1,我也改成了8,启动之后,没有报下面的错误,但是之前执行的任务没有了。默认为1,slot不够,就报下面的错误,因为是16C32G,于是我改成了8,

2025-02-19 19:58:44 1085

原创 doris集群

开发doris的团队厉害,这个百度工程师确实也干了一些实事,不像领导层只会跑火车。

2025-02-09 14:01:53 477

原创 jdk8项目升级到jdk17——岁月云实战

由于很早之前就升级springboot版本到2.7.9,以前做好了铺垫,相对升级要容易一些。

2025-01-31 17:20:01 1108

原创 子平八字生成

经过测试518400条数据,103.63MB数据,耗费5~6ms中写入到数据库。这里采用的jdk17,我将原来jdk1.8的代码重写了。

2025-01-08 14:29:34 208

原创 rabbitmq——岁月云实战笔记

生产者并不是直接将消息投递到queue,而是发送给exchange,由exchange根据type的规则来选定投递的queue,这样消息设计在生产者和消费者就实现解耦。rabbitmq会给没有type预定义一些exchage,而实际我们却应该使用自己定义的。

2025-01-06 19:54:56 1048

原创 redis——岁月云实战

单线程序,基于IO多路复用,基于内存和c语言编写,性能高。

2024-12-25 12:12:06 502

原创 k8s迁移——岁月云实战笔记

新系统使用rockylinux9.5,旧系统虚拟机装的是centos7。

2024-12-21 19:32:29 1115

原创 生产环境迁移——harbor篇

这些年环境迁移干了很多,但是没有总结,想想还是记录一下,以前是下属做,自己统筹就行,现在就剩下孤家寡人了,只好都自己做。还是完整记录下来,供有缘人参考。其实我也是搭了个草台班子。

2024-12-17 22:07:06 974

原创 Mysql事务和锁原理——岁月云实战笔记

mysql通过WAL(Write Ahead Log,写前日志)来实现。如果事务提交了,但buffer pool中脏页没有刷盘,则从redo日志恢复。MySQL InnoDB 存储引擎中,即使事务尚未提交,某些情况下缓冲池(Buffer Pool)中的脏页也可能被刷写到磁盘。InnoDB 使用多个后台线程来管理缓冲池中的页面刷新,包括和。这些线程会定期检查缓冲池,将脏页刷新到磁盘,以确保缓冲池中有足够的干净页面用于新的读取操作。这个过程并不依赖于事务是否已经提交,这个时候就可以通过undo日志来保证。

2024-12-13 08:47:23 834

原创 Mysql体系架构剖析——岁月云实战笔记

理论内容阅读了,其他的根据岁月云的实战进行记录。

2024-12-11 14:01:12 1154

原创 Mysql索引原理及优化——岁月云实战笔记

根据这个博主的视频学习,对现在的项目中mysql进行优化,我要向这个博主致敬,之前应用居多,理论所知甚少,于是将学习到东西,应用下来,看看是否有好的改观。

2024-12-08 13:33:55 1065

原创 prometheus

(1)进入“Data sources”页面,路径:HOME —> Connections —> Data sources。(7)进入dashboard,路径:HOME —> Dashboards。在Dashboards页面,点击“New —> Import”按钮。(2)点击“Add new data source”按钮。在“Import dashboard”页面,导入看板文件。(3)选择Prometheus作为数据源。(5)点击“Save & test”按钮。(8)打开“看板导入”页面。

2024-12-05 14:15:27 343

原创 itextpdf打印A5的问题

但实际打印出来却有问题,可以看到打印的不全。看来问题就是因为打印机将你放入的A5的纸张当成了A4,看似解决方案是将里面的内容进行旋转,但是纸张不旋转问题岂不是解决了。如何实现却成了问题。使用A5打印的时候,再生成pdf是没有问题的。下面做了一个测试,在打印机中,使用A5的纸张横向放入,因为是家用打印机,A5与A4是同一个口,因此只能这么放。使用itextpdf生成pdf,在浏览器中预览pdf是正常的。尝试了很多种方法,都没有生效,网上的案例太少了。通过浏览器自带的打印预览,貌似也米有问题。

2024-11-07 10:18:01 629

原创 filebeat+elasticsearch+kibana日志分析

从网关中下载k8s的配置,指定es和kibana的配置通过kibana查询可以查询到日志了,但此时还不知道具体怎么用。

2024-10-30 13:00:12 1248

原创 fastGpt

参考。

2024-10-25 16:23:05 1919

原创 rokeylinux9中c++服务封装

下面ens192是根据网卡来的。使得配置生效。

2024-10-22 15:08:33 314

原创 vcenter的使用

待补充。

2024-10-18 10:18:18 1207

原创 产品设计——应用架构

我的理解应用架构是业务架构的落地,微服务架构下平台的应用架构设计,实质是根据业务来明确应用微服务的边界。因此业务不同,应用架构图也不同。但是基本框架应该相差不大。其划分原则莫过于高内聚、低耦合。这个跟接口设计是一致的。我们总是想降低业务之间的关联程度。简单的道理,就是发布一个微服务,尽量不要少影响业务。业务耦合性很强,维护起来成本大,发布上线对用户使用也是糟心。其分层原则则是根据水平、垂直维度进行划分。水平和垂直的划分,总的有个标准。

2024-10-13 11:47:29 663

原创 drools规则引擎

这个大多搜索导的都是把规则放到一个文件,这个是基础,但是实际应用就不太方便。如果你使用的jdk1.8,那么对应的drools版本为7.x。

2024-09-24 14:07:36 570

原创 minio集群

minio集群的搭建并不复杂,别人也有很多的例子,这里只是先把自己的集群搭建记录下来,重点是后面的章节,遇到问题如何解决。

2024-09-10 10:36:43 625

原创 protege构建子平知识图谱本体工程

学习过面向对象的工程师,对这个应该容易理解,类是相似实体的抽象。在enties中定义六十甲子、天干、地支三个class给六十甲子、天干、地支定义个体实例,就是类的实例化。对象属性是实体与实体时间的关系,因此就就可以推论出,有如下的关系定义。最基础的就是下图描述。因为甲乙丙丁是天干实例,子丑寅卯是地支实例,甲子的天干是甲、地支为子,那么前面定义的实例关系就可以建立了。有一些关系是相同概念,故而设置Equivation To关系。

2024-09-04 14:52:47 539

原创 mysql主从同步

经过验证在主库中创建库,或者添加数据,数据自动从主库会同步到从库。因为我之前一台机器上可以装多个mysql,所以指定了不同端口。如果是mysql是复制过来的,从库启动可能会提示下面的错误。修改auto.cnf中的uuid。执行show master status;在从库的mysql中执行这些命令。

2024-09-03 16:50:46 1375 1

原创 基于inotif的文件同步备份

因为服务器是linux的,而备份服务器是windows server的,故而采取lftp进行同步文件。

2024-08-14 09:14:37 351

原创 rke管理k8s节点的新增与删除

实际命令如下如果要撤掉删掉,还需要删除cluster.yml中对应节点配置。修改cluster.yml之后,再执行docker ps,可以看到rancher相关的才没有了。

2024-08-05 11:43:09 807

原创 k8s部署rabbitmq集群

发现15672这个端口没有起来,25672 端口(集群通信端口)和 5672 端口(AMQP 客户端连接端口)可以正常工作,这通常意味着管理界面的配置或暴露方式存在问题。查看存储StorageClass的名称,就知道了创建pv和pvc中storageClassName应该为managed-nfs-storage。查看镜像的版本,rabbitmq用的ubuntu,而nacos用的是centos7。这里的managed-nfs-storage沿用了nacos集群的部署。执行命令ss -tuln。

2024-07-22 10:41:14 1198 1

原创 k8s中部署nacos

将nacos部署到middleware的命名空间中注意deployment.yaml中要填写自己的nfs服务器地址,不能使用默认的。

2024-07-22 10:28:37 1129

原创 使用kettle做的数据同步案例

获取到mongodb的字段,获取到mongo的字段,如果某个字段是json结构,则需要自己处理一下,因为mysql中也可以使用。在没有创建索引情况下,mysql查询需要1m45s,mongodb需要624ms。我想把51万8400的计算出来的八字信息,从mongo同步到mysql,看看在mysql中运行会怎么样。存储空间是mongo的7.78倍,查询速度比mongo慢168倍。运行后,可以看到执行情况,51万数据同步花了8分钟。修正mongodb与mysql表之间的关系。添加【表输出】,然后按住。

2024-06-16 11:47:34 607

原创 chatglm3-6b小试

原本想在VMware中装个unbutu,再搞chatglm,但经过调研发现业内都是采用双系统来搞chat的开发。,虽然模型比较大,但国内有对应的景象,奇怪这个模型不是我们自己人研究的吗,怎么还要科学上网。的系统盘,你需要准备8G,因为制作好镜像后是7个多G。中从魔塔中的模型,不需要跟工程在同一个文件,因为这个模型文件就有12G。通过ubuntu自身的软件更新,安装nvidia显卡驱动。,因为大模型里面很多程序不是对应的版本,容易出错,就需要想。,说明显卡驱动安装成功。可以下载到对应的模型,不需要花冤枉钱。

2024-06-05 20:02:56 617

原创 记录岁月云明细账excel导出的性能优化

原因在于如果针对没有多客户的公司,原先的写法是没有问题的,但是针对面向有25万用户的零售企业,这种问题就暴露出来了。这一款属于业务算法,如果有时间可以重写,但实际改造时间并不会给你太长时间,首先老板会觉得性能优化是员工自身的问题,根本不会在一这个。有些工程师有洁癖,比如我。我所做的是新建一个v2版本,如果有问题,原来的代码还能用,以免被人诟病,研发工程师内卷,相互轻视的事情也是经常发生的。从下图可以看到获取数据的时间从50s,下降到268ms,单纯的看数据获取,性能优化了99.47%,速度提升187倍。

2024-05-30 20:26:51 1057

原创 vue2项目升级到vue3经历分享5

这种写法是不行的,因为你不应该直接操作dom,el 参数实际上指向的是 el-input-number 的根 DOM 元素,而不是内部的 input 元素。由于 el-input-number 是组件,不是原生的 input 元素,直接监听其内部 input 事件可能不太方便。下面这个可编辑的表格,全是0,于是需要一个指令,让它自己实现如果是0,就置空;调试你会发现,如果是在表格中,你没改一下,整个数字样式都不会重新格式化一遍。把这个代码放到文心一言,改成vue3的模式,无效,只能自己想办法。

2024-05-11 14:26:06 1292 1

原创 vue2项目升级到vue3经历分享4

一般情况下vue2使用Element UI这个组件库,表格组件的插槽的话一般都是使用v-slot,而vue3使用Element Plus组件库,表格组件中插槽一般为#default,不过不改,也能运行。后端重构,如果接口做好抽象封装,只需要考虑jar之间的兼容性问题,jdk版本不变,基本不用做太大的调整,但是前端就不一样,除了vue框架本身,css的调整,改起来更是让人头疼。由于 Vue 3 使用 Proxy 使其数据属性自动成为响应式的,所以可以直接修改对象属性,而无需使用 $set。

2024-05-08 21:19:52 1381

原创 产品AB测试设计

前端系统升级,界面操作也发生改变,为了将影响降到最低,是不能轻易让所有用户使用新系统的。原系统使用好好的,如果新界面用户不喜欢,或者说新界面测试不充分,导致出现一些bug,到时候一堆用户骂就得不偿失了。如果一个系统中,AB测试显示不同得菜单,那么相同的访问路径是可以做到的。增加字段不可避免,因为分表必须指定字段以区分业务走那张表,因此接口也需要增加字段,看似这么做会产生很多更改,但是这种方式组需要改一次,因为只要分了表,那么分两张,跟分100张就没有多大区别,产品设计得扩展性大大提高。

2024-05-05 11:25:03 658

原创 vue2项目升级到vue3经历分享3

当初花了1个半月将十几个微服务从mybatis升级为mybatis-plus,就很自信的认为前端vue2升级到vue3也不过so so,世界过程中却是折腾,写法乱七八糟,不兼容的问题一大堆。的旧系统,之所以有这段代码,是因为科目表的数据很多,当修改科目或者新增下级科目后,希望能自动移动到之前编辑的位置。的用法是不正确的,这是一个表达式,而不是数据属性。在vite中编译直接报错。它违反了 Vue 的响应式原则,需要换种写法。

2024-05-05 11:23:11 2496

原创 vue2项目升级到vue3经历分享2

下面的代码,在webpack中可以build通过,但是在vite中是不行,明显是代码错误,但是开发工程师却忽略了。期望仅有一个子元素或组件作为其内容,但你可能提供了多个子元素或没有提供任何子元素。在vue2中cdn使用,在public中放入js,如果cdn失效则取本地的js。是因为 prop 是单向数据流,父组件向子组件传递值,子组件不应直接修改这些值。升级的代价并不是那么简单,一篇文章。处理方案如下,按照下面进行拆分。中指定外部cdn资源的分发。然后watch其变化即可。

2024-04-27 11:44:23 617

原创 vue2项目升级到vue3经历分享1

看到下面这个结果真是头大,工程师是不是在摸鱼,复制、粘贴不用动脑,为何不写一个指令来实现。这个里面的工作量非常之大,得耐心去调整。,工程师采用vuex存储状态,肯定不合理,结果就是多租户被架空。像这类问题估计99%的前端开发工程师面试一定能答上来,但是实际应用就只能呵呵了。看看原来的store方式调用api,写法确实冗余拖拉,没有新的方式简洁。升级到vue3,预计工作量有点大,于是想着把过程记录下来。模式,例如这样的,是直接引用了api里面的方法。新方式,一句话定义完了,不用搞那么多绕绕。

2024-04-23 15:45:20 2260

原创 easyexcel升级3.3.4失败的经历

格式,尝试解决单元格样式的问题。回头又发现一个问题,就是第一个页签,与页面内容不匹配的问题。什么都没有改,就出了问题,那么问题肯定出现在easyexcel版本自身.解决一部分问题,结果之前的可以用的代码,却无端的出现bug。但结果并没有对方的好,奇怪。显示效果如下,上面的模板还在,但是表头信息没有了。得到的效果是,页签名称与页签中的内容是匹配的。,有人跟我一样的问题,按照他的方式解决即可。第二页签,把上面的模板也导出来了,奇怪了,没有直接的关系,因此升不升级没有影响。更正模板后,又出现新的问题。

2024-04-16 20:46:08 2204

原创 动态数据源实现分表走shardingsphere,不分表走其他

但是还没有完结,因为在执行存储过程的时候,系统提示错误如下。shardingsphere是不支持存储过程呢,但项目中不能避免使用存储过程,因为有大量的数据需要初始化,这种情况该如何应对?动态数据源是好的,但带来的问题却是数据库初始化连接过多,如下面的配置,每个系统就有两份数据库连接池配置,这个需要注意,在k8s扩展服务的时候应该考虑到这一点。因为shardingsphere不支持存储过程及一些语句,所以产生了动态数据源的需求,在网上找的例子配置,上面的java配置,还有一个问题没有解决,那就是。

2024-04-15 16:50:20 1563 1

原创 shardingsphere从4.1.1升级到5.2.1

作为工程师都希望自己的产品能够大卖,而项目开发中使用的技术不可能所有都是自己写的,使用到的开源组件例如shardingsphere这样好的组件,也会随着用户量的增加而需要升级,没必要非得像hutool那样非得自己写一边,当然hutool很优秀。下图进去了,好像也不会影响,因为4.1.1版本也是为空,但执行这一步后会从nacos中获取sharding的配置,但升级后却没有加载,这是为什么呢?原先产品中使用的是4.1.1版本,这是2020年的版本,今年是2024年,已经过去了4年,可以升级了。

2024-04-14 21:35:00 2025 1

mybatis代码生成插件

mybatis代码生成插件

2016-09-03

空空如也

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

TA关注的人

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