自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(26)
  • 资源 (2)
  • 收藏
  • 关注

原创 dubbo3源码解析----负载均衡算法的实现

负载均衡是开发中的重要模块,以 dubbo3 的源码为例,详细讲解负载均衡算法的实现

2023-11-04 16:02:14 140

原创 KubeCon + CloudNativeCon 2023 大会部分LLM相关分享

KubeCon + CloudNativeCon 2023 大会部分LLM相关分享。

2023-09-28 01:03:49 296

原创 对象存储 Mino 源码 --- 3 . 数据下载,巡检和 api 层

minio 源码阅读,浅浅读一下

2023-09-07 22:58:32 357

原创 对象存储 Mino 源码--- 2 .ObjectLayer和ErasureServerPools

minio 源码分析

2023-09-07 07:44:19 485 1

原创 对象存储 Mino 源码---Main 和 server 启动模式

minio 源码分析

2023-09-07 07:40:27 1270

原创 go 源码合集 -- Gorm主逻辑代码解析

gorm 主逻辑源码分析

2023-08-31 23:13:08 352

原创 go源码系列 database/sql.go SQL 包解析

在github.com/go-sql-driver/mysql包内。打开链接,建立 tcp socket 链接。

2023-08-30 17:52:04 172

原创 Go 源码合集--server shutdown

Go 源码合集–server shutdown。

2023-08-24 16:05:39 191

原创 汇编之调试环境搭建及调试步骤详解

学习一门语言,上手上机调试是非常重要的,它会带来一个感性的认知,所以学习汇编第一件事,推荐把开发环境搞起来。: 程序中的汇编代码需要转译为处理器指令,在提交给处理器执行 ,nasm负责这个事:因为处理器指令无法像java,go语言直接跑在现有的mac,window等笔记本机器上,是直接跑在处理器上的命令,所以需要安装模拟原生处理器的软件。bochs可模拟多种处理器,包括x86和x86-64的处理器模拟器。: Bochs模拟器需要调用显示库代码来渲染输出界面。

2023-06-03 14:52:09 1813 1

原创 shell学习心得笔记系列一 文本处理三剑客

