工作之经验之谈3

  1. 监控内存使用情况的时候,可能某个时间点,内存突然降下来了,这可能是因为垃圾回收器回收的作用。

  2. su命令和su -命令最大的本质区别就是:前者只是切换了root身份,但Shell环境仍然是普通用户的Shell;而后者连用户和Shell环境一起切换成root身份了。

  3. linux 中,日志在打印,并不一定还未发送完毕,有可能只是日志还未打印完成。

  4. 文件备份:上传文件:fileNamedate.tar.gz 备份文件:fileNamedate_backup.tar.gz

  5. Thread休眠写代码上面,或写finally中。防止代码错误疯狂的打印错误日志。

  6. 数据是无状态还是有状态,考虑使用数据库过渡

  7. 保证数据不丢失,可以考虑使用集群,不要把数据放到JVM队列中,JVM停了数据可能会丢失。

  8. 缓存一般缓存有效数据

  9. 软件实在找不到问题,考虑硬件的问题

  10. 数据库连不上储存,让系统工程师去查硬盘的问题

  11. 分布式,防止数据丢失,横向扩展,纵向扩展

  12. Charset charSet = StandardCharsets.UTF_8;

    Charset charSet = Charset.forName("GB2312");

    CharBuffer charBuf = charSet.decode(buf); // 解码

    charSet.encode(charBuf) // 编码

  13. 编码错乱导致CRT死机

  14. 关于java.util.Properties读取中文乱码的正确解决方案

    Properties prop=new Properties();

    prop.load(new InputStreamReader(Client.class.getClassLoader().getResourceAsStream("config.properties"), "UTF-8"));

  15. Java Tomcat Web项目中加载properties配置文件:

    getClass().getResourceAsStream("/commonConfig.properties");

  16. 启动Tomcat时一闪而过(Tomcat启动失败): 首先要搞明白启动不起来的原因。方法是在命令行下,运行startup.bat文件,这样程序就不会一闪而过,而会将启动不起来的原因打印到窗口上。

    在命令行下启动tomcat的方法读者应该都很清楚,大体就是:cmd启动命令行窗口->通过cd命令到tomcat的bin目录下->运行startup.bat。