## 1 Introduction  
A Content Delivery Network (CDN) is an important technology for data delivery in the Internet of Things (IoT). It stores content in multiple proxy servers geographically to enable users to obtain content from the nearest servers geographically close to them, thereby reducing the transmission delay and loading time [1, 2]. As proxy servers share the load of the originating servers and reduce their pressure of directly handling user requests, CDNs improve the overall system performance and stability. By replicating content on multiple servers, a CDN can quickly fetch the content from other servers in the event of the requested server's failure, ensuring continuous service availability. In addition, CDN effectively reduces network bandwidth consumption and data center operating costs by caching content and optimizing data transmissions. It works by caching static content (such as images, videos, CSS, JavaScript, etc.) on CDN nodes distributed globally, and when a user requests a website, DNS routes the request to the nearest CDN node, which, based on the user's request, caches the content and then sends it to the nearest CDN node [3]. According to the user's request, the node will return the cached content directly to the user or get the latest content from the original server and return it. Common CDN service providers include Cloudflare, Akamai, Amazon CloudFront, Google Cloud CDN [4], etc. CDNs are widely used in a variety of websites and applications, especially those that require fast loading and high availability, such as video streaming, e-commerce, and social media. On the other hand, recommender systems play a crucial role in today's Internet [5]. In contrast to content caching, which focuses on the popularity of user requests, content recommendation emphasizes personalization of user interest and recommends content to users according to their individual interests, which may include new content that the users have not requested before. With the maturity of recommender systems, recommendations have shown great importance in CDN for improving its service satisfaction. For example, Netflix reports that 80% of its total product views are influenced by recommendation systems [6]. The joint optimization of content caching and recommendation at the same time for both popularity and personalization is of increasing significance for improving system effectiveness in efficiency and service satisfaction. However, achieving this faces great technical challenges due to the contradicting goals of caching and recommendation, while cache hit-rate maximization focuses on finding commonalities among user requests to improve network efficiency, recommendation emphasizes users' individual needs for the purpose of enhancing user stickiness. As different users have different needs and access behavioral patterns, it is a challenging problem to find a balance between diverse user needs to ensure the accuracy of recommended content and the efficiency of caching frequently used content [7]. Most previous studies focus on either cache hit-rate maximization or recommender system optimization, and little is known about jointly optimizing the two, particularly with a provable performance guarantee. Our research is dedicated to solving the problem of jointly optimizing content caching and recommendation to maximize the cache hit rate without overly distorting the recommended content. We formulate this problem as a constrained optimization problem and show its NP-hardness even without considering recommendations. For the more general case when the recommendation is done among the cached contents, we show that this problem has the property of a monotonically increasing and submodular objective function and propose an algorithm with an approximation ratio of \(1-\frac{1}{\varepsilon}\). Our contributions are summarized as follows:  
* Define the joint caching and recommendation optimization problem and show its NP-hardness even without considering the recommendation.