.NET Remoting 并发计算性能提高
情况是这样子的,我将一个计算量大、耗费一定时间的计算类使用.NET Remoting发布成远程对象,页面通过ICP和TCP端口来请求计算处理。正常情况下,单个页面请求它远程对象的处理时间是8秒钟,这是我可以接受的;但我同时发送3个页面请求过去,它的响应时间就变成12、13、15秒,都有不同程度的增长时间。
那我的问题是这样了,.NET Remoting的远程对象能够同时处理更多的请求但也能保持单一请求的处理时间,怎么把并发计算请求用多个处理进程来分布计算负载,.NET Remoting有更进一步的编程方法吗?
我的目的就是像多个页面请求处理的时间都是8秒钟,那就是我最想得到的结果了。
谢谢大家! --------------------编程问答-------------------- 帮顶 --------------------编程问答-------------------- 这个是硬件问题,或者是远程的计算类的逻辑设计问题吧? --------------------编程问答-------------------- 谢谢楼上~
我想知道.NET Remoting有提高这方面的编程方法吗?或者各位大侠能指点一些迷津吗?给我一点提示~ --------------------编程问答-------------------- 不是的,我这个远程的类方法是得耗费一定的时间,8秒钟,我都接受的;
但问题在于多个计算请求发给这个远程类的时候,它处理的时间就不停的增长了。
.NET Remoting它应该有解决方法吧? --------------------编程问答-------------------- 激活方式是啥
perSession
perCall
还是
singleton? --------------------编程问答--------------------
SingleCall,我还是不太理解这几个模式的区别。难道关键就是这里吗? --------------------编程问答-------------------- 看情况吧,如果构造和释放该对象需要很多时间,可以考虑Singleton
另外可以监视一下单个请求时系统的负载情况,如果一个请求就差不多动用了全部资源,那么激活方式基本没什么优化的余地,只能靠改进算法或者改用更强的机器了
--------------------编程问答--------------------
它没有耗尽cpu和内存的资源,关键是计算过程得耗费一定的时间,而它单个请求的处理时间是8秒左右,是它的理想成绩了。
而我想做到的也就是它能同时处理多个请求也保持这个8秒的成绩。
Singleton说是有状态的,SingleCall是无状态的,我都使用过,没改进的情况。
补充:.NET技术 , C#