摘要: Tomcat有两个核心功能: 1.处理 Socket 连接,负责网络字节流与 Request 和 Response 对象的转化。 2.加载和管理 Servlet,以及具体处理 Request 请求。 因此 Tomcat 设计了两个核心组件连接器(Connector)和容器(Container)来分别 阅读全文
posted @ 2020-06-03 23:52 Moonshoterr 阅读(540) 评论(0) 推荐(0) 编辑
摘要: 首先,服务是突然变慢还是长时间运行后观察到变慢?类似问题是否重复出现? “慢”的定义是什么,能够理解是系统对其他方面的请求的反应延时变长吗? 问题可能来自于 Java 服务自身,也可能仅仅是受系统里其他服务的影响。初始判断可以 先确认是否出现了意外的程序错误,例如检查应用本身的错误日志。 对于分布式 阅读全文
posted @ 2020-06-03 23:20 Moonshoterr 阅读(278) 评论(0) 推荐(0) 编辑
摘要: 有两种解决方案:回种空值以及使用布隆过滤器。 一.回种空值 由于代码的 bug 导致查询数据库的时候抛出了异常,这样可以 认为从数据库查询出来的数据为空,同样不会回种缓存。最大的问题在于数据库中并不存在用户的数据,这就造成无 论查询多少次,数据库中永远都不会存在这个用户的数据,穿透永远都会发生。 那 阅读全文
posted @ 2020-06-03 01:39 Moonshoterr 阅读(842) 评论(0) 推荐(0) 编辑
摘要: 方案有客户端方案、中间代理层方案和服务端方案三大类。 客户端方案就是在客户端配置多个缓存的节点,通过缓存写入和读取算法策略来实现分布 式,从而提高缓存的可用性。 中间代理层方案是在应用代码和缓存节点之间增加代理层,客户端所有的写入和读取的请 求都通过代理层,而代理层中会内置高可用策略,帮助提升缓存系 阅读全文
posted @ 2020-06-03 01:29 Moonshoterr 阅读(327) 评论(0) 推荐(0) 编辑