架构漫谈3 2020.4.4 本次阅读的是架构漫谈(八):从架构的角度看如何写好代码 本次阅读让我最记忆深刻的就是下面这句话: 我的游泳教练曾和我说过这些话,我至今记忆犹新:“业余选手,越想从水里浮起来,就越想把头抬起来,身体反而沉下去。只有克服恐惧,把头往水里压下去,身体才能够从水里浮起来。真正专 ...
分类:
其他好文 时间:
2020-06-13 21:25:13
阅读次数:
62
好的,TinyWebServer我们讲了八个模块中的5个,还剩下数据库mysql模块,定时器timer模块,日记log模块。 (更新中~~~~~~) mysql模块 项目中有简单的注册和登录功能,所以要使用到数据库。那么mysql模块就是数据库相关的模块,主要的其实就是数据库连接池。 首先数据库连接 ...
分类:
编程语言 时间:
2020-06-13 19:41:42
阅读次数:
77
在前面的内容中已经可以深刻的体会到,不管是post请求还是get请求,每次都要创建HttpClient,会出现频繁的创建和销毁问题。 对于上面的问题我们可以使用连接池来解决 具体代码: package cn.itcast.crawler.test;import org.apache.http.cli ...
分类:
其他好文 时间:
2020-06-13 17:16:39
阅读次数:
60
背景 我们在需要保证代码在多个异步处理之后执行,我们通常会使用 Promise.all(promises: []).then(fun: function); Promise.all可以保证,promises数组中所有promise对象都达到resolve状态,才执行then回调 那么会出现的情况是, ...
分类:
其他好文 时间:
2020-06-13 13:16:16
阅读次数:
121
计算机通常只有一个 CPU,在任意时刻只能执行一条机器指令,每个线程只有获得 CPU 的使用权才能执行指令.所谓多线程的并发运行,其实是指从宏观上看,各个线 程轮流获得 CPU 的使用权,分别执行各自的任务.在运行池中,会有多个处于就绪状 态的线程在等待 CPU,JAVA 虚拟机的一项任务就是负责线 ...
分类:
编程语言 时间:
2020-06-13 10:26:15
阅读次数:
73
关于线程和线程池的学习,我们可以从以下几个方面入手: 第一,什么是线程,线程和进程的区别是什么 第二,线程中的基本概念,线程的生命周期 第三,单线程和多线程 第四,线程池的原理解析 第五,常见的几种线程池的特点以及各自的应用场景 一、什么是线程 线程,程序执行流的最小执行单位,是行程中的实际运作单位 ...
分类:
编程语言 时间:
2020-06-13 00:50:53
阅读次数:
61
Pgpool-II模式初步浅析1.什么是pgpool-II简单通俗的来讲,pgpool-II是一个位于PostgreSQL服务器和PostgreSQL数据库客户端之间的中间件。pgpool-II主要提供负载均衡、连接池、复制、并行查询等等功能。Pgpool-ll可以运行在linux、solaris、FreeBSD以及基本上所有的类UNIX架构的平台。不支持Windows系统。2.Pgpool-ll
分类:
其他好文 时间:
2020-06-13 00:49:08
阅读次数:
310
目录 一.ThreadLocal介绍 二.使用场景1——数据库事务问题 2.1 问题背景 2.2 方案1-修改接口传参 2.3 方案2-使用ThreadLocal 三.使用场景2——日志追踪问题 四.其他使用场景 一.ThreadLocal介绍 我们知道,变量从作用域范围进行分类,可以分为“全局变量 ...
分类:
其他好文 时间:
2020-06-13 00:44:55
阅读次数:
59
1、newCachedThreadPool 作用:创建一个可根据需要创建新线程的线程池,但是在以前构造的线程可用时将重用它们,并在需要时使用提供的 ThreadFactory 创建新线程。 特征: (1)线程池中数量没有固定,可达到最大值(Interger. MAX_VALUE) (2)线程池中的线 ...
分类:
编程语言 时间:
2020-06-12 20:32:20
阅读次数:
74
1. Reids内存的划分 数据 内存统计在used_memory中 进程本身运行需要内存 Redis主进程本身运行需要的内存占用,代码、常量池等 缓冲内存,客户端缓冲区、复制积压缓冲区、AOF缓冲区。有jemalloc分配内存,会统计在used_memory中 内存碎片 Redis在分配、回收物理 ...
分类:
其他好文 时间:
2020-06-12 14:49:11
阅读次数:
61