函数定义和使用:函数定义的两种语法:第一种: name() {command1commandn } 第二种: function name {command1commandn } 函数使用:调用函数直接使用函数名即可,相当于一条命令,但不显示指定参数* 函数内部直接使用参数 $1 $2 .. . $n * function $1 $2 定义第一个函数: function hello == > hello() {定义第二个函数: function print_num {i

2023-04-09 17:34:53 719

原创 shell学习心得笔记系列二 gradlew.sh 源码脚本解析

【代码】gradlew.sh 源码脚本解析。

2023-03-25 01:18:53 266

原创 airflow源码精读 十三

根据配置信息,找到任务taskinstance指定的yaml模版,以及相关参数组装出pod执行的必要信息,推送到k8s环境执行运行,等待结果。思路非常的清晰,主要参考学习了这篇,是一篇付费文章,物超所值,感兴趣的可以购买,里面还有关于airflow优化的部分。带注解的airflow代码,分支:v1-9-stable。Airflow 源码解析和性能优化。airflow源码解读。

2023-03-19 23:03:51 368

原创 airflow源码精读 十二

airflow链接hive ,重点在于airflow的运行机器环境和hive的连通是没有问题的,这是实际开发中非常重要的点和前提。3.理解hive,整体的思路就是连接上hive,拼接hql,通过beeline在hive内运行sql 并返回运行结果,只是把在hive上执行的hql改成了airflow的python code。1.维护hive_conn连接信息,参考conn连接配置。2.理解hiveoperator。

2023-03-19 22:43:49 286

原创 airflow源码精读十一

首先做任务的依赖检查 _check_and_change_state_before_execution,任务出错,则调用handle_failure对错误进行处理——是否重试等操作.如果通过,则将任务的状态更新为running,执行任务。任务的实例的执行入口为run.

2023-03-19 22:40:43 606

原创 ChatGPT基础原理和基础应用

chatgpt的原理介绍以及简单的应用实战

2023-03-19 22:39:49 7665

原创 airflow源码精读 十

SchedulerJob 重载实现自己的 _execute 逻辑——初始化类 DagFileProcessorManager,传入参数——DAG 目录、DAG 目录中的文件列表、处理 DAG 的最大线程数、处理时间间隔和处理次数等,然后将 DagFileProcessorManager 实例作为参数传入方法 _execute_helper.刷新文件夹,找到新增和废弃的文件。对于新增的文件,放入DagFileProcessorProcess进行解析,对于丢弃文件,删除数据库中记录。

2023-03-11 13:43:03 470

原创 airflow源码精读 九

回填任务主要用于运行过去的任务,具体为创建多个dagrun,并创建多个taskinstance,然后将taskinstance发送到执行器,期间发送心跳,用于与外界交互,同时通过监控数据库的状态来监控整个任务的运行情况.在 _execute 方法中异步启动 task_runner,通过循环监控任务运行返回状态码和发送心跳信号。当要终止job时,可以修改数据库中任务实例的状态,也可以通修改LocalTaskJob的状态来实现。核心属性taskrunner,任务运行器在运行任务时,会打开一个新的进程。

2023-03-11 13:42:07 270

原创 airflow源码精读 八

基于一种生产消费者模型,在一台服务器内,基于LocalExecutor进程的锁安全,启动多线程,LocalExecutor接受taskinstance放入self.queue队列,多个localWoker去线程安全的消费队列中的元素。前端发送一个停止任务的信号,则可以后端直接修改数据库中任务的状态,当发生心跳回调时,查询数据库中任务的状态,然后停止任务。由于有的任务需要长期执行,因此需要将任务的状态写入数据库,以方便监控;1,任务运行期通过心跳机制,检测任务的存活以及对任务进行干预。

2023-03-11 13:41:26 299

原创 airflow源码精读 七

执行命令 airflow worker,所谓 Worker 其实是 Celery 的工作进程,一个 Worker 根据 concurrency 启动若干个守护进程,用于任务的并发执行。CeleryExecutor用于远程执行任务,多进程模式,可分布在不同服务器间,通过共同连通的队列(redis,mq消息队列),实现分布式的生产者消费者模式,CeleryExecutor接到任务提交到分布式celery任务队列中,celery的woker消费指定队列的任务,执行其命令。正在执行的任务(self.runing)

2023-03-11 13:40:44 294

原创 airflow源码精读 四

Airflow 是基于分布式任务队列 Celery 基础上的定时调度系统,它将不同的任务类型抽象成 Operator,并提供 API 编排各任务之间的依赖关系和配置属性,形成 DAG,从而简化任务提交和维护成本。同时 Airflow 还提供任务重跑、标记成功、查看日志等的可视化操作 UI 和更为灵活丰富的客户端命令行接口。

2023-03-11 13:39:59 307

原创 airflow源码精读 六

trigger_rule【all_success | all_failed | all_done | one_success】表示对于上游算子 的依赖;接受的cli命令通过在args根据给定命令匹配到指定的Arg(tuple数组),在以Arg名称去subparsers匹配到相应的执行函数func。wait_for_downstream表示当且上次的dagrun的下游算子完成之后,才能触发该次算子运行。算子本身可以是一个dag图,运行时会占用一定资源,以虚拟的。算子与算子之间,不能直接通信。

2023-03-11 13:39:37 340

原创 airflow源码精读 五

Scheduler 调度器调度器是整个airlfow的核心枢纽,负责发现用户定义的dag文件,并根据定时器将有向无环图转为若干个具体的dagrun,并监控任务状态。Dag 有向无环图Job有向无环图用于定义任务的任务依赖关系。任务的定义由算子operator进行,其中,BaseOperator是所有算子的父类。Dagrun 有向无环图的运行实例在调度器的作用下,每个有向无环图都会转成任务实例。不同的DagRun之间用 [dagid+ 执行时间execution date] 进行区分。

2023-03-11 13:38:51 301

原创 airflow源码精读 三

引导在k8s上部署airflow 参考官方文档。

2023-03-11 13:37:12 410

原创 Airlofw源码精读 一

airflow源码解读

2023-03-11 13:36:58 518

原创 airflow源码精读 二

airflow源码

2023-03-11 13:36:16 293

原创 自定义RPC框架实现

rpc框架的java实现

2023-01-15 19:21:50 209

97 Things Every Software Architect Should Know.mobi

97 Things Every Software Architect Should Know.mobi

2018-03-23

linux内核参数

在服务器硬件资源额定有限的情况下,最大的压榨服务器的性能,提高服务器的并发处理能力,是很多运维技术人员思考的问题。要提高Linux系统下的负载能力,可以使用Nginx等原生并发处理能力就很强的Web服务器,如果使用Apache的可以启用其Worker模式,来提高其并发处理能力。除此之外,在考虑节省成本的情况下,可以修改Linux的内核相关TCP参数,来最大的提高服务器性能。当然,最基础的提高负载问题,还是升级服务器硬件了,这是最根本的。

2015-09-02

空空如也

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

TA关注的人

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