Mysql
 sql >> Cơ Sở Dữ Liệu >  >> RDS >> Mysql

Trình tạo RSS với chức năng lưu vào bộ nhớ đệm

Trước tiên, để thêm bộ nhớ đệm vào script , có vẻ như sẽ không quá khó để đặt Zend_Feed Zend_Cache cùng nhau - hoặc chỉ gói tập lệnh thế hệ hiện tại của bạn bằng Zend_Cache .

Chỉ cần thiết lập bộ nhớ cache với thời gian tồn tại của bạn:

$frontendOptions = array(
  'lifetime' => 7200, // cache lifetime of 2 hours
  'automatic_serialization' => true
);

Sau đó, kiểm tra xem bộ nhớ đệm có còn hợp lệ không:

if(!$feed = $cache->load('myfeed')) {
  //generate feed
  $cache->save($feed, 'myfeed');
}

//output $feed

Tôi không biết bạn tạo RSS của mình như thế nào, nhưng bạn có thể nhập cấu trúc mảng vào Zend_Feed :

$rssFeedFromArray = Zend_Feed::importArray($array, 'rss');

Tất nhiên là cách tốt nhất có thể chỉ sử dụng trình tạo nguồn cấp dữ liệu hiện tại của bạn và lưu đầu ra vào một tệp . Sử dụng tệp đó làm nguồn cấp RSS, sau đó sử dụng cron / web hooks / queue / anything để tạo tệp tĩnh. Điều đó sẽ đơn giản hơn và sử dụng ít tài nguyên hơn so với việc tập lệnh tạo thực hiện bộ nhớ đệm.

//feedGen.php
//may require some output buffering if the feed generator outputs directly
$output = $myFeedGenerator->output();
file_put_contents('feed.rss', $output);

Bây giờ liên kết nguồn cấp dữ liệu là /feed.rss và bạn chỉ cần chạy feedGen.php bất cứ khi nào nó cần được làm mới. Cung cấp tệp tĩnh (thậm chí không được phân tích cú pháp bằng php) có nghĩa là máy chủ của bạn ít phải làm hơn.




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Lỗi cú pháp với mô phỏng tạo người dùng nếu không tồn tại

  2. Cách lấy cấu trúc php phân cấp từ bảng db, trong mảng php hoặc JSON

  3. Cách sao lưu cơ sở dữ liệu MySQL Moodle của bạn

  4. R Truy vấn RMySQL làm biến dạng các ký tự tiếng Nhật

  5. Chọn một cột có tên từ khóa