过完年刚回来,同事反馈公司搭建的maven私服无法访问了。 故障定位 登录到服务器看了下,日志里面有磁盘空间满的提示(java.io.IOException: No space left on device)。nexus的管理页面已经无法正常登陆了,重启了nexus,还是无法登录。 这就有点尴尬了,手动清理吗? 来到nexus的数据目录看了下,数据基本上都在这里: /nexus-data/blob…
Leave a Comment分类: 计算机
某天突然发现自己的mac尝试ssh访问别的服务器的时候,会出这个错误。 查了很多资料,好像都匹配的关键词 broken pipe,让改 ServerAliveInterval ,很明显我的应该不是这个问题。 最后拿 osx ssh client_loop 关键词检索,发现一条有用的信息。 https://discussions.apple.com/thread/252031301 我的现象和这个人…
Leave a Comment发现个宝 https://arthas.aliyun.com/zh-cn/ Arthas 是Alibaba开源的Java诊断工具,深受开发者喜爱。
Leave a Comment参考资料: https://www.baeldung.com/java-instrumentation https://medium.com/@shehan.a.perera/using-a-java-agent-to-monitor-application-runtime-behavior-using-metrics-664eb95e971c https://www.jrebel.com/blo…
Leave a Comment有的时候,我们想知道我们的java哪些是阻塞的,如果我们用jstack命令进行线程栈快照,我们只能知晓当前时刻点的线程状态,但是线程什么时候创建的,什么时候销毁的,全然不知。 思路 我们可以使用操作系统的ps命令来观察系统线程的创建时间,将线程的id和jstack的线程栈关联,即可知道我们jvm的当前线程栈中某个线程是何时创建的。 操作 使用jstack -l pid > dump.log …
Leave a Comment关键词 ThreadPoolExecutor.CallerRunsPolicy() 起因 早晨上班不久后,突然系统告警,商品服务延迟特别大。 由于其他几个后端服务和商品服务的依赖关系特别大,导致其他服务接连奔溃。由于目前各个系统没有做服务降级,在依赖服务(商品服务)出现阻塞,延迟响应缓慢之后,自身服务也出现阻塞现象。 后端服务接连奔溃,前端业务系统马上感受到影响,逐个失能。 处理 马上导出线上应用…
1 Comment没有任何TCP API可以告诉您当前的连接状态。 isConnected()和isClosed()是告诉你套接字的当前状态。 和连接状态不是一样的东西。 isConnected()告诉你是否已连接此套接字。 你已经链接了因此它返回true。 isClosed()告诉你是否已关闭此套接字。 除非有,否则它返回false。 如果对方(peer)有序地关闭了连接 read()返回-1readLine()…
1 CommentRemote debug spring boot application with maven and IntelliJ 应用启动开启调试模式,接受远程调试链接 这个主要就是启用gentlib:jdwp,在jvm里面启动一个在线调试的协议端口(Enable the Java Debug Wire Protocol (JDWP) agent inside the JVM)。suspend这个参数如果…
Leave a Comment最近在写一点通讯方面的代码,我的程序逻辑可能在判断到某些异常是需要断开客户端socket的链接。 看官方文档,提供了 client.end() 方法和 client.destory()方法,好像都可以用来断开连接。 看官方描述,如果你调用了end方法,你会将socket置于半关闭(Half-closes)状态,然后他会发送一个 FIN 包给对端,这个时候呢,服务器可能还是会发送数据给你的。(表示这…
Leave a Comment