什么是并发? 并发分悲观并发和乐观并发。 悲观并发:比如有两个用户A,B,同时登录系统修改一个文档,如果A先进入修改,则系统会把该文档锁住,B就没办法打开了,只有等A修改完,完全退出的时候B才能进入修改。 乐观并发:同上面的例子,A,B两个用户同时登录,如果A先进入修改紧跟着B也进入了。A修改文档的 ...
分类:
其他好文 时间:
2020-05-03 01:09:07
阅读次数:
58
为什么要用线程池 随着处理器的核心越来越多,利用多线程技术可以把计算逻辑拆分成多个片段,分配到多个核心上,可以显著减少处理时间,提高效率;复杂的业务逻辑,可以使用多线程并发处理,缩短响应时间,提高用户体验。java的线程机制是抢占式协作多线程, 调用机制会周期性的中断线程,将上下文切换到另一个进程, ...
分类:
编程语言 时间:
2020-04-20 13:42:23
阅读次数:
70
为什么要使用锁 加入甲乙同时下单购买商品A,下单前查询库存数量都是15,在下单的时候,甲下单更快,买走了10件。而乙下单时,还是以库存15来判断,这样就会出现数据错误。 在创建订单时候,假设有人和你同时对商品数量进行操作,要保证数据是安全的,可以使用乐观锁。在更新商品数量的时候,需要判断一下还是不是 ...
分类:
其他好文 时间:
2020-04-20 01:27:31
阅读次数:
140
Nginx 1、概念 Nginx是一款轻量级的Web 服务器/反向代理服务器及电子邮件(IMAP/POP3)代理服务器,在BSD-like 协议下发行。其特点是占有内存少,并发能力强,事实上nginx的并发能力在同类型的网页服务器中表现较好,中国大陆使用nginx网站用户有:百度、京东、新浪、网易、 ...
分类:
其他好文 时间:
2020-04-15 10:50:18
阅读次数:
74
IO 阻塞IO 特点 每个请求开启一个线程 线程开启,如果当前线程没有数据可读,线程阻塞在read NIO 同步阻塞IO 特点 一个线程并发处理多个写读 空闲线程处理其他通道IO操作 AIO NIO2,异步阻塞IO。 应用操作之后直接返回,不阻塞,后台处理完,操作系统通知相应线程进行后续操作。AIO ...
分类:
其他好文 时间:
2020-04-07 22:35:58
阅读次数:
95
Nginx基本介绍以及基本使用 Nginx下载并安装(Windows版) 下载地址: "http://nginx.org/en/download.html" , 此处使用 nginx 1.14.2 这个版本 windows 安装 nginx 下载后是一个zip解压包, 解压该压缩包 进入解压后的目录 ...
每一个模式描述了一个在我们周围不断重复发生的问题及该问题解决方案的核心。这样,你就能一次又一次地使用该方案而不必做重复工作。 所谓网站架构模式即为了解决大型网站面临的高并发访问、海量数据、高可靠运行等一系列问题与挑战。为此,在实践中提出了许多解决方案,以实现网站高性能、高可靠性、易伸缩、可扩展、安全等各种技术架构目标。
分类:
其他好文 时间:
2020-03-30 00:25:23
阅读次数:
252
RxJs中提供了n种operators来支持并发,譬如map, mergeAll, switchMap等等。具体可以查看rxjs的官方文档或者搜索引擎。然而,现实中比较常见的并发请求,是需要只针对出错的需求进行重新计算。 场景一,多文件上传时,为了缩短客户端的响应时间,需要并发上传请求。同时,对其中 ...
分类:
Web程序 时间:
2020-03-28 21:51:42
阅读次数:
263
设计模式列表 缓存驻留模式:从数据存储器加载数据,【用于改进性能,维护缓存和后台数据库直接的数据一致性】 断路器模式:当链接远程服务或资源时,可能导致不定时间恢复系统的错误,此模式可【用于改进系统的稳定性和弹性】 事物补偿模式:【实现复杂的业务过程和工作流】 竞争消费者模式:【允许系统并发处理多个消 ...
分类:
其他好文 时间:
2020-03-27 00:45:10
阅读次数:
75
一:推荐使用 ThreadPoolExecutor 构造函数创建线程池 在《阿里巴巴 Java 开发手册》“并发处理”这一章节,明确指出线程资源必须通过线程池提供,不允许在应用中自行显示创建线程。 为什么呢? 使用线程池的好处是减少在创建和销毁线程上所消耗的时间以及系统资源开销,解决资源不足的问题。 ...
分类:
编程语言 时间:
2020-03-22 10:46:29
阅读次数:
86