对mariadb和postgres数据库启用ssl是否会导致服务器过载或影响性能



启用ssl在连接到数据库的过程中引入了什么?我知道握手会带来负载,但加密不会。我使用以下代码来启用ssl,同时使用sqlalchemy中的create_engine连接到数据库:

uri = "{0}://{1}@{2}:{3}/{4}".format(db_creds.get('scheme'),
self._get_auth_str(db_creds.get('username'),
db_creds.get('password')),
db_creds.get('hostname'),
str(db_creds.get('port')),
db_creds.get('name'))
ssl_args = {}
if self.config['ssloption'].lower() == 'true':
# connecting securely
if db == 'mysql':
self.config['ssloption'] = 'required'
ssl_args = {
'ssl': {
'sslmode': str(self.config['ssloption'])
}
}
if db == 'warehouse':
self.config['ssloption'] = 'require'
ssl_args = {
"sslmode": str(self.config['ssloption'])
}
self._connections[db] = create_engine(uri, connect_args=ssl_args, encoding='utf8')
else:
# not connecting securely
self._connections[db] = create_engine(uri, encoding='utf8')

加密和解密数据肯定会占用CPU时间。

要查看性能影响是否会对您产生实质性影响,请运行性能测试。

通常情况下,这不是什么大问题。

不,它不会影响数据库服务器的性能。它可能只会在建立连接时增加一个很小的时间延迟,但服务器性能将保持原样。

最新更新