一直都用redis,偶尔也用一些类似key-value结构的数据库

解决方案 »

  1.   

    刚才找了看了ehcache一下,估计做J2EE都是喜欢用框架,高度集成。
    本质上,用SOCKET,或者SOAP能解决异构通讯问题,看你是否愿意底层一步一步自己架构。
    懒人,还是做懒人吧,框架应该会有的。
      

  2.   

    简单的就用 Dictionary.net有数据MemoryCache,你也可以从ObjectCache派生自己现实缓存框架
      

  3.   

    应用层不做分布式的话,直接Directory就没问题
      

  4.   

    字典可以缓存到客户端,使用Dirictory<>、HashTable等都可以
      

  5.   

    http://msdn.microsoft.com/zh-cn/library/system.web.caching.cachedependency(v=vs.100).aspx
    在winform中使用它仍然有效。
    http://book.2cto.com/201211/8607.html
      

  6.   

    利用Cache.Add方法将数据信息缓存示例
    //将数据项目加入缓存
        protected void btnAddCache_Click(object sender, EventArgs e)
        {
            //利用Cache.Add()方法将数据加入缓存
            Cache.Add("Name", txtUserName.Text, null, System.Web.Caching.Cache.NoAbsoluteExpiration, System.Web.Caching.Cache.NoSlidingExpiration, System.Web.Caching.CacheItemPriority.Default, null);
            Cache.Add("Photo", txtTel.Text, null, System.Web.Caching.Cache.NoAbsoluteExpiration, System.Web.Caching.Cache.NoSlidingExpiration, System.Web.Caching.CacheItemPriority.Default, null);
            Cache.Add("Position", txtJob.Text, null, System.Web.Caching.Cache.NoAbsoluteExpiration, System.Web.Caching.Cache.NoSlidingExpiration, System.Web.Caching.CacheItemPriority.Default, null);
            txtMsg.Text = "缓存加入成功!";
        }//codego.net/tags/11/1/
        //显示缓存数据
        protected void btnDisplayCache_Click(object sender, EventArgs e)
        {
            IDictionaryEnumerator CacheIDE = Cache.GetEnumerator();//显示缓存数据
            int i = 0;
            string info = null;
            info += "缓存项目数据(Key / Value):" + "<br>";
            while (CacheIDE.MoveNext())//循环输出缓存项目
            {
                info += i.ToString() + ". ";
                info += CacheIDE.Key.ToString() + " : ";
                info += CacheIDE.Value.ToString() + "<br>";
                i++;
            }
            if (Cache["Name"] == null)//判断缓存是否有数据项目
            {
                txtMsg.Text = "缓存内容为Null值!";
            }
            else
            {
                txtMsg.Text = info;
            }
        }
      

  7.   

    C3 4.0后就有runtime.cache了。
    可以做个memorycachae什么的,在客户端缓存常用的数据就行了。
      

  8.   

    把所有的需要的数据写到一个 TXT 文件里面,然后用 CacheDependency 去监视这个文件,如果发生变化,就重新刷新 Cache,把文件内容加载进去,然后操作,这样只要不变化、以及只要 Cache  不过期,读取的会一直是 cache 里面的内容。不过有一个前提,你需要写一个小程序,去定期的检测 TXT 文件内容的来源地的数据有没有更新,如有更新,直接刷新 TXT 里面的内容。
      

  9.   

    Why要写Txt,CacheDependency支持很多依赖情况,自己也可以写第三方的支持。
    Txt要用HD I/O 必然慢,20年前的老系统估计会这么玩。
      

  10.   

    Why要写Txt,CacheDependency支持很多依赖情况,自己也可以写第三方的支持。
    Txt要用HD I/O 必然慢,20年前的老系统估计会这么玩。
    请你举例,并写一下接近实际代码的 伪代码看看。
      

  11.   

    Why要写Txt,CacheDependency支持很多依赖情况,自己也可以写第三方的支持。
    Txt要用HD I/O 必然慢,20年前的老系统估计会这么玩。
    请你举例,并写一下接近实际代码的 伪代码看看。其实现在很多缓存系统都是这原理,与你说的其实只有一点区别,
    就是数据不需要写入文件,写入内存即可,这难度不大的。
    Hadoop倒是文件缓存,不过是linux的了,Hadoop响应是秒级的相对很慢的,