Skip to main content

moregeek program

pg--扫描方式_mysql dba攻坚之路的博客-多极客编程

CTID是什么CTID是一个系统列,用于标识某一元组位于哪个位置,由(block number + 块内的偏移量offset)组成和oracle的rowid十分类似select attname from pg_attribute where attrelid='test2'::regclass; attname ---------- cmax cmin ctid 类似oracle的r

Read More

pg中的index-only scans解密_mysql dba攻坚之路的博客-多极客编程

PG索引的多版本实现可见性映射表在PostgreSQL数据库中,索引上并没有多版本信息,因此即使SELECT的列都是索引列,在PostgreSQL 9.2之前的版本中还是需要再到表上去查询一次,但在PostgreSQL 9.2版本之后,该查询就可以省略了。这种扫描方式被称为“Index-Only Scans”。实际上,9.2版本也没有在索引中添加多版本信息,那它是如何实现该功能的呢?它是靠使用可见

Read More

最近遇到个java面试题,还有点意思呢。_wx6135b7119b442的博客-多极客编程

最近看到一个面试题目,感觉挺有意思的,大意如下:ok,大家看到这个题,可以先理解下,这里启动了两个线程,a 和 b,但是虽然说 a 在 b 之前 start,不一定就可以保证线程 a 的逻辑,可以先于线程 b 执行。所以,这里的意思是,线程 a 和 b,执行顺序互不干扰,我们不应该假定其中一个线程可以先于另外一个执行。另外,既然是面试题,那常规做法自然是不用上了,比如让 b 先 sleep 几秒钟

Read More

服务可见可观测性_枫叶飘飘的博客-多极客编程

可见可观测是服务治理反馈机制的第一步,只有获取到足够多有价值的数据,才能对服务的运行状态进行分析和控制。一、服务可见性服务元数据平台负责维护服务相关的元数据信息,主要包括服务层面、接口层面、拓扑层面这几个维度的元数据信息,通过服务元数据平台,可以对系统提供全方位的可见性。为了增强服务查询的灵活性,可以支持多种服务查询方式,比如按照服务所属部门查询、按照服务属性查询等,服务基本信息平台化等。服务基本

Read More

Rust中使用模块组织代码-多极客编程

[TOC] Rust中的模块化编程 自上个世纪 90 年代以来,软件工程的复杂性越来越高,程序渐渐从一个人的独狼开发转为多人团队协作开发。在今天,通过 Github 或中心化的代码分发网站,我们可以轻松的在一个软件工程中同时引入世界各地的开发者开发的代码,我们与同事在同一个工程目录下并行开发不同的程序功能,或者在不拷贝代码的前提下将一个工程中的代码在另一个工程中复用。这一切都是因为模块化编程。 模

Read More

【Java并发编程实战】03对象的共享-多极客编程

上一篇介绍了如何通过同步多个线程避免同一时刻访问相同数据,本篇介绍如何共享和发布对象,使它们被安全地由多个进程访问。 1.可见性 通常,我们无法保证执行读操作的线程能看到其他线程写入的值,因为每个线程都由自己的缓存机制。为了确保多个线程之间对内存写入操作的可见性,必须使用同步机制。 public class NoVisibility { private static boolean rea

Read More

Volatile只会用不知道原理?这篇文章带你深究volatile-多极客编程

听说微信搜索《Java鱼仔》会变更强哦! 本文收录于github和gitee ,里面有我完整的Java系列文章,学习或面试都可以看看哦 (一)概述 要了解并发编程,首先就需要了解并发编程的三大特性:可见性、原子性和有序性。我们今天要讲的volatile保证了可见性和有序性,但是不保证原子性。接下来会通过几段代码和几张图来强化对volatile的了解。 (二)volatile保证可见性 在讲JM

Read More