1. 基本原理:在内部对象池中,维护一定数量的数据库连接,并对外暴露数据库连接的获取和返回方法。 如外部使用者可通过getConnection方法获取数据库连接,使用完毕后再通过releaseConnection方法将连接返回,注意此时的连接并没有关闭,而是由连接池管理器回收,并为下一次使用做好准备 ...
分类:
数据库 时间:
2019-09-30 09:37:48
阅读次数:
107
AppBoxFuture的存储引擎依赖Raft一致性协议来保证各个分区副本的一致性,如果不处理Raft日志将不断增长,因此需要特定的机制(定期或每处理一定数量的日志)来回收那些无用的日志数据。通过学习Raft协议内的Log Compaction,并参考TiKV等实现,作者初步 ...
分类:
移动开发 时间:
2019-09-29 21:53:01
阅读次数:
123
近期查看产品日志,看到如下GC日志,收集整理如下 Tomcat垃圾回收日志(tomcat gc .log) [GC (Allocation Failure) [ParNew: 367523K 1293K(410432K), 0.0023988 secs] 522739K 156516K(132249 ...
分类:
其他好文 时间:
2019-09-29 19:46:46
阅读次数:
97
前言 一、了解ThreadLocal的作用 二、ThreadLocal简单使用 三、ThreadLocal原理 3.1 ThreadLocal的存取过程 3.2 探究ThreadLocalMap对象 3.3 ThreadLocal对象的回收 四、ThreadLocal应用场景 前言 ThreadLo ...
分类:
其他好文 时间:
2019-09-29 17:00:24
阅读次数:
161
知识储备 python 后端工程师每天做什么? 网站后台业务逻辑 为网站提供API 为产品、运营提供后台网站工具,比如后台运营系统。 学习 上: 面试流程、技巧 python语法基础、性能剖析优化 算法与数据结构、内置算法、排序…… 编程范式,各种模式(单例模式……) 操作系统,Linux命令、线程 ...
分类:
编程语言 时间:
2019-09-29 16:59:23
阅读次数:
115
简介 C++没有内存自动回收机制,对堆内存的管理就是简单的new和delete,每次new出来的内存都需要手动delete释放。但由于忘记、流程复杂或者异常退出等,都有可能导致没有执行delete释放内存,造成内存泄漏。 在实际工程中,我们往往希望将精力放在应用层上而不是费劲心思处理语言的细枝末节( ...
分类:
其他好文 时间:
2019-09-29 12:30:23
阅读次数:
67
一个有意思的js块作用域问题 1.问题 首先把问题放出来,昨天看了一个网友发的一个问题,然后跟我同事一起研究了一下,没找出来是为什么,然后我回来一直在想为什么,然后各种找资料研究,从各个方面找为什么,比如js上下文,作用域,js垃圾回收,堆栈调用情况等等。 2.js断点调试找答案 首先如果不看上面的 ...
分类:
Web程序 时间:
2019-09-28 23:39:39
阅读次数:
145
Servlet的生命周期: Servlet的相关方法:” ...
分类:
其他好文 时间:
2019-09-27 19:17:05
阅读次数:
63
环境:centos7.4 内核版本3.10 最近看内核参数tcp_tw_recycle(该参数在内核 4.12 之后被移除),它用于快速回收处理TIME_WAIT状态的socket。搜索该参数相关的资料,发现同时启用该参数和tcp_timestamps后有可能在NAT环境下导致客户端始连接失败,抓包 ...
分类:
系统相关 时间:
2019-09-27 01:07:18
阅读次数:
124
值类型 引用类型 存储方式 直接存储数据本身 存储的是数据的引用,数据存储在数据堆中 内存分配 分配在栈中的 分配在堆中 效率 效率高,不需要地址转换 效率较低,需要进行地址转换 内存回收 使用完后立即回收 使用完后不立即回收,而是交给GC处理回收 赋值操作 创建一个新对象 创建一个引用 类型扩展 ...
分类:
其他好文 时间:
2019-09-26 16:09:50
阅读次数:
75