【问题标题】:Memcache and ASP.NET runtime cacheMemcache 和 ASP.NET 运行时缓存
【发布时间】:2012-12-03 06:12:23
【问题描述】:

我有一个使用依赖注入的网络应用程序,让我可以轻松地在缓存实现之间进行交换。我目前正在使用 asp.net 运行时缓存,但 Web 应用程序现在需要分布在三个 Web 服务器上。我已经构建了 Memcache 的实现并对其进行了测试,并且它可以工作,但我对速度不满意。我相信原因是因为序列化和反序列化。我不知道如何加快速度。

我可以——

  • 别这样,希望用户体验不会很糟糕
  • 让一些数据使用运行时缓存,一些数据使用内存缓存
  • 弄清楚如何提高内存缓存的性能

附言我试图避免使用 proto-buf 进行序列化/反序列化,因为我不想用属性装饰我的整个域(或者我应该?)

建议?

【问题讨论】:

    标签: asp.net caching memcached


    【解决方案1】:

    那么你怎么知道它变慢了?或者你怎么知道它是序列化?

    我最近花了很多时间在性能优化上,在提出解决方案之前,我必须说您需要先根据确凿的事实探索问题:

    1. 在没有 memcached 的情况下建立基线基准
    2. 使用 memcached 运行相同的基准测试并进行比较
    3. 如果确实比较慢,请使用分析工具来确定您的瓶颈到底在哪里
    4. 确定瓶颈后,尝试隔离该代码区域并在项目之外创建一个隔离的测试用例。然后尝试找出为什么需要更长的时间并尝试不同的方法。 (当时我和其他人可以帮助你)

    根据我的经验,序列化不应该那么慢。

    为了进行基准测试,您可以免费使用 ab.exe 或 jmeter。

    【讨论】:

      猜你喜欢
      • 2012-08-20
      • 1970-01-01
      • 2012-09-06
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-03-21
      相关资源
      最近更新 更多