例如,使用 MySQL 获取 JDBC 连接是否比使用 Derby 慢?
我使用
- Tomcat
- C3p0(Tomcat内部配置的JNDI)
- MySQL(InnoDB)/Derby(未嵌入)作为数据库
- EHCache(在内存中)
- Hibernate
- Testmachine运行WinXP
我使用Derby进行开发并想切换到MySQL。 我惊讶地发现,使用 MySQL 时,我的测试比使用 Derby 时大约慢了 50%。
我的测试场景:
- 大约 2000 个选择,复杂程度各不相同,但没有一个使用超过一个连接。 所有的SQL都使用索引
- Ehcache被设置运行填满。 之后,我运行测试场景至少 50 次以克服优化器/GC 效应,
我验证了缓存正在使用中。 没有真正的 SQL 进入数据库。 所以我猜测是连接创建时间减慢了 MySQL 测试速度。
I use
- Tomcat
- C3p0 (JNDI configured inside Tomcat)
- MySQL (InnoDB) / Derby (not embedded) as Database
- EHCache (in Memory)
- Hibernate
- Testmachine runs WinXP
I used Derby for development and wanted to switch to MySQL. I was surprised to see that with MySQL my Tests were approximately 50% slower than with Derby.
My Testscenario :
- Approximately 2000 Selects, varying in complexity, but none used more than one join. All SQLs use Indexes
- Ehcache is filled up with a setup Run. After that I run the Testscenario at least 50x to overcome Optimizer/GC Effects
I verified that the cache is in use. There are NO real SQLs coming to the database. So I just guess it's the connection creation time which slows the MySQL tests down.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论