![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
学习资料分享
文章平均质量分 90
jeff-y
所有文章用于个人记录,仅供参考,有错误的地方还请指出错误。
展开
-
ClickHouse学习-建表和索引的优化点(一)
ClickHouse 优化点clickhouse 相对于mysql,除了在mysql在SQL和索引的优化空间比较大外,而其他的clickhouse的优化空间还是很大的,对于clickhouse他的服务端配置参数对于任务的影响还是很大的。现在我们来看看clickhouse都有哪些常规的优化点,今天主要学习一下创建表的时候需要注意的点建表优化1. 数据类型1.1 null值尽量避免关于NULL存储的问题,尽量不要制定为nullable 这样会影响列的查询性能,因为如果有null值对于clickh原创 2021-08-29 01:36:35 · 6088 阅读 · 0 评论 -
细品事务机制(三)-分布式事务
背景文章:大篇幅来自于:《周志明-凤凰架构》建议移步原文阅读 ,本篇为本人的学习笔记。分布式事务,分布式事务指的是服务层面的事务控制方式, 多个服务多个数据源。不像我们之前讨论的全局事务,这里有必要再强调一次“数据源”与“数据库”的区别:数据源是指提供数据的逻辑设备,不必与物理设备一一对应。多个服务,多个数据源,也就是我们常说的微服务,一个大的交易系统 ,可以由订单服务,物流服务,时效服务,用户服务各个服务最终达成一个 电商服务。用户买到一个衣服从下单到发货。也就是一个打的事务,这个事务需要各个电商原创 2021-08-08 17:12:56 · 326 阅读 · 0 评论 -
读书笔记-《异类》
读书笔记-《异类》背景为什么要读这本书呢?因为看了罗老师的《我的青铜时代》,包括之前他的一些演讲,给我印象最多的是因为读书引起了很多好的变化。所以我就好奇他都读了哪些书,其中一本就是我现在读的《异类》。因为我也想罗老师一样厉害,所以我要读读罗老师的书单,虽然成功不可以复制,但是可以少走弯路。机遇马太效应”凡是有的,还要加给他,叫他有余。没有的,连他所有的,也要夺过来“,这就是马太效应,通过棒球队的列子通过有力的数据证明了这一点。这让我也想到了我们国家目前采取的一些措施,小学生不要进行排名。包括对于原创 2021-07-26 00:25:34 · 191 阅读 · 0 评论 -
细品事物机制(二)
细品事物机制(二)上一节讲了本地事物,我们先回顾一下,本地事物的事物是依靠底层数据库的支持实现,列如我们项目中的jdbc中统一封装的rollBack()方法以及结合AOP切面和事务的传播特性实现整个项目的事物机制。 今天我们主要聊的是全局事务。什么是全局事务?与本地事务相对的是全局事务,在上一节中,事务的区分可以根据数据源和是否单机进行区分。全局事务被限定为一种适用于单个服务使用多个数据源的事务解决方案。但是理论上的全局事务是没有单个服务的限制的,它本来就是 DTP(Distributed Trans原创 2021-07-25 16:06:02 · 201 阅读 · 1 评论 -
浅入浅出Caffeine cache
背景公司项目中有用到caffeine cache 所以来了解一下。本地缓存也就是我们适用内存缓存一些热点数据,使应用程序的程序处理的更加的快。以及保护我们的一些有IO操作的函数/方法,以达到提高我们应用程序吞吐的目的。对于java技术栈来讲我们通常使用到的本地缓存都有 一些原有的容器HashMap,google的guava cache等等。今天了解一下caffine缓存。简介Caffeine 是基于Java 8 开发的、提供了近乎最佳命中率的高性能本地缓存组件,Spring5 开始不再支持 Gua原创 2021-07-24 22:01:30 · 1247 阅读 · 3 评论 -
优秀的程序员都应该拥有产品思维
优秀的程序员都应该拥有产品思维我刚毕业的时候在一家创业公司,leader讲的对多的话是:要想做好且成为一名优秀的程序员,你得具备产品思维。不要产品给你什么需求你都去接,你得判断是否合理,是否在已有的功能上的重复,是否有其他更加合理的方案可以解决问题,还有产生的价值有多少,是否开发后会没有人用的情况等等(又出现了过这种情况)。这不是针对谁,只是提防那些不专业的产品经理,我们的产品经理可以不专业,但是我们不能不专业。当时我经常被我的leader问到语塞,我接了某个需求后,review的时候,他不停的问我问什原创 2021-06-27 16:13:16 · 595 阅读 · 0 评论 -
细品分布式事务
背景我们平时的单机事物的使用,一步操作,要么全部执行完成,要么全部不执行,也就是ALL or Nothing。但是如果我们使用了分布式,一件事情分为多个分别在多个在不同的机器(进程)上执行。那对于这种的事物我们应该如何控制呢?事物ACID属性Atomicity :原子性,原子是人类目前发现最小单元,他是不能再分的,也就是事物也具有这个属性。Consistency:一致性,事物在执行前后,具有完整性约束。也就是保证该事物的各个步骤下来是是正确的Isolation:隔离性,也许你立马想到了mysq原创 2021-01-30 16:27:12 · 1261 阅读 · 5 评论 -
设计模式之美笔记(一)
基于接口编程函数的命名不能暴露任何实现细节封装具体的实现细节。为实现类定义抽象的接口简单来说,也就是通过调用接口来实现方法的调用,怎么通过接口来实现方法的调用呢,那就是真实的方法继承接口实现接口的方法。这也是模版模式的一种形式吧编程意识1.“基于接口而非实现编程”,这条原则的另一个表述方式,是“基于抽象而非实现编程”。后者的表述方式其实更能体现这条原则的设计初衷。我们在做软件开发的时候,一定要有抽象意识、封装意识、接口意识。越抽象、越顶层、越脱离具体某一实现的设计,越能提高代码的灵活性、扩展原创 2021-01-17 16:18:56 · 324 阅读 · 0 评论 -
浅析线程池参数设置
背景首先先明确一下线程池的主要作用是什么线程池解决的核心问题就是资源管理问题。在并发环境下,系统不能够确定在任意时刻中,有多少任务需要执行,有多少资源需要投入。这种不确定性将带来以下若干问题:频繁申请/销毁资源和调度资源,将带来额外的消耗,可能会非常巨大。创建一个线程不仅会消耗内存资源,并且会增加CPU的线程的上下文切换频繁,当线程达到一定的极限的时候CPU就只能忙的切换线程,而其他什么事情也不做了。对资源无限申请缺少抑制手段,易引发系统资源耗尽的风险。当我们无限的去申请线程的时候就有可能产生OO原创 2020-12-08 23:55:56 · 374 阅读 · 0 评论 -
蚂蚁金服P8大佬给的学习资料
废话不说,直接上资源。链接: https://pan.baidu.com/s/1n0zrMmsgrItYfKrHO_LaAw 密码: 31j0资料是如何来的呢?在这里也分享给大家,愿我们都能进入大厂,吃吃大厂的“苦”!!!原创 2020-08-08 14:16:06 · 429 阅读 · 1 评论