关于数据库客户端与数据库的交互方式,我有一些基本问题
PS:我知道其中的一些细节会因数据库的不同而有所不同,但总的来说,它想知道流行的实现,如Postgres、Mysql、Oracle、SQL server和DB2如何实现这些
发布于 2018-12-27 16:48:39
数据库是否同时支持来自客户端的单个数据库连接上的多个事务?
对于Server,没有。
若否,原因为何?(因为多路复用将节省每个连接的资源开销)
这将使网络协议变得非常复杂,该协议必须在多个客户端平台上实现,从而可能产生错误和性能问题。
由多个连接引起的资源开销很小,并且通过连接池在很大程度上减轻了资源开销,其中一组长期存在的连接在客户机程序中的所有线程之间共享。
发布于 2018-12-27 18:27:58
您在Q1中暗示的并行性被夸大了。即使你可以并行地做事情,这个系统也会因为很多原因而陷入困境:
如果您停止执行必要的要求,那么数据库的设计就更容易了:单独的客户端不能互相踩在一起。然后,在单个客户端中,更容易一次只做一件事。
学习接吻的知识。
至于TCP层--你有机会设计一个路由器来实现你的建议。你可以赚几百万。但是它属于低级别,而不是在数据库引擎中。
https://dba.stackexchange.com/questions/225859
复制相似问题