---- -----编辑
快速问题:Grails是否为高流量网站占用了太多资源,是否更难以托管?
例如:如果我可以在CakePHP中创建一个拥有数百万用户/ m的网站,那么在Grails中创建它只是为了节省一些网络服务器资源 - 还是需要更多服务器?
---------------
您好,
我知道网上有很多类似的问题,但由于我是网络开发的新手,我找不到针对我的具体问题的解决方案。
我正计划从零开始创建一个Flash游戏门户网站。这是一个很有可能从一开始就有大量流量(数百万的综合浏览量)。我希望尽可能地降低服务器成本,但同时又不想购买昂贵的合同,因为项目可能不会像我想的那样成功,在这种情况下,这笔钱很少
问题是:使用什么技术?我还不知道任何网络开发技术,所以我将学到什么并不重要。我的web开发经验是8年前的一个小PHP,从那时起我编写了C ++ / Java-游戏和移动开发。我非常喜欢Java和C语法和语言,我倾向于不喜欢动态类型或非强大的脚本(如php) - 但如果这些是最好的我可以相处 选择。
候选人现在: -
我首先考虑使用纯C并在服务器中编译Web应用程序 - 只是为了从服务器中挤出更多,但很快我就明白这是过度的。 接下来我的眼睛出现在Ruby上 - 因为它很容易使用。接下来我发现了Grails并查看了Java,因为据说它“更快”。但我不知道这个“更快”对我的需求意味着什么,所以第一个问题就出现了:
1)对于大量的Flash内容请求,除了带宽之外,服务器上最大的消耗是什么?是记忆吗?我听说Java需要大量内存,但速度更快。是CPU吗?我打算首先采取一些日常的VPS.NET节点,看看是否有需求,以及“spike”是否永久移动到专用服务器(serverloft.com有一些好的优惠),否则留在节点少。
我还在考虑开发Google App Engine - 首先使用廉价或免费托管 - 所以我可以测试我的假设 - 也非常容易使用(不需要系统管理)但是如果使用更多,成本会变高(> 300万游戏/月.. x mb /每个)。谷歌的问题在于它让我看到了这项技术。
我的另一个问题是可扩展性(不仅适用于流量/用户,还适用于添加功能)我的计划是在短短4周内发布一个功能性网站(只是基础前端和一些快速基本后端 - 所以我能够修改一些东西并手动添加游戏) - 然后提高它并添加更多东西。我打算采用与其他门户网站不同的方法,所以我需要从头开始编写(脚本不会这样做)。
2) Grails会比RoR或Php服务器明智地获取更多资源吗?我听说在Java堆栈上制作它将是硬件昂贵的,如果你不进行银行应用程序就太过分了。我的应用程序不会非常复杂(我希望并且我会尝试)但会有很多流量。
我还考虑使用CDN进行文件记录,但最便宜的CDN是5c / GB(vps.net),而服务器软件(http://www.serverloft.com/dedizierte-server/server-details.php?products=4)上的每gb成本仅为1.79美分/ GB并随附其他资源要么。
我是这个域名(网络)的新手。我正在学习绳索并在网上搜索半年但没有任何实际经验,所以我知道我必须有一些天真的想法和其他我不知道的问题,所以请给我对你想要的任何建议,而不仅仅是提出的具体问题。
非常感谢你们这么棒的社区!
答案 0 :(得分:1)
这就是我(在我的博客上)查看网络性能的方式,特别是对于像Grails这样高度抽象的框架。
我不理解对它的痴迷 运行时性能。最多的 项目场景是您的主要关注点 应该是你的表现,如 你有能力完成任务 选择的技术。
例如,您将完成更多工作 Groovy给定的一段时间 而不是任何一天的Java。经常一行 Groovy代码将等于10行 Java代码等等
很少会执行字节码 大部分时间都是你的表现问题 经常是......
糟糕的算法实现或 设计。糟糕的数据库设计和/或查询。 花很长时间才能完成任务 然后有各种各样的商业 关系问题因为它。
通常使用Web应用程序 没有长时间运行 CPU绑定操作。你的大部分 请求/响应时间花在 电线(互联网路由等)和 DB(执行查询)。
选择需要加载的技术 脱离你的思想,让你自由 从写锅炉板山 代码,这样你就可以了 专注于设计和 实现良好的算法,DB和 查询等等