Tag: 可伸缩性

优化Kohana网站的速度和可扩展性

我和Kohana一起build造的一个地方昨天遭到了大量的交通,让我退后一步,评估一些devise。 我很好奇什么是一些优化Kohana应用程序的标准技术? 我也对基准感兴趣。 我是否需要为每个控制器方法设置Benchmark::start()和Benchmark::stop() ,以便查看所有页面的执行时间,还是能够快速地应用基准testing? 我会更及时地使用Cache-library,但是我可以提供更多的build议,因为我确信有很多我可以做的事情,目前我根本没有意识到。

函数式语言(特别是Erlang)如何/为什么能很好地扩展?

我一直在观察函数式编程语言和function的日益增长的可见性。 我看着他们,没有看到上诉的原因。 然后,最近我在Codemash参加了Kevin Smith的“Erlang基础”演示。 我喜欢这个演示文档,并了解到函数式编程的很多属性使得避免线程/并发问题变得更容易。 我知道状态和可变性的缺乏使得multithreading无法改变相同的数据,但凯文说(如果我理解正确的话)所有的通信都是通过消息发生的,消息是同步处理的(同样避免了并发问题)。 但是我已经读过Erlang用于高度可扩展的应用程序(爱立信首先创build它的全部原因)。 如果每件事都作为一个同步处理的消息来处理,那么如何有效地处理每秒数千个请求呢? 这不就是为什么我们开始走向asynchronous处理 – 所以我们可以利用同时运行多个线程的操作,并实现可扩展性? 看起来这样的架构虽然更安全,但在可扩展性方面却倒退了一步。 我错过了什么? 我了解Erlang的创build者故意避免支持线程以避免并发问题,但我认为multithreading对于实现可伸缩性是必需的。 函数式编程语言如何能够固有地线程安全,但仍然可以扩展?

什么被认为是一个dynamic的,个性化的Web应用程序的良好响应时间?

对于包含dynamic内容和个性化的复杂Web应用程序,服务器的响应时间是多less(这样排除networking延迟和浏览器渲染时间)? 我正在考虑像Facebook,亚马逊,MyYahoo等网站。一个相关的问题是什么是一个良好的后端服务响应时间?

缩放node.js

我对于大规模的服务器端开发相当陌生。 我想用node.js编写一个服务器,但是在我进一步开发之前,我想知道将节点扩展到每秒20个查询的一般原则。 我正在写的服务将主要是一个数据库的接口,加上input数据的validation和validation。

SQLite的可扩展性如何?

我最近读了这个有关SQLite vs MySQL的问题,答案指出,SQLite不能很好地扩展和官方网站sorting – 确认这一点 ,但是。 SQLite的可扩展性如何,它的最高限制是什么?

自动完成的algorithm?

我指的是当用户在Google中inputsearch词时,用于提供查询build议的algorithm。 我主要感兴趣的是谷歌的algorithm能够显示:1.最重要的结果(最有可能的查询,而不是任何匹配)2.匹配子string3.模糊匹配 我知道你可以使用Trie或者通用的trie来寻找匹配,但是它不能满足上面的要求。 本文前面提到的类似问题

数据库水平和垂直缩放之间的区别

我遇到了很多NoSQL数据库和SQL数据库。 衡量这些数据库的优缺点有多种参数,可扩展性就是其中之一。 水平和垂直缩放这些数据库有什么区别?

Django是否缩放?

我正在用Django构build一个Web应用程序。 我selectDjango的原因是: 我想要使​​用免费/开源工具。 我喜欢Python,觉得这是一个“长期”的语言,而关于Ruby,我不确定,PHP似乎是一个巨大的麻烦学习。 我正在build立一个想法的原型,并没有太多的考虑未来。 开发速度是主要的因素,我已经知道Python。 我知道,如果将来我select这样做,迁移到Google App Engine将会变得更加轻松。 我听说Django“很好”。 现在我越来越考虑出版我的作品,我开始关注规模。 我发现的关于Django扩展能力的唯一信息是由Django团队提供的(我没有说任何事情去漠视它们,但这显然不是客观的信息)。 我的问题: 什么是今天在Django上build立的“最大”的网站? (我主要测量用户stream量的大小) Django能够每天处理100,000个用户,每个用户访问这个站点几个小时? 像Stack Overflow这样的站点能在Django上运行吗?