上个星期参加了下淘宝网的校园招聘宣讲会,听到淘宝的某位技术大牛在上面讲淘宝的一些技术,淘宝每天要处理60亿次的请求,在数据交换方面单纯使用数据库已经无法满足要求,用到的是数据缓存技术,把常用的数据放置在缓存区。
我的疑问是,仅仅是单存的查询,就会面临数据库的实时更新,缓冲区怎样保证数据信息与数据库的同步,还有,请求不仅仅是数据查询,还有增删改的操作,缓冲区怎样做到和数据库的信息交换,不知道该发那个板块,就发这里了,淘宝的大部分都用的J2EE,请高手尽可能用通俗一点的语言解答,详细一点最好

解决方案 »

  1.   

    缓存方案有很多,没研究过淘宝的缓存方案。看缓存实现,有的使用默认主键策略,数据在高速缓冲区>一个指定值的时候就提交一次事务,淘宝的一般是30s左右提交一次。外加有负载方案,有时候插入更新都不经过缓存处理。
      

  2.   

     你们自己算算 自己做的网页。 访问一个网页会有几次请求。 访问图片算不算一个请求? 访问一个css算不算一个请求?
     
     访问js算不算一个请求? 为什么要把静态文件,js文件 css文件作2级域名,甚至放到不同的服务器?
     html.domain.com  js.domain.com  images.domain.com 
      

  3.   

    静态文件一般会在不同节点机房作 缓存,比如IDC说的CDN加速,就是这类。
      

  4.   

    个人感觉向网页WEB元素这些东西应该没必要放在数据库,直接放在内存或甚至硬盘应该都可以,关键问题是有些动态查询的数据,向产品信息,价格之类的,是怎样使用缓存的?感觉9楼的说法比较靠谱,大家有不同的意见都可以说说,讨论技术而已。
      

  5.   

    不了解Hibernate是自动更新的。。