遇到的问题:
项目中设置了静态全局的SimpleDateFormat时间转换的格式,线上在并发使用的时候,出现了时间数据转换混乱的情况
原因:SimpleDateFormat中,SimpleDateFormat类中定义的Calendar是共享的,并发设值的时候承载的对象可能会被替换,造成转换的数据混乱,如下图所示
解决方法:
试过使用ThreadLocal去构造SimpleDateFormat对象还是没能解决,最终使用了线程安全的DateTimeFormatter进行替换
DateTimeFormatter用法123456789101112时间戳转日期字符串DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss"); LocalDateTime localDateTime = LocalDateTime.ofEpochSecond(System.currentTimeMillis() / 1000L, 0, ZoneOffset.ofHours(8)); ...
使用npm指令对hexo进行升级123456789101112131415161718192021222324252627282930//以下指令均在Hexo目录下操作,先定位到Hexo目录//查看当前版本,判断是否需要升级> hexo version//全局升级hexo-cli$ npm i hexo-cli -g//再次查看版本,看hexo-cli是否升级成功$ hexo version//安装npm-check,若已安装可以跳过$ npm install -g npm-check//检查系统插件是否需要升级$ npm-check//安装npm-upgrade,若已安装可以跳过$ npm install -g npm-upgrade//更新package.json$ npm-upgrade//更新全局插件$ npm update -g//更新系统插件$ npm update --save//再次查看版本,判断是否升级成功$ hexo version
也可以用可以用 ncu -u 一把梭
如果有问题就删除重来12$ rm -fr node_modules/$ npm inst ...
遇到的问题:项目报错,使用df -h查看磁盘使用情况,发现显示home目录空间已经被使用完 使用du -sh /home查看它的使用量时,发现使用量相比于容量还有一半的剩余
原因:怀疑是部分文件未释放导致,使用lsof命令进行查看
解决方法:执行 lsof |grep deleted 发现大量的nohup写入的日志没有释放,这表示它们已经被删除但是未被释放空间的文件,kill 掉进程后,空间恢复正常。
进一步排查,发现是某个springboot项目启动时使用了nohup命令将日志写入后台,未做其他处理。后续规范了程序日志的文件写入和收集
延伸记录:lsof命令
查找应用程序打开的文件 lsof -a -p
查看打开某个文件的应用程序 lsof <文件绝对路径>
查看监听端口的进程 lsof -i:<端口>
搜索正活动的连接 lsof -i @IP地址
此文章为本人在CSDN原创文章,迁移到个人博客
Welcome to Hexo! This is your very first post. Check documentation for more info. If you get any problems when using Hexo, you can find the answer in troubleshooting or you can ask me on GitHub.
Quick StartCreate a new post1$ hexo new "My New Post"
More info: Writing
Run server1$ hexo server
More info: Server
Generate static files1$ hexo generate
More info: Generating
Deploy to remote sites1$ hexo deploy
More info: Deployment
技术博文
未读Markdown简明语法教程说明:
本教程基于Markdown语言编写,项目地址位于Simple-Markdown-Guide。
本教程定位为基础教程,更加详细的用法可参考其他资料。
本教程中代码块内的代码为Markdown的语法。
本教程中部分语法使用的是GitHub Flavored Markdown,GFM语法与标准语法在不同环境中存在解析差异,本教程在使用时会加以说明。
推荐使用Haroopad(Win)、MarkdownPad(Win)和Mou(OS X)编辑器,部分编辑器中文效果欠佳,可通过自定义CSS字体解决。
基本
Markdown是一种用来写作的轻量级标记语言。
用标记语法,来代替常见的排版格式。
兼容 HTML代码。
特殊字符自动转换,例如<和&。
字体
使用星号*和底号_表示<em>标签。
例如:
12*斜体*_斜体_
效果:
斜体
使用双星号**和双底号__表示<strong>标签。
例如:
12**强调**__强调__
效果:
强调
换行
单一段落用空白行。
标题
生成<h1>-<h6& ...