首页 > 编程语言 >原子、组合与汇编

原子、组合与汇编

时间:2024-05-24 23:19:36浏览次数:24  
标签:语句 汇编 组合 原子 编排 Scheduler Executor 执行

应用程序里可以任意写SQL语句,到了数据库这层,所有的SQL语句都被做了编排。

  • 在应用层可以同步、异步的投递SQL语句:s1, s2,s3,...。混在意大利面条一样的代码里,看不到谁先执行谁后执行。
  • 在数据库层,这些语句会被编排。编排后,实际的执行时序可能是 s2,25,s1,s3,s4...
  • 那么数据库层面的顺序或者并发执行才是这些语句被编排后实际执行的顺序,这些顺序决定了程序的最终状态。

这个例子在计算机的无数场景下反复发生:

  • UI的渲染,在渲染的合并层处理后,最终构成了原子渲染任务,渲染引擎根据编排的顺序同步或异步渲染任务序列。
  • K8S编排的最终是docker 基本单元
  • 一个大型系统有N个模块组成,每个模块有多个分支。N个模块组合N个不同的分支就构成了一个系统的一个「分支」,在系统层面看问题如何解决系统分支A和系统分支B之间很棘手,但是放在原子单元,模块这个地方来处理,就是尽量让一个模块的m个分支之间做好同步就解决了。
  • 程序执行的时候,如果要调试,就是用各种工具把实际的执行堆栈trace出来,函数无论被class如何编排,最终在一个线程内都是顺序执行的。

任何一个系统,分为Executor和Scheduler两层

  • Executor 要负责把每个原子的问题在一个目标任务类型上执行
  • 当 Executor 把不同的原子问题的执行解决了,Scheduler 就开始介入,编排和调度一组或者一个树的Executor。

这个问题本质上就是:复杂系统的线性化,AX=Y,A就是编排系 Scheduler,X就是原则的Executor,得到的Y就是系统。当我们解决计算机问题的时候,一定要主动识别这是一个 Executor 问题,还是这是一个 Scheduler 问题。一般来说,企业里的管理层已经不直接写代码,他们常常认为问题是 Scheduler 层的问题,实际上问题通常是要在Executor层解决问题,因为这是原子的真正执行的节点。

--end--

标签:语句,汇编,组合,原子,编排,Scheduler,Executor,执行
From: https://www.cnblogs.com/math/p/18211815/system-is-assembly

相关文章

  • 原子、组合与汇编
    应用程序里可以任意写SQL语句,到了数据库这层,所有的SQL语句都被做了编排。在应用层可以同步、异步的投递SQL语句:s1,s2,s3,...。混在意大利面条一样的代码里,看不到谁先执行谁后执行。在数据库层,这些语句会被编排。编排后,实际的执行时序可能是s2,25,s1,s3,s4...那么数据库层面......
  • 汇编语言(STC89C52)
     指令是计算机计算CPU根据人的意图来执行某种操作的命令。一台计算机所执行的全部指令的集合,称为这个CPU的指令系统。而想要使计算机按照人们的要求完成一项工作,就必须让CPU按顺序执行预设的操作,即逐条执行人们编写的指令。这种按照人民要求所编排的序列,称为程序。编写程序的......
  • 新定义RD8T36P48点亮LED--汇编
    其实汇编和C语言差不多,简单的东西用汇编挺好,中等及以上复杂度的程序还是C语言更灵活直接在keil新建好工程,选好芯片型号和下载方式,再创建一个.asm文件并添加到工程,工程创建完如图工程配置代码 ORG0000H LJMPMAIN ORG0100HMAIN: MOVA,9AH ORLA,#20H;让P05为......
  • 新型数据中台的特性之——原子化
    目录传统数据中台加工逻辑混杂新型原子化数据架构如何实现新型原子化数据处理的优势传统数据中台加工逻辑混杂传统数据中台架构基本都是依赖sql语言硬编码进行开发,硬编码开发模式下,数据、业务耦合度极高,加工逻辑混杂,只能将数据中台的开发开放给下游系统,将中台自身的技术......
  • UML建模中的 依赖、关联、聚合、组合 这四个语义比较难区分。
    详细的UML建模参考如下:UML建模依赖:Usesa。这种使用关系是具有偶然性的、临时性的、非常弱的,但是B类的变化会影响到A;比如类B作为参数被类A在某个method方法中使用;关联:Hasa。这种拥有关系比依赖更强、不存在依赖关系的偶然性、关系也不是临时性的,一般是长期性的,而且双方......
  • 【CodeChef】Limit of MEX(二分、ST表、组合数学)
    题目大意:计算\(\sum_{L=1}^{N}\sum_{R=L}^{N}f(A_L,...,A_R)\),其中\(f(A_1,A_2,...,A_N)=\max(A_1,A_2,...,A_N)-count(A_1,A_2,...,A_N)+1\),\(count\)函数的值为参数中不同元素的个数。考虑计算\(\sum_{L=1}^{N}\sum_{R=L}^{N}max(A_1,A_2,...,A_N)\)。对于任意\(1\lei\len......
  • 组合计数做题笔记
    \(\color{#FFC116}(1)\)CF1400DZigzags给出\(n\)个数\(a_1,a_2,\cdots,a_n\)。求问有多少个四元组\((i,j,k,l)\),使得这个四元组满足下列条件:\(1\leqi<j<k<l\leqn\);\(a_i=a_k\)并且\(a_j=a_l\)。\(a_i\len\le3000\)。显然可以枚举\(j,k\),所以此时......
  • 一个和prufer序相关的组合问题
    对于所有长为\(n\)值域在\([1,m]\)的正整数序列,对于每一个\(1\leqslanti\leqslantm\)记\(c_{i}\)表示\(i\)在\(a\)中的出现次数,定义其权值为\(\prod_{i=1}^{m}c_{i}^{c_{i}+k}\),求所有序列的权值和对一个大质数\(p\)取模的结果(特别的,我们定义\(0^0=1\),且对于......
  • 为什么 mov sp, 32,debug程序,执行sp=32的位置,后面的代码就全乱了(在小甲鱼零基础汇编第6
    assumecs:code,ds:data,ss:stackdatasegmentdw0123h,0456h,0789h,0abch,0defh,0fedh,0cbah,0987h;用来作存放数据dataendsstacksegmentdw0,0,0,0,0,0,0,0;用来作栈的空间stackendscodesegmentstart:;设置数......
  • Java中CAS算法的集中体现:Atomic原子类库,你了解吗?
    一、写在开头在前面的博文中我们学习了volatile关键字,知道了它可以保证有序性和可见性,但无法保障原子性,结局原子性问题推荐使用synchronized、Lock或者AtomicInteger;我们还学习过CAS算法,在那篇博文中我们同样也提及atomic。那么今天,我们就来好好学一学Atomic原子库,一个基于CAS算......