Asp.Net如何在同一应用程序池中运行的应用程序之间共享缓存中存储的数据

时间:2018-06-25 10:22:36

标签: iis memory share

现在,我正在使用Web api中的ObjectCache在内存中存储一​​些数据。但是我需要由运行在同一应用程序池中的另一个Web api访问此数据。请指教。我正在使用IIS 8.5。

1 个答案:

答案 0 :(得分:0)

我建议您避免这些复杂的事情,因为在不同应用程序的池/内存之间共享内存会很麻烦。

是否不可能将Web服务创建为要共享的n个应用程序的缓存? 在该Web服务中,您可以使用最适合存储在内存中的任何内容

[HttpGet("set/{keyname}/{data}")]
public IActionResult SetData(string keyname,string data)
{
    HttpContext.Session.SetString(keyname, data);
    return Ok("session data set");
}

[HttpGet("get")]
public IActionResult GetData(string keyname)
{
    var sessionData = HttpContext.Session.GetString(keyname);
    return Ok(sessionData);
}