我正在使用WebAPI 2构建一个应用程序,可以在不久的将来看到相对较高的流量。该应用程序基本上允许用户进行在线测试。
我一次向用户提出1个问题的测试,但我不想为每个用户针对每个问题点击数据库服务器。一旦创建,测试永远不会改变。任何更改都意味着创建新测试。
我想从数据库服务器只读取一次测试,并将它们作为静态对象缓存在Web服务器上,以便所有参与该测试的用户共享相同的数据。这可以在高峰时间节省数以万计的数以千计的数据库事务。但是,我不希望存储永远创建的每个测试。当一个新的测试被创建时,旧的测试就会过时,我想要把它擦掉。我可能只是想要定期擦除它以防万一。
有人可以提供有关如何执行此操作的任何指导吗?我想我可以填充缓存,但是如何销毁静态对象呢?只需将其设置为null?提前谢谢。