Back to
top
杨挺的博客 | Tommy's Blog

Tommy Yang’s Blog

一生想做浪漫技客

值得大家去瞅一瞅的 Github 学习项目

"没事的时候多看看,提高自己"

介绍 今天主要跟大家分享一些 Github 上值得去学习学习的项目,特别是刚毕业,或者在校大学生等需要快速进步的同学们更应该去看看。 JavaInterview 最全的Java技术知识点,以及Java源码分析; Java 面试总结和面试题目分享。 CS-Notes 分享 Tech Interview Guide 技术面试必备基础知识、Leetcode 题解、Java、C++、Python...

史上最全 Java 中各种锁的介绍

"各种锁的介绍"

锁的分类介绍 乐观锁与悲观锁 锁的一种宏观分类是乐观锁与悲观锁。乐观锁与悲观锁并不是特定的指哪个锁(Java 中也没有那个具体锁的实现名就叫 乐观锁或悲观锁),而是在并发情况下两种不同的策略。 乐观锁(Optimistic Lock)就是很乐观,每次去拿数据的时候都认为别人不会修改。所以不会上锁。但是如果想要更新数据, 则会在更新之前检查在读取至更新这段时间别人有没有修改过这个数据。如果...

Mac OS/Linux命令总结

命令总结

Mac OS/Linux命令查询网络端口占用情况 netstat 命令 netstat -an | grep 50051 50051 可以替换成你需要查询的端口。 lsof 命令 通过 list open file 命令可以查看到当前打开文件,在 linux 中所有事物都是以文件形式存在,包括网络连接即硬件设备。 lsof -i:50051 -i 参数表示网络连接,:8...

深入浅出kafka(一)

kafka内部结构介绍

kafka的几个重要概念 Broker:消息中间件处理结点,一个 Kafka 节点就是一个 broker,多个 broker 可以组成一个 Kafka 集群; Topic:一类消息,例如 note impression 日志、 click 日志等都可以以 topic 的形式存在,Kafka 集群能够同时负责多个 topic 的分发; Partition:topic 物理上的分...

二叉树的操作

"Operation of Binary Tree"

二叉树的操作 二叉树的相关介绍,这是之前在学习二叉树的遍历方式的时候的相关总结,有需要的可以看一看。现在我们主要说说二叉树的操作:包括创建二叉树(在二叉树的介绍中有提到),添加结点,删除结点,清空二叉树,获取二叉树的高度,获取二叉树的父节点,获取二叉树的结点数等。下面我们将通过代码一一介绍。 二叉树的添加结点 添加节点分为添加左节点和添加右节点 /** * 添加左结点...

golang-基于channel实现的共享锁

"golang共享锁"

问题背景 在实际项目中,希望用n个goroutine去一个带缓冲区的channel中读取数据,并且每个goroutine每次消费1000个数据,如果不足则按具体个数消费即可。为什么每次要消费1000个数据呢,因为希望在每个goroutine里面使用redis pipeline去获取这1000个数据的对应信息,这样就可以减少redis的访问次数。 而Channel中的数据量是未知的有限数据。 ...

当下最流行的API查询语言GraphQL(一)

"再不用你就out了"

一种用于 API 的查询语言 GraphQL 既是一种用于 API 的查询语言也是一个满足你数据查询的运行时。 GraphQL 对你的 API 中的数据提供了一套易于理解的完整描述,使得客户端能够准确地获得它需要的数据,而且没有任何冗余,也让 API 更容易地随着时间推移而演进,还能用于构建强大的开发者工具。 根据请求得到你想要的数据 最重要的是得到不多不少、正正好的数据。 向你的 AP...

2018年回顾and2019年展望

"回顾and展望"

回顾与展望 2018年感觉一瞬间就过去了,想想一转眼就毕业2年多了,总是感觉时间过得很快,但是又有好多事情没有做完,所以准备记录一下我的2018, 然后展望一下2019。 2018年回顾 2018年--工作篇 PPTV 2018年,6月份从PPTV离职到简书。所以先说说前半年在PPTV的工作,在PPTV这大半年(2017-8到2018-6),主要负责的工作是PPTV移动 客户端的自...

Log4j配置文件整理-Kafka日志发送

"打印到log文件,kafka"

log4j.properties Java的爱好者们,一定对log4j是特别的熟悉,基本大多数项目都会选择log4j、slg4j来进行log记录。 但是对于log4j.properties的配置可能理解的不是特别熟悉,所有我准备整理一下,同时也提高一下 自己对于log4j.properties的理解。 log4j配置文件的说明 rootLogger说明 rootLogger 指定log打...

Mysql连接池具体实现

"mysql连接池实现"

Mysql连接池 就是存储一推mysql连接的尺子。 现在现成的Mysql连接池第三方jar应该有很多,但是有时候我们在项目中只是需要简单的用一下连接池去跑大量数据,比如在跑batch任务的时候,可能就不想去引入第三方jar包,于是我自己去简单了实现了一下连接池。 其实连接池也很简单,就是我们提前申请好与mysql的connection连接,然后讲这些连接放入到内存里面,这样我们的任务需要连...