先飞的博客


  • 首页

  • 分类

  • 归档

  • 标签

Java线程的状态转换

发表于 2018-08-12 | 分类于 多线程和并发 |

本文主要整理了Java中线程状态及其之间的转化关系

阅读全文 »

CountDownLatch(倒计数锁存器)

发表于 2018-08-10 | 分类于 多线程和并发 |

题外话:这片文章是5月5号写的,今天面试的时候提到这个场景,我竟然脑海中有却没敢答出来,还是知识掌握不够牢固啊.现在发出来温故知新一下.

阅读全文 »

为什么说HashMap是无序的

发表于 2018-08-09 | 分类于 后端开发 |

HashMap和HashSet遍历元素时是无序的,这恐怕是一个常识了,但是你有没有想过为什么是无序的? TreeMap和LinkedHashMap是有序的,那又为什么是有序的呢?

阅读全文 »

由java system property引起的问题及源码分析

发表于 2018-08-08 | 分类于 后端开发 |

问题的发生过程是这样的

阅读全文 »

RabbitMQ之微信模版消息发送时间超长问题

发表于 2018-07-28 | 分类于 后端开发 |

问题:通过mq给用户发微信通知,使用的是微信的模版消息,要求该消息具有较高的时效性,当前要给5000个用户发送消息,大概30分钟才能发送完毕,预期的要求是1-2分钟.

阅读全文 »

Spring定时任务单线程执行之源码分析

发表于 2018-07-28 | 分类于 后端开发 |

spring定时任务@EnableScheduling默认单线程执行造成了的后果:
假设有两个任务A,B,任务预期开始执行的时间分别是t(a),t(b),它们执行需要花费的时间分别为run_time(a),run_time(b)

阅读全文 »

homebrew的常见用法

发表于 2018-07-12 | 分类于 devOps |

工欲善其事,必先利其器.homebrew是mac上的包管理工具,类似于ubuntu的apt-get,centos的yum.
但是在日常使用的过程中常常搞不懂homebrew的一些命令用法,所以首先需要了解一下homebrew的设计理念.

阅读全文 »

Semaphore(信号量)

发表于 2018-07-12 | 分类于 多线程和并发 |

信号量用于控制同一时刻可以同时访问某一资源的最大允许数量,常见的使用场景是连接池。
拿数据库连接池作为使用场景,信号量的初始值代表了连接池的最大数量,外部线程从连接池获取一个连接,可用连接的数量就会减1;
直到连接池可用连接数量为零时,外部线程被阻塞,此时如果有其它线程释放掉了占用的连接,该等待线程即可获得连接。

阅读全文 »

TCP协议三次握手及四次握手

发表于 2018-07-09 | 分类于 devOps |

tcp协议是一套保证信息可靠传输的协议,这是与UDP协议的主要区别。 那么如何在不可靠的网络上保证信息的可靠传输呢?TCP协议是面向连接的,这就是解决之道。 通俗的讲TCP协议在传输信息前,通信的双方需要首先建立可靠的信道,建立连接时需要进行三次握手,而断开连接时需要进行四次握手.

阅读全文 »

理解TransactionalEventListener

发表于 2018-06-04 | 分类于 后端开发 |

使用EventListener

阅读全文 »
1 2 3 4
先飞

先飞

37 日志
8 分类
3 标签
RSS
© 2020 先飞