- 博客(3)
- 收藏
- 关注
原创 kafka和rocketmq
通过topic对消息分类对单个topic拆分成多个partition(每个partition存储具体内容)使用zookeeper(raft)进行管理以partition区分主从,放在不同的broker上zookeeper(2.8.0之后替换成raft)broker1 partition1(主) partition2(从)broker2 partition2(主) partition1(从)
2025-12-02 10:33:04
756
原创 java线程状态以及流转
调用带时间参数的sleet(long)、wait(long)、join(long)、park(long)时进入。调用notify、notifyAll、unpark回到runnable状态。调用notify、notifyAll、unpark回到runnable状态。等待获取锁,synchronized、look被其他线程占用时进入。调用无参的wait()、join()、park()时进入。获得锁之后,回到runnable状态。CPU执行中,running状态。CPU还没执行,ready状态。
2025-11-07 15:34:02
138
原创 java线程池
线程池中永远存活,即使空闲也不会回收的线程数(设置allowCoreThreadTimeOut除外)收到新任务,先使用核心线程,再放入队列,队列满了创建非核心线程,非核心线程满了使用拒绝策略。“掐头”去掉第一个进入队列的任务 DiscardOldestPolicy。IO密集任务(网络请求、磁盘读写):线程数>CPU核数*2。CPU密集任务(计算、逻辑判断):线程数=CPU核数+1。如果线程数少于核心线程数,收到新任务优先创建新线程。线程池允许创建的最大线程数。
2025-11-07 14:45:45
125
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