我非常接近完成我一直致力于的项目。我以前做过网站,但从不自己做过,也从不涉及用户生成数据的网站。
我一直在阅读things that should be considered before you go live,我有一些问题。
1)登台...(在不影响用户的情况下部署更新)。我不确定这会带来什么,因为我确信任何类型的更新都会以某种方式影响用户。这是否意味着每次更新都会出现某种类型的临时停机时间?有人可以解释一下,并解决这个问题。
2)限制......我正在使用Kohana框架,我正在使用Auth模块来记录用户。我想知道这是否已经内置了一些类型的限制(登录尝试),如果不,这是实现这一目标的最佳方式。 (保存数据库,cookie等的尝试)。如果这不是限制的意思,那么有人可以详细说明。
编辑:我认为这样做的一个好方法是冻结登录一段时间(比如说15分钟),或者在少数(10个左右)之后显示验证码。无懈可击的登录尝试
3)缓存......就像我说的,这是我第一个围绕用户内容构建的网站。考虑到这一点,我应该缓存吗?
4)Back Ups ...我应该多久备份一次我的(MySQL)数据库,以及如何备份它(MySQL导出?)。
网站目前正在运行,尚未完成,如果有人想查看它并查看是否有一些应该被查看/修复的内容。 Clashing Thoughts
如果还有其他我忽略的内容,那就不在上面链接的列表中,请告诉我。
编辑:如果有任何人对于宣传这个词有任何建议(营销),我也会很感激。
感谢。
编辑:我做了更改,网站现已上线。
答案 0 :(得分:1)
1)大多数频繁更新的网站或者需要花费一些时间的大规模更新的网站都会使用beta.example.com这样的测试版网域,该网站仅限于工作人员,直到公众将其发布到主网站
2)如果您使用cookie,那么他们可以禁用cookie并进行无限次登录尝试,因此您的努力将浪费。所以是的,请改用数据库。您希望它如何跟踪取决于您。
3)取决于它是什么类型的内容以及有多少内容。如果您有许多不同的变量,则应该只保留识别数据库中数据的关键变量,并将所有其他数据保存在缓存中,以便数据库查询运行得更快。您将能够快速找到所需的结果,然后只需打开与它们关联的缓存文件。
4)这取决于你,它真的取决于流量。如果您每天只获得2或3个新数据,那么您可能不希望每天浪费时间和空间进行备份。附: MySQL导出工作正常,我发现它们更容易导入和使用。
答案 1 :(得分:1)
1)您需要将网站停止更新至少。我倾向于让工作积累起来,然后在月底做一个大的更新。
2)限制登录尝试; Cookies将很容易实现,但不是万无一失的,它会阻止大多数用户,但它可以很容易地被规避,所以最好选择其他方式。使用数据库会更好,但实现起来会有点复杂,并且会给数据库增加更多的压力。
3)缓存很大程度上取决于内容更新或更改的频率。如果内容发生了很大的变化,那么可能不值得缓存数据,但如果有更多静态内容,那么可能会使用像memcache或APC这样的东西。
4)你应该经常进行定期备份。我每天通过一个cron工作做一个到我的家庭服务器,虽然每周一个就足够了。
答案 2 :(得分:0)
附注:YSlow表示: