首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >亚马逊EC2上的MySQL vs SQLite

问亚马逊EC2上的MySQL vs SQLite
EN

Stack Overflow用户
提问于 2011-11-09 17:56:45
回答 2查看 8.7K关注 0票数 5

我有一个Java程序和PHP网站,我计划在我的亚马逊EC2实例上运行一个EBS卷。该程序对数据库进行读写操作。该网站仅从同一数据库读取数据。

在AWS上,您需要为卷的IOPS (每秒I/O请求数)付费。哪个数据库的IOPS最低?另外,SQLite可以同时处理来自程序和网站的查询吗?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2011-11-12 12:22:52

IO的数量在很大程度上取决于您如何配置MySQL以及您的应用程序如何使用数据库。缓存、日志文件大小、数据库引擎、事务等都会影响IO的大小。换句话说,可能不可能提前预测,尽管我猜测SQLite会有更多的磁盘IO,因为数据库文件必须一直打开和关闭,而MySQL读写(特别是)可以由MySQL本身缓存在内存中。

这个网站,Estimating I/O requests,有一个很好的方法来计算你的实际IO,并使用它来估计你的EBS成本。您可以在模拟负载下的测试系统上运行应用程序,并使用此技术来测量MySQL解决方案和SQLite解决方案之间的IO差异。

在实践中,这可能并不重要。每百万次IO请求的成本为0.10美元。在一个有大量数据库访问的中等流量电子商务网站上,我们每月处理大约3.15亿次IO请求,即31美元。与数以千计的EC2、存储和带宽成本相比,这是微不足道的。您可以使用AWS cost calculator插入预估并计算所有亚马逊网络服务成本。

您还应该记住,SQLite人员只使用recommend that you use it for low to medium traffic websites。对于高流量站点,MySQL是更好的解决方案。

票数 10
EN

Stack Overflow用户

发布于 2013-03-04 02:10:05

是的,SQLite可以同时处理来自程序和网站的查询。SQLite使用文件级锁定来确保一致性。

在内存中,SQLite适用于独立或嵌入式程序。

不要只在内存中使用SQLite:

  • 当您在多个进程之间共享数据库时
  • 当您有一个基于php的网站时,在这种情况下,您将无法利用php fastcgi

。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/8063221

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档