我已经开发了一个用于在互联网上传输数据的高速事务服务器,所以我不需要依赖像MySQL这样的数据库实现来提供这一点。这就提出了使用哪个SQL版本的问题。
我真的很喜欢SQLite,但我不相信它是工业的力量,但我喜欢的是它对资源的轻量级。
8年前我讨厌MySQL,但现在它显然是工业优势,我的合作伙伴也在使用它,所以在服务器端它是显而易见的选择。如果我使用它,我将通过"localhost“连接到已安装的服务器(windows服务)。我关心的是内存的使用情况。
我没有将结果集加载到内存中,但我注意到第一次连接大约有6Mb。我希望后续的连接不是额外的6MB!
如果我使用libmysqld.dll嵌入式库,那么是否每个新连接都会将嵌入式客户端/服务器代码的新实例加载到内存中?我们假设是这样的,因为每个进程都有自己的进程内存……
无论如何,手册指出,当使用libmysqld嵌入式服务器时,逐行检索结果时,内存优势基本上会丢失,因为“在调用mysql_free_result()之前,检索到的每一行的内存使用量都会逐渐增加。”http://dev.mysql.com/doc/refman/5.1/en/mysql-use-result.html
这意味着我必须使用已安装的服务。但是这和嵌入式服务器一样快吗?
还有没有其他低成本、高可靠性的口味?
发布于 2008-08-21 09:57:54
与其他数据库相比,SQLite在更多的应用程序中得到了应用。(需要引用)。
MySQL有一些问题,比如它不尊重外部完整性约束。
我现在是PostgreSQL的粉丝,它也是免费的(我想,如果你读了MySQL的许可,实际上它有一个更适合商业用途的许可)。它似乎比SQLite的性能更高,这可能与它在SMP机器上运行并使用不同的线程有更多的关系。它似乎也是相当可靠的。
发布于 2008-08-21 10:04:16
很抱歉我的书呆子气,但是标题应该是“哪个RDBMS?”--它的表达方式和“哪个Java?”一样有意义。或者"Which Internet?"...
https://stackoverflow.com/questions/19458
复制相似问题