处理

小学徒进阶系列—JVM对String的处理

微笑、不失礼 提交于 2019-12-16 17:04:39
【推荐】2019 Java 开发者跳槽指南.pdf(吐血整理) >>>  对于String类型,java官网的文档是这样子描述的:    http://bbs.itheima.com/thread-23776-1-1.html?fstgj String类代表着字符串。java程序中的所有字符串字面值(如"abc")都作为此类的实例实现。   字符串是常量,他们的值在创建之后不能更改。因为 String 对象是不可变的,所以可以共享。   那么,jvm是怎么共享这些字符串的呢?   为了节省内存,提高资源的复用,jvm引入了常量池这个概念,它属于方法区的一部分的,作用之一就是存放 编译期间 生产的各种字面量和符号引用。而从 前面的博文《 深入了解JVM—内存区域 》我们可以知道,方法区的垃圾回收行为是比较少出现的,该区中的对象基本不会被回收,可以理解成是永久存在的。   因此,缓存在字符串缓冲区中的字符串对象基本是不被回收的,而jvm也正是通过复用这些对象从而达到共享作用。   从上一段话中的概念可以知道, 一般情况下,只有编译期间可以确定下来的的字符串才能存放到缓冲区中 。为什么要强调是一般情况下呢?因为String类为我们提供了一个intern()方法,它可以帮我们将不存在于缓存池中的java字符串添加到缓存池中,并返回缓存池中该字符串对象的引用。   具体关于intern(

nginx 499 502 413 404 处理

依然范特西╮ 提交于 2019-12-01 04:08:16
1.请检查你的FastCGI进程是否启动 2.FastCGI进程不够使用 请通过执行 netstat -anpo | grep "php-cgi" | wc -l 判断,是否接近你启动的FastCGI进程,接近你的设置,表示进程不够 来源:http://blog.s135.com/post/361.htm 3.执行超时 请把 fastcgi_connect_timeout 300; fastcgi_send_timeout 300; fastcgi_read_timeout 300; 这几项的值调高 来源:http://blog.s135.com/post/361.htm 4.FastCGI缓冲不够 nginx和apache一样,有前端缓冲限制 请把 fastcgi_buffer_size 32k; fastcgi_buffers 8 32k; 这几项的值调高 来源:http://www.hiadmin.com/nginx-502-gateway-error一例/ 5.Proxy缓冲不够 如果你使用了Proxying,请把 proxy_buffer_size 16k; proxy_buffers 4 16k; 这几项的值调高 来源:http://www.ruby-forum.com/topic/169040 6.https转发配置错误 正确的配置方法 server_name www