我几乎没有处理大量交易网站的经验,最近遇到了这个有趣的问题.我有兴趣知道Java Web应用程序中的瓶颈会在高负载(每秒数千个请求)下发生.如果有人能给我一个高级别的方法来思考以下问题,那就太棒了!
我唯一想到的是使用memcached来缓存数据库查找,但我不知道如何计算每个请求将花费的时间量,因此系统可能能够计算每秒的请求数量处理.
问题: 必须设计Internet规模的应用程序来处理大量事务.描述一个系统的设计,该系统必须每秒平均处理30,000个HTTP请求.对于每个请求,系统必须使用通过URL查询字符串传入的关键字查找5000万字的字典.每个响应都包含一个包含单词定义(100字节或更少)的字符串.
描述系统的主要组件,并注意哪些组件应该是定制的,哪些组件可以利用第三方应用程序.包括每个组件的硬件估计.请注意,设计应包括最低的硬件/软件许可成本.
记录提出估算的理由.
描述如果定义为10千字节,设计将如何变化.