Loading

上一页 1 2 3 4 5 6 7 8 9 10 ··· 31 下一页
摘要: # 背景 我前面写了几篇文章,讲c3p0数据库连接池发生了连接泄露,但是随机出现,难以确定根因,最终呢,为了快速解决问题,我是先写了个shell脚本,脚本主要是检测服务的接口访问日志,看看过去的30s内是不是接口几乎都超时了,如果是的话,咱们就重启服务。然后把这个shell加入到了crontab里, 阅读全文
posted @ 2023-08-01 22:37 三国梦回 阅读(589) 评论(4) 推荐(1)
摘要: # 前言 超时,应该是程序员很不爱处理的一种状态。当我们调用某服务、某个中间件、db时,希望对方能快速回复,正确就正常,错误就错误,而不是一直不回复。目前在后端领域来说,如java领域,调用服务时以同步阻塞调用为主,此时一般会阻塞当前线程,等待结果。如果我们设置了超时时间还好,一段时间等不到就报错了 阅读全文
posted @ 2023-07-29 22:13 三国梦回 阅读(891) 评论(0) 推荐(1)
摘要: # 简介 iptables的文章多如牛毛,但是,我读了一些,发现虽然成体系,但是不便理解,今天就结合自己的理解,好好讲解下,另外,我们也会使用iptables来实验一个nat地址转换的demo,nat转换,通俗地讲,一般是为了解决ipv4公网地址不够用的问题,因此在学校、公司等机构的有公网ip的服务 阅读全文
posted @ 2023-07-24 09:02 三国梦回 阅读(1201) 评论(0) 推荐(1)
摘要: # 背景 怎么会讲这个话题,这个说来真的长了。但是,长话短说,也是可以的。 我前面的文章提到,线上的服务用了c3p0数据库连接池,会偶发连接泄露问题,而分析到最后,又怀疑是db侧主动关闭连接,或者是服务所在机器和db之间有防火墙,防火墙主动关闭了连接。导致我们这边socket看着还健康,实际在对端已 阅读全文
posted @ 2023-07-23 19:43 三国梦回 阅读(1715) 评论(0) 推荐(2)
摘要: # 前言 本篇其实是承接前面两篇的,都是讲定位线上的c3p0数据库连接池,发生连接泄露的问题。 第二篇讲到,可以配置两个参数,来找出是哪里的代码借了连接后没有归还。但是,在我这边的情况是,对于没有归还的连接,借用者的堆栈确实是打印到日志了,但是我在本地模拟的时候,发现其实这些场景是有归还连接的,所以 阅读全文
posted @ 2023-07-17 21:34 三国梦回 阅读(855) 评论(0) 推荐(0)
摘要: # 背景 本篇是c3p0连接泄露问题的第二篇,在前面一篇里面,大体介绍了问题,问题就是,我们发现线上服务不响应的原因是拿不到连接。而为啥拿不到连接呢,因为空闲链表为空,那么为什么空闲链表为空呢? 这个我一开始的猜测就是,估计是某处代码从连接池里获取了连接,用完了没有归还,那么,怎么才能找到这些罪恶的 阅读全文
posted @ 2023-07-15 17:06 三国梦回 阅读(562) 评论(0) 推荐(0)
摘要: # 背景 这篇文章是写给有缘人的,为什么这么说呢,因为本篇主要讲讲数据库连接池之c3p0-0.9.1.2版本。 年轻的朋友,可能没怎么听过c3p0了,或者也仅限于听说,这都很正常,因为c3p0算是200几年时比较流行的技术,后来,作者消失了好几年,12年重新开始维护,这时候已经出现了很多第二代线程池 阅读全文
posted @ 2023-07-13 22:47 三国梦回 阅读(597) 评论(0) 推荐(0)
摘要: # 背景 线上跑了多年的一个网关业务,随着部门的拆分,逐渐有了一个痛点。该网关业务主要处理app端请求,app端发起的请求,采用http协议,post方法,content-type采用`application/x-www-form-urlencoded`,表单中有一个固定的字段,叫功能号,即func 阅读全文
posted @ 2023-06-03 13:13 三国梦回 阅读(2012) 评论(0) 推荐(1)
摘要: # nginx在代理到upstream时的默认行为 最近准备用openresty替换nginx,替换的效果当然是需要保证效果和nginx一致,不然可能就会导致线上在用的服务出现问题。 替换成openresty后,在本地进行了一个请求,header如下: ```http POST /servlet/j 阅读全文
posted @ 2023-06-02 14:44 三国梦回 阅读(1107) 评论(0) 推荐(0)
摘要: 前言 前面有一篇文章《一个有些意思的项目--文件夹对比工具(一)》,里面简单讲了下diff算法之--Myers算法。 既然是算法,就会有实现,比如git diff中有Myers的实现,git diff默认就是用了这个算法(也可以选择其他算法);这个Myers算法,在linux的diff工具中也有实现 阅读全文
posted @ 2022-08-03 13:58 三国梦回 阅读(1729) 评论(0) 推荐(5)
上一页 1 2 3 4 5 6 7 8 9 10 ··· 31 下一页