Efren_yang 2015-04-15 08:41 采纳率: 0%
浏览 616

在源码角度,并发访问的时候memcached会丢连接吗

memcached的epoll是ET方式触发,也就是同一个事件,只有在状态发生转变的时候才会通知应用层。而memcached的线程架构是主线程负责监听所有的连接请求,然后轮询分配给子线程。而主线程在accept的时候,并没有使用类似while循环之类的方式。
问:这样岂不是在多个请求并发访问memcached的时候,主线程可能只响应了就绪队列里的第一个或前几个请求,而造成其余的请求没有被响应到?还是说memcached其实有做这方面的考虑,是我看代码不仔细呢?求大神帮忙!

  • 写回答

1条回答 默认 最新

  • CSDN-Ada助手 CSDN-AI 官方账号 2022-10-25 19:32
    关注
    不知道你这个问题是否已经解决, 如果还没有解决的话:
    • 帮你找了个相似的问题, 你可以看下: https://ask.csdn.net/questions/193394
    • 你也可以参考下这篇文章:memcached缓存服务器的写数据和读数据
    • 除此之外, 这篇博客: Memcached之应用实例配置(超详细篇)中的 1.2 数据库缓存 部分也许能够解决你的问题, 你可以仔细阅读以下内容或者直接跳转源博客中阅读:

      在这里插入图片描述
      需求背景:网站有一个图片放映功能,页面加载时需从数据库中查询管理员所提交放映的图片信息,图片放映
      区共有9张图片,对应在数据库表中有9条记录。每次用户访问网站时,需查询数据库,并显示图片。当承受大
      规模用户同时访问时,数据库的压力可想而之。

      为了降低数据库压力,提高查询速度,我采用了Memcache来将图片记录信息缓存到Memcache服务器
      上。这样就将数据库的查询压力分散到了各缓存服务器,提高了网站访问的整体效率。


    如果你已经解决了该问题, 非常希望你能够分享一下解决方案, 写成博客, 将相关链接放在评论区, 以帮助更多的人 ^-^
    评论

报告相同问题?

悬赏问题

  • ¥20 关于#硬件工程#的问题,请各位专家解答!
  • ¥15 关于#matlab#的问题:期望的系统闭环传递函数为G(s)=wn^2/s^2+2¢wn+wn^2阻尼系数¢=0.707,使系统具有较小的超调量
  • ¥15 FLUENT如何实现在堆积颗粒的上表面加载高斯热源
  • ¥30 截图中的mathematics程序转换成matlab
  • ¥15 动力学代码报错,维度不匹配
  • ¥15 Power query添加列问题
  • ¥50 Kubernetes&Fission&Eleasticsearch
  • ¥15 報錯:Person is not mapped,如何解決?
  • ¥15 c++头文件不能识别CDialog
  • ¥15 Excel发现不可读取的内容