这样的架构,data 为独立的算法站,调用别人封装好的dll,由于存在并发问题会导致data里面同时调用dll文件,这时候该怎么处理呢,有啥解决方案,保证数据的独立
在data里面的调用dll的方法上加锁咯. 这是最简单粗暴的.
然后,你最好吧data里面cal dll的代码贴一点出来.
加锁不行,高并发下会有问题,导致其他的处理任务堵塞
@DNLi: 调用请求入队,处理完后再通知前端。任务队列、mq、数据库轮询等等都可以。
就一个dll调用就这么搞,真复杂,怪的很。
有多高的并发……
算法cpu消耗高不高,不高的话,多搞几个进程服务,负载均衡下也行。
或者每次启个进程,ipc一下也行。
@DNLi: 楼上正解。
问题的根源在于你的dll是不支持并发的,那么所有调用方就必须排队。
建议描述再详细一点,如果只是为了不同时调用dll,那加锁就好了
– 会长 4年前@会长: 就是同时调用同一个dll会出现数据混乱的问题
– DNLi 4年前