Use publish:begin or publish:end events to clear custom caches
Use Sitecore caching as much as possible to avoid redundancy and unnecessary usage of additional resources, however, if custom ASP.NET caching is used, unlike Sitecore cache, it is not cleared automatically with a publish, therefore, a custom “cache clearer” should be triggered before or after the publish. If makes functional sense, it helps storing custom caches using Sitecore caching facilities, which removes the need for creating custom cache management functionality.