在普通用户看来 ~/.bashrc 可能是最重要的启动文件,因为系统几乎总是要读取。non-login shell 会默认读取 ~/.bashrc ,而大多数login shell 的启动文件也能 以读取 ~/.bashrc 文件的方式来编写。
为库设计新函数DelPack,删除输入字符串中所有的重复元素。不连续的重复元素也要删除。 要求写成函数,函数内部使用指针操作。
本系列是《玩转机器学习教程》一个整理的视频笔记。本小节从SVM算法的基本思想推导成最终的最优化数学表达式,将机器学习的思想转换为数学上能够求解的最优化问题。SVM算法是一个有限定条件的最优化问题。
经过昨天晚上的调试,发现了一个主要问题:使用圆网格标定板标定时,不能使用cornerSubPix()函数,否则寻找角点时,会导致图一的情况(裁剪为30万像素)。就找到能参考的程序,推进还是很快的。
Java发生死锁的根本原因是:在申请锁时发生了交叉闭环申请。即线程在获得了锁A并且没有释放的情况下去申请锁B,这时,另一个线程已经获得了锁B,在释放锁B之前又要先获得锁A,因此闭环发生,陷入死锁循环。
排查思路: 检查目标服务器防火墙配置,开启目标端口,重启防火墙 检查目标服务器服务状态 解决过程: 查看服务器调用者日志,当出现接口拒绝连接时,可参考以下方案: 使用ping IP命令查看目标服务器是否宕机
排查总结 7.1 CPU过高 top P M X 找到占用高的进程id top -Hp pid 找到占用高的线程nid,转换16进制,(printf '%x\n' pid) jstack pid 来查看线程的详细信息 自动设置的快照-XX:-XX:+HeadDumpOnOutOfMemoryError 用分析工具分析:查看哪个类和实例数过大,本来就定位线程了,只需看该线程的对象信息即可 7.3 死锁 直接JConsole排查死锁
今天发现服务器磁盘满了,使用du命令排查,首先找到根目录 du -h --max-depth=1 / 然后发现/usr下面最大,接着找/usr目录下 du -h --max-depth=1 /usr 发现/usr/local目录最大,我们挨个排查下去,发现是jpom的历史构建产物占用空间太多,去Jpom里删除就好了
-XX:+HeapDumpOnOutOfMemoryError -XX:HeapDumpPath=/home/d5000/eas/easDmSync/heapdump.hprof
既然已知道异常服务,那可以从这里入手进行分析,又与同事沟通一番,确定了与该服务相关的一些后台模块,接下来重点排查这些模块。 排查方法 日志中出现了sync.
jmap -histo pid | sort -n -r -k 2 | head -10
排查进程占用 C:\Users\>taskkill /PID 51560 /F 错误: 无法终止 PID 为 51560 的进程。 原因: 拒绝访问。
排查分析 经top 查看原来是一个叫269 的进程一直抢占CPU,占比高达4000%。而该269 进程则是挖矿病毒进行高度伪装,即使是kill 掉该进程也无济于事,后面又会自动跑起来。 ;比如269; 2、kill 掉该挖矿进程;sudo kill -9 48124; 3、通过关键词查找挖矿病毒,一般在/tmp 目录底下,如果不清楚查找,直接删除/tmp 目录底下的所有文件; 4、要排查和删掉相关的定时脚本
当发现 Redis 变慢了,可以通过下面的 checklist 来排查问题: 使用复杂度过高的命令或一次查询全量数据; 操作 bigkey; 大量 key 集中过期; 内存达到 maxmemory; 客户端使用短连接和
因为懒,很多时候排查问题起来太依赖可视化工具了,就导致很多Linux命令忘记了。
当出现异常以后,可以从以下几个原因入手排查。 API或数据结构使用不合理 慢查询。命令slowlog get [n]。 1)使用了复杂读为O(n)的命令导致,如hgetall等。
1 查看当前系统的cpu,内存占用情况 [root@localhost ~]# top 2 平均加载时间 [root@localhost ~]# uptime 16:45:18 up 18 day
习题11-2 查找星期 本题要求实现函数,可以根据下表查找到星期,返回对应的序号。