请高手多多指点!有关3层用户超过150个连接的问题!(200分)

  • 主题发起人 主题发起人 smj_9547
  • 开始时间 开始时间
S

smj_9547

Unregistered / Unconfirmed
GUEST, unregistred user!
各位高手:
  我在一个项目中用三层来开发,现在用户连接数猛增,很想解决这个问题,当然可能大家会说用DEMOS中的POOLER的例子,当然这是一个比较好的例子,但是我还面临着另外一个问题就是权限控制方面的问题,我需要控制所有的用户能访问某个方法,不能访问某个方法,但是POOLER的例子实现的是一个无状态连接,所以假如我用POOLER这个功能,我又应该如何保留这些用户的相关登陆信息,而且我又如何知道是哪个用户调用这个方法呢?不要告诉我由客户端在调用的时候加上一个用户名哦!
  先送上200分,解决后我可以再加300分!
 
在服务器端实现类似于Http会话管理的东东.保存用户登录权限,在方法调用前检查就是了.
我现在做的三层是java写的服务器端,直接用了Http会话管理,所以省去了自己管理.
 
lynu:
但是我如何知道哪个请求是属于哪个用户的呀?
 
这个最好在客户端作吧,不同权限的用户调用不同的函数等...
 
客户端在调用的时候加上一个用户名
 
POOLER的例子太复杂。
com+可以管理组件的安全访问。写成dll放在com+环境中管理即可,然后设置访问的帐户名
具体的,查查书,或msdn。

 
关注中,借宝地请教一下,在midas中pooler具体如何实现?要用mts吗?
 
登录时自动生成一个ID在中间层保留
 
shijunwu:
这个是我现在没有用POOLER的时候采用的,但是采用pooler后,由于是动态选择一个rDM,
所以不能在rdm中有客户ID,而应该在POOLER中有,但是在POOLER中,我又不清楚是在POOLMANGER中,还是POOLER中?我现在还没有时间测试!希望多多指点!
Mu Xi:这样做非常不安全;
zzsczz: 我前面已经说了,不要说在客户端调用的时候加用户名!
拜托各位了!
 
请问楼主,在midas中如何实现pooling?
 
china359:我现在也不是很熟悉,所以才跑来这里问问!
不过你可以看看POOLER的例子,它实际上是实现了远程对象的POOL!
 
惭愧,水平太低,看不懂delphi自带的例子。
汗颜。。。。。
 
Server端要得到Client的UserName应该需要Client提供信息的,直接Username或加密后的Username。怎么传就不用说吧!传上来后可以放到一个table中进行管理控制!
 
写成dll放到com+中管理,更简单(不用编码实现pooler,manager等等,com+的控制面板里面有设置)。client不用重新编译。
关于接口的访问也可以在com+的控制面板里面设置,用win2000的帐户系统管理。。
我找到一本书:[OReilly][COM.and .Net.Component.Services].pdf
4兆大,英文的
 
借用一下,我想这对楼主也有帮助的。
小弟最近使用写成dll放到com+中管理的方法,在测试中,发现每次取数据都会重新连接数据库,这是为何?
虽然COM+提供了Pooler的功能,但这样效率真的会提高吗?
 
根据用户登录的信息在APP server 建立登录列表,并分配一个登录标示符(唯一性的并随机生成)返回给客户端.客户端在调用server的操作时是先验证之
 
关于身份验证的问题,李维那本书里倒是有一个不错的例子,建议参考
 
后退
顶部