随笔分类 -  多线程高并发

使用Nginx+Lua(OpenResty)开发高性能Web应用
摘要:使用Nginx+Lua(OpenResty)开发高性能Web应用 转载自:https://www.iteye.com/blog/jinnianshilongnian-2280928 在互联网公司,Nginx可以说是标配组件,但是主要场景还是负载均衡、反向代理、代理缓存、限流等场景;而把Nginx作为 阅读全文
posted @ 2020-11-23 00:35 kk20_625 阅读(387) 评论(0) 推荐(0)
消息队列与与生产者消费者模型
摘要:消息队列与与生产者消费者模型 消息队列 package com.m.test; import java.util.LinkedList; /** * 消息队列 * * @Author yzx */ public class Queue<T> { private LinkedList<T> list 阅读全文
posted @ 2020-11-11 15:37 kk20_625 阅读(1301) 评论(0) 推荐(0)
一个对任务分而治之的java类ForkJoin详解
摘要:一个对任务分而治之的java类ForkJoin详解 在古代,皇帝要想办成一件事肯定不会自己亲自去动手,而是把任务细分发给下面的大臣,下面的大臣也懒呀,于是把任务继续分成几个部分,继续下发,于是到了最后最终负责的人就完成了一个小功能。上面的领导再把这些结果一层一层汇总,最终返回给皇帝。这就是分而治之的 阅读全文
posted @ 2020-10-22 18:04 kk20_625 阅读(150) 评论(0) 推荐(0)
互联网协议(二)
摘要:互联网协议入门(二) 上一篇文章分析了互联网的总体构思,从下至上,每一层协议的设计思想。 这是从设计者的角度看问题,今天我想切换到用户的角度,看看用户是如何从上至下,与这些协议互动的。 互联网协议入门(二) (接上文) 七、一个小结 先对前面的内容,做一个小结。 我们已经知道,网络通信就是交换数据包 阅读全文
posted @ 2020-10-11 18:11 kk20_625 阅读(64) 评论(0) 推荐(0)
互联网协议入门(一)
摘要:互联网协议入门(一) 我们每天使用互联网,你是否想过,它是如何实现的? 全世界几十亿台电脑,连接在一起,两两通信。上海的某一块网卡送出信号,洛杉矶的另一块网卡居然就收到了,两者实际上根本不知道对方的物理位置,你不觉得这是很神奇的事情吗? 互联网的核心是一系列协议,总称为"互联网协议"(Interne 阅读全文
posted @ 2020-10-11 18:10 kk20_625 阅读(131) 评论(0) 推荐(0)
进程间通信的方式有哪些?
摘要:进程间通信的方式有哪些? 1、进程间通讯方式有:管道,信号,信号量,消息队列,共享内存,套接字共六种 2、管道:管道分为有名管道和无名管道,其中无名管道是一种半双工的通信方式,数据只能单向流动,而且只能在具有亲缘关系的进程间使用,一般用于两个不同进程之间的通信。有名管道也是一种半双工的通信方式,但它 阅读全文
posted @ 2020-10-11 18:07 kk20_625 阅读(1967) 评论(0) 推荐(0)
什么是守护线程?
摘要:什么是守护线程? 参考答案 Java线程分为用户线程和守护线程。 守护线程是程序运行的时候在后台提供一种通用服务的线程。所有用户线程停止,进程会停掉所有守护线程,退出程序。 Java中把线程设置为守护线程的方法:在 start 线程之前调用线程的 setDaemon(true) 方法。 注意: se 阅读全文
posted @ 2020-10-08 20:48 kk20_625 阅读(106) 评论(0) 推荐(0)
synchronized四种锁状态的升级
摘要:synchronized四种锁状态的升级 一、背景 在 Java 语言中,使用 Synchronized 是能够实现线程同步的,即加锁。并且实现的是悲观锁,在操作同步资源的时候直接先加锁。 加锁可以使一段代码在同一时间只有一个线程可以访问,在增加安全性的同时,牺牲掉的是程序的执行性能,所以为了在一定 阅读全文
posted @ 2020-10-08 20:31 kk20_625 阅读(394) 评论(0) 推荐(0)
并发的第二天
摘要:lock synchronized 和 lock 的区别 1、synchronized 自动上锁,自动释放锁,Lock 手动上锁,手动释放锁。 2、synchronized 无法判断是否获取到了锁,Lock 可以判断是否拿到了锁。 3、synchronized 拿不到锁就会一直等待,Lock 不一定 阅读全文
posted @ 2020-09-23 14:58 kk20_625 阅读(178) 评论(0) 推荐(0)
java并发编程-1
摘要:Java 并发编程 为什么很重要? 可以最大程度节约成本,省一台电脑的成本,提高效益。 2、JUC JDK 提供的一个工具包,专门用来帮助开发者完成 Java 并发编程。 3、进程和线程 Java 默认的线程数 2 个 mian 主线程 GC 垃圾回收机制 Java 本身是无法开启线程的,Java 阅读全文
posted @ 2020-09-22 14:28 kk20_625 阅读(149) 评论(0) 推荐(0)
并发的第一天
摘要:又到了多线程高并发的一天。 hr问题: sleep与wait的区别是什么? volatile如何保证线程可见性? Callable与Runnable的区别? 来个小例子吧! 1.首先,肯定是经典问题,多线程下的单例模式 private SingletonTest() {} // 主内存对线程是不可见 阅读全文
posted @ 2020-09-21 09:27 kk20_625 阅读(101) 评论(0) 推荐(0)