8

我即将建立一个新的个人博客/作品集站点(将用 ASP.NET 编写),并且我将针对 SQLite 数据库运行它。这有几个原因:

  1. 该站点不会获得大量流量,并且根据我所阅读的内容,SQLite 无论如何都能够支持相当多的并发用户阅读
  2. 我可以轻松备份所有内容,只需通过 FTP 下载数据库
  3. 我不必每个月都为我几乎不使用的大型 SQL2008 数据库向托管公司付费

那么,我应该去做吗,还是这是一个疯狂的想法?

4

10 回答 10

3

我不太确定#2(如果 SQLite 在 FTP 程序读取文件时对文件进行更改会发生什么情况?)但除此之外,没有理由更喜欢一个数据库而不是另一个数据库(除非其中一个数据库只是不能做你需要的)。

[编辑] 使用在线备份创建用于 FTP 下载的文件。这将确保文件内容完好无损。

更好的是,向您的站点添加一个页面(带有密码),该页面只需按一下按钮即可创建文件,以便您的浏览器可以下载它。

于 2009-10-02T08:58:09.190 回答
2

只要它主要是阅读流量,对于低流量站点来说就很好。如果是我,我会改用 SQL 精简版(与 Sqlite 相同的好处——单个文件,没有服务器),只是因为我是 LINQ 负责人并且 LINQ 提供程序在它的“盒子里”,但是 Sqlite有一个不错的 LINQ 库和托管支持。确保您的托管公司允许非托管代码,或者您使用 Sqlite 的托管端口(虽然不知道它当前的稳定性)。

于 2009-10-02T08:58:48.473 回答
1

SQLite 可以轻松处理这个问题 - 去吧。

于 2009-10-02T09:00:05.727 回答
1

您应该检查一下,但我认为 SQL 2008 的 Express 版本是免费的。无论如何,我一直在 .NET 环境中使用 SQLite,它工作得很好(但我还没有进行任何负载测试)。如果您还没有决定,您仍然可以使用 LINQ 提供程序,它允许您稍后从一个数据库切换到另一个数据库,而无需重写您的 SQL 代码(例如,我认为是DbLinq)。如果您计划备份您的数据库,您必须首先确保它目前没有被使用。

于 2009-10-02T09:01:32.700 回答
1

一条经验法则是,如果站点可以在一台服务器上运行,那么 SQLite 就足够了。这就是 SQLite 的创建者D. Richard HippFLOSS Weekly播客第 26 集大约 13 分 30 秒时所说的话 。

直接音频链接(MP3 文件,24 MB,51 分 15 秒)。

于 2009-10-02T09:06:29.450 回答
1

SQLite 为您回答这个问题:

http://sqlite.org/whentouse.html

中低音量=好的,高音量=不要使用

在您的情况下,可以使用 sqlite

于 2009-10-02T09:13:37.663 回答
1

一般来说,是的。

但是您应该意识到 SQLite 不支持您可能习惯于从“真正的”DBMS 中使用的所有内容。例如,没有外键、唯一索引等约束,并且 AFAIK 一些(更高级的)数据类型不可用。

您应该在此处此处检查各种限制。如果你可以相处,没有理由不使用 SQLite。

于 2009-10-02T09:20:00.793 回答
0

我会说不。首先,我不知道您在使用谁作为提供商,但是对于我的提供商 (goDaddy),它非常便宜,每月 2.99 美元左右。我得到 1 个 sql server db 和 10 个 mysql dbs。
我不知道这个能便宜多少。

其次,为什么要冒险?大多数提供商计划至少包括 MySQL 数据库。你可以与它挂钩。

于 2009-10-02T09:02:30.803 回答
0

一般来说,SQLite 并不适用于高流量网站,但它可以在每天获得 100,000 次点击或更少的网站上做得很好。SQLite org 网站每天获得超过 500,000 次点击,每天产生 200 万次或更多的数据库交互......全部由 SQLite 处理。

以下是一些可以显着提高 SQLite 性能的东西:

  • 索引您的数据库
  • 尽可能使用事务。
  • 了解预写日志记录

使用 SQLite 对上述各项进行 Google 搜索……您的数据库性能将显着提高。

SQLite DB 实际上比 MySQL、PostGRE、MS SQL Server DB 或其他托管的基于服务器的 DB 更快,原因有两个:

1)。SQLite 通常与网站存储在同一台机器上,而不是单独的服务器机器上,从而消除了往返网络延迟响应时间。

2.) 对于较小的读/写请求,SQLite 引擎执行的代码要少得多,这也可以更快。

对于较小的网站,像 SQLite 这样的小型数据库引擎实际上可以更快、更高效。

于 2022-02-16T11:50:21.797 回答
-2

您是否使用任何 SQL 功能?SUM、AVG、SORT BY 等,如果是,请使用 SQLite。如果没有,只需使用纯 txt 文件来存储您的数据。还要确保数据库位于 httpdocs 文件夹之外,或者无法通过 Web 访问。

于 2009-10-02T09:14:03.807 回答