系统内存不足,主要是每次来一个请求的时候,就要创建倒排的哈希,这个时候如果高并发的情况下,就会出现问题,每次一个倒排索引占据内存,内存只有2G肯定是不够使用的
可以根据日志分析的结果,看看用户搜索哪些内容的数据比较多,然后建立一个缓存
一般小型网站的设置
CDN
CDN把一些访问的数据缓存到全国的各地,当用户请求的时候,首先访问最近的CDN服务器,然后获取数据
反向代理
页面缓存,也叫做proxy
如果CDN没有用户想要的数据,此时就可以访问反向代理服务器,反向代理服务器将数据返回给CDN,代理服务器一般缓存不经常变动的静态页面,如image、js、css、html等,主流的缓存软件有Squid、Varnish、Nginx。
负载均衡
如果proxy没有数据,这个时候就继续访问负载均衡服务器。负载均衡器根据算法(轮训、负载情况选择后端等)交给后端WEB服务处理,WEB服务处理完成后直接返回数据==给反向代理服务器==。
WEB服务
动静分离
可以将 一些动态的页面放在一个服务器上面,动态的页面放在另一个服务器上面
缓存技术
将热数据缓存到内存中