fmb心得

在sql server中,我们可是使用以下update语句对表进行更新:

update a set a.xx= (select yy from b) where a.id = b.id ;

但是在mysql中,不能直接使用set select的结果,必须使用inner join:

update a inner join (select yy from b) c on a.id =b.id set a.xx = c.yy;


java -cp ./tmlogintest.jar com.astrolink.netty.server.Server -Xms1024m -Xmx1024m -Xmn512m -XX:SurvivorRatio=4 -Xss512K -XX:PermSize=64m -XX:MaxPermSize=64m


1.Xms 初始堆大小(默认是物理内存的1/64)
2.Xmx 最大堆大小,默认为物理内存1/4
3.-Xss 每个线程的堆栈大小 JDK5.0以后每个线程堆栈大小为1M,以前每个线程堆栈大小为256K.更具应用的线程所需内存大小进行 调整.在相同物理内存下,减小这个值能生成更多的线程.但是操作系统对一个进程内的线程数还是有限制的,不能无限生成,经验值在3000~5000左右
一般小的应用, 如果栈不是很深, 应该是128k够用的 大的应用建议使用256k。这个选项对性能影响比较大,需要严格的测试。(校长)
4.-XX:PermSize 设置持久代(perm gen)初始值 默认物理内存的1/64
5.-XX:MaxPermSize 设置持久代最大值 物理内存的1/4
6.-Xmn 设置年轻代分配大小
7.XX:SurvivorRatio 分配eden 与survior1 surivior0比例 如果为4这是2+2:4

查看cpu
top -i 当前活动
jmap -heap pid
jstat -gcutil pid
jstat -gc pid

优化tcp连接数
ulimit -n 2048

1.修改方法:
修改/usr/etc/security/limits.conf文件,加入
*soft nofile 20000
*hard nofile 20000
然后reboot系统。
2.上面的方法在不用select方法的情况下是不可以的,如果你用select,
那么仍然只能打开1024个,这是因为select的数目由FD_SETSIZE决定的。
那么我们可以改用poll来替代select,poll数组大小可以根据我们自己的需要来定义,
这样就解决了这个问题。
3.linux中的是通过文件方式来管理系统的,因此系统能承载多少TCP连接和系统文件打
开数目能力是相关的。
另外在/proc/sys/fs/file-max中定义了,系统最多能够打开的文件数目。
对于Linux
echo 65536 > /proc/sys/fs/file-max
然后 ulimit -S -n 8192


查看mysql server超时时间:

msyql> show global variables like '%timeout%';

设置mysql server超时时间(以秒为单位):

msyql> set global wait_timeout=10;

msyql> set global interactive_timeout=10;
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值