我在日本有RDS服务器和两个EC2实例,一个在欧盟,第二个在日本。
我正在日本EC2实例上运行一个应用程序,它连接到RDS (日本)。在这个应用程序中,我只是在200个线程中同时从数据库中选择数据,它运行良好,没有任何错误。
但是,当我在欧盟的EC2实例上运行相同的应用程序时,在当时与RDS (日本)有联系的200个线程上,我会得到以下错误。
System.InvalidOperationException:超时过期。从池获得连接之前经过的超时时间。这可能是因为所有池连接都在使用中,并且达到了最大池大小。
显然,欧盟EC2和日本RDS之间将存在网络延迟。
是否有任何设置可以帮助我忽略此错误并成功地联系从欧盟的EC2实例到日本RDS的200个连接?
发布于 2019-12-12 12:53:08
正如您已经提到的,欧盟和日本之间存在一些网络延迟。我想大多数应用程序都不是为这样的设置而设计的--通常应用服务器和db服务器是很接近的。
有几个解决办法我能想到:
https://serverfault.com/questions/995326
复制相似问题