并发编程遇到的挑战——资源限制的挑战

1.3 源限制的挑

1)什么是源限制

        资源限制是指在行并发编,程序的行速度受限于算机硬件源或源。
例如,服器的带宽只有2Mb/s,某个源的下速度是1Mb/s每秒,系10线程下载资
源,下速度不会10Mb/s,所以在行并发编,要考虑这源的限制。硬件源限
制有带宽的上/速度、硬盘读写速度和CPU理速度。源限制有数据
数和socket接数等。

2源限制引问题

        在并发编程中,将代码执行速度加快的原是将代中串行行的部分成并发执行,
但是如果将某段串行的代发执行,因受限于源,仍然在串行行,这时候程序不
会加快行,反而会更慢,因增加了上下文切度的时间。例如,之前看到一段程
序使用多线程在公网并地下理数据CPU利用率达到100%,几个小都不
能运行完成任,后来修改成单线程,一个小行完成了。

3)如何解决源限制的问题

        对于硬件源限制,可以考使用集群并行行程序。既然机的源有限制,那么就
程序在多机上运行。比如使用ODPSHadoop或者自己搭建服器集群,不同的机器理不同
的数据。可以通数据ID%机器数算得到一个机器号,然后由对应编号的机器
笔数据。
        对于源限制,可以考使用源池将源复用。比如使用接池将数据Socket
接复用,或者在webservice接口取数据,只建立一个接。

4)在源限制情况下行并发编如何在源限制的情况下,程序行得更快呢?

方法就是,根据不同的源限制
        程序的并发度,比如下文件程序依于两个——带宽和硬盘读写速度。有数据操作
,涉及数据库连接数,如果SQL行非常快,而线程的数量比数据库连接数大很多,
某些线程会被阻塞,等待数据库连
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值