webservice并行能力及配置

webservice分为服务端和客户端,服务端必然要支持多线程,而多线程一定有最大线程数极限,也一定可以对多线程进行管理。

对于一个以webservice为协议的能力开放系统,炫耀考虑如下问题:

1、如何准确拿到操作系统信息,以便初步制定解决方案?

windows:

cmd命令行:systeminfo

linux:

unix:

1、如何系统总的吞吐量(所有webservice接口创建的并行线程数)是多少?

2、如何创建和管理webservice线程?何时创建?何时销毁?

2、如何保障不同用户和不同业务的独立性,也即不因某个单功能业务量太大,导致其它业务受阻·?

3、如何为不同用户的不同功能分配webservice可用最大线程资源?

4、如何验证线程配置是否最优?


1、如何系统总的吞吐量(所有webservice接口创建的并行线程数)是多少?

1.1 JVM进程资源有限,线程数就一定有限,那么如何最大线程数是多少?

JVM可创建的最大线程数受两个因素影响:JVM本身限制+操作系统限制

最粗略的最大线程数=(JVM最大可用内存-堆最大内存-方法区最大内存)/每个栈(即线程)的大小

JVM最大可用内存=2G,实际可被程序使用的约1.5G

对最大内存=xmx=512M

方法区最大内存=MaxPernSize=256M

栈区最大内存=1.5G-512M-256M 约=768M

每个栈大小=1M(jdk1.5版本及以上)

查看栈大小配置命令:

jinfo -flag ThreadStackSize 5100
-XX:ThreadStackSize=0 ##0表示使用的默认值

1.2 如何验证这个公式是否正确?




  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值