ThinkPHP在开启DEBUG的情况下会在Runtime目录下生成日志,而且debug很多站都没关的,所以影响应该很大吧 我们来看一下ThinkPHP3.2版本生成日志结构: THINKPHP3.2 结构:Application\Runtime\Logs\Home ...
业务系统中,使用update语句更新数据是再正常不过的场景,我们也经常通过update更新的行数,来做一些业务判断,类似下面的伪代码: mybatis mysql 场景 if xxxMapper.updateByPrimaryKeySelective entity gt 更新成功,做其它业务处理 但是这里有一个坑,mysql中update影响行数 gt 是有条件的,假如有一张表: 里面只有一条记录 ...
2020-08-25 21:34 3 616 推荐指数:
ThinkPHP在开启DEBUG的情况下会在Runtime目录下生成日志,而且debug很多站都没关的,所以影响应该很大吧 我们来看一下ThinkPHP3.2版本生成日志结构: THINKPHP3.2 结构:Application\Runtime\Logs\Home ...
因为在SubThread9类中getSum()没有用synchronized 修饰,直接写成 public int getSum(){} 而导致了异常java.lang.I ...
1、面试题剖析 (1)在项目中缓存是如何使用的? 这个,你结合你自己项目的业务来,你如果用了那恭喜你,你如果没用那不好意思,你硬加也得加一个场景吧! (2)为啥在项目里要用缓存呢? 用缓存,主要是俩用途,高性能和高并发 高性能 假设这么个场景,你有个操作,一个请求过来,吭哧 ...
线程池是个好东西,最大线程数限制了服务无限制使用宝贵的操作系统线程,最大队列保护内存溢出,完美! 但是线程池使用不当也会导致死锁。这种死锁,要是不知道原理,死都不知道咋死的,并且非常难定位。大家知道,死锁一般都是由于资源征用引起的。而线程池引起的死锁,可能连个synchronize关键字都没有 ...
日常Bug排查-系统失去响应-Redis使用不当 前言 日常Bug排查系列都是一些简单Bug排查,笔者将在这里介绍一些排查Bug的简单技巧,同时顺便积累素材_。 Bug现场 开发反应线上系统出现失去响应的现象,收到业务告警已经频繁MarkAndSweep(Full GC)告警。于是找到笔者 ...
Java对多线程有良好的支持,并且提供了方便使用的线程池框架(Executor)。但如果使用不当,可能会带来一些不安全的隐患。本文将分享一次由于随意创建线程池造成线程数持续增加的问题。 一、背景 首先看一个图,下图是线上服务器Java线程数的监控图。 图中每个下降的点都是在该时间点有上线 ...
Microsoft.Extensions.DependencyInjection中(下面简称DI)的Transient依赖注入关系,表示每次DI获取一个全新的注入对象。但是使用Transient依赖注入关系时,最好要配合IServiceScope来一起使用,因为通过Transient依赖注入 ...
FILE * popen(const char * command, const char * type)popen函数会通过fork产生子进程,然后从子进程中调用/bin/sh -c执行参数comm ...