Làm cách nào chúng tôi có thể tăng thời gian thực thi của tập lệnh php?

Nếu bạn có một thiết lập WordPress lớn hoặc một máy chủ có tài nguyên hạn chế, thì bạn sẽ thường thấy lỗi “504 Gateway Time-out”

Bạn có thể làm theo các bước dưới đây để tăng giá trị thời gian chờ. PHP mặc định là 30s

Thay đổi trong php. ban đầu

Nếu bạn muốn thay đổi giới hạn thời gian thực thi tối đa cho các tập lệnh php từ 30 giây [mặc định] thành 300 giây

vim /etc/php5/fpm/php.ini

Bố trí…

max_execution_time = 300

Trong Apache, các ứng dụng chạy PHP như một mô-đun ở trên sẽ đủ. Nhưng trong trường hợp của chúng tôi, chúng tôi cần thực hiện thay đổi này ở 2 địa điểm nữa

Thay đổi trong PHP-FPM

Điều này chỉ cần thiết nếu bạn đã hủy nhận xét tham số request_terminate_timeout trước đó. Nó được nhận xét theo mặc định và có giá trị là max_execution_time được tìm thấy trong php. ban đầu

Thời gian mặc định cho phép các tập lệnh PHP thực thi là 30 giây được xác định trong tệp php. tập tin ini. Hàm được sử dụng là set_time_limit[int seconds]. Nếu giá trị được thông qua là '0', sẽ mất thời gian không giới hạn. Cần lưu ý rằng nếu bộ hẹn giờ mặc định được đặt thành 30 giây và 20 giây được chỉ định trong set_time_limit[], tập lệnh sẽ chạy trong 45 giây. Theo mặc định, tập lệnh PHP mất 30 giây để thực thi. Thời gian này được đặt trong php. tập tin ini. Thời gian này có thể tăng lên bằng cách sửa đổi max_execution_time tính bằng giây. Thời gian phải được thay đổi để giữ cho môi trường của máy chủ. Điều này là do việc sửa đổi thời gian thực hiện sẽ ảnh hưởng đến tất cả các trang web được lưu trữ bởi máy chủ. Thời gian thực thi tập lệnh có thể được tăng lên bằng cách
- Sử dụng hàm sleep[] trong PHP script
- Sử dụng hàm set_time_limit[]
- Giới hạn mặc định là 30 giây. Giới hạn thời gian có thể được đặt thành 0 để áp đặt không giới hạn thời gian tạm dừng

PHP - Type Juggling có nghĩa là xử lý một loại biến. Trong PHP một loại biến

PHP - Mysql_fetch_object trả về kết quả từ cơ sở dữ liệu dưới dạng đối tượng trong khi

Joomla là một hệ quản trị nội dung mã nguồn mở

Trong PHP, mặc định thời gian thực thi tối đa của mỗi script là 30 giây. Nhiều khi bạn cần thực thi một tập lệnh lớn, mất nhiều thời gian. Trong trường hợp đó, bạn đang phải đối mặt với thời gian chờ PHP. Để ngăn thời gian chờ, bạn cần tăng thời gian thực hiện trong PHP. Bạn có thể làm điều đó thông qua tệp php.ini hoặc tập lệnh PHP

trong php. tập tin ini

Mở tệp php.ini và thay đổi giá trị max_execution_time theo thời gian bạn muốn [tính bằng giây]

max_execution_time = 120 //120 seconds = 2 minutes

Trong kịch bản

Đặt dòng sau lên trên tập lệnh PHP

ini_set['max_execution_time', 120]; //120 seconds = 2 minutes

Tất cả chúng ta đều đã một hoặc hai lần gặp phải lỗi nghiêm trọng đáng sợ về thời gian thực thi tối đa, nó có thể gây khó chịu. Thời gian thực thi tối đa của PHP được đặt mặc định là 30 giây, nhưng trong một số trường hợp, nó cần phải cao hơn. Tuy nhiên, PHP hỗ trợ bạn, bạn có thể thay đổi cài đặt mặc định bằng cách sử dụng một chức năng; . Nó nhận hai tham số, một chuỗi và một số nguyên. Đầu tiên là cài đặt chính xác bạn muốn thay đổi và thứ hai là số giây bạn muốn đặt cài đặt đó tại

Tăng thời gian thực thi tối đa cho một tập lệnh PHP

Để nhanh chóng khắc phục sự cố của bạn đối với tập lệnh nặng, hãy thêm dòng PHP sau vào đầu tập lệnh của bạn

Hai điểm quan trọng cần lưu ý –

  • Thay đổi cài đặt phải được thực hiện ngay từ đầu tập lệnh, nếu không, bạn có nguy cơ thực thi mã so với mặc định và thời gian mới đặt, điều này sẽ không thành công
  • Điều này cũng sẽ chỉ áp dụng cho trang bạn thêm dòng mã
ini_set['max_execution_time', 120]; // 120 [seconds] = 2 Minutes

Đặt thời gian thực thi tối đa không giới hạn

Nếu bạn không hài lòng với việc chỉ định số giây chính xác, bạn có thể đặt nó thành không giới hạn, nghĩa là không có thời gian thực hiện tối đa. Tất nhiên, đây là một cách làm không tốt, nhưng nếu nó dành cho mục đích phát triển và thử nghiệm, thì nó khá tiện dụng. Chỉ cần đảm bảo rằng bạn thu hồi cài đặt trước khi đẩy các thay đổi của mình hoạt động trở lại

ini_set['max_execution_time', 0]; // 0 = Unlimited

Đặt Max_Execution_Time trên toàn cầu trong php. ban đầu

Bạn có thể cấp cài đặt này cho tất cả các trang hoặc tập lệnh dự án của mình bằng cách sử dụng PHP toàn cầu. tập tin ini. Bằng cách thay đổi cài đặt mặc định thành bất kỳ cài đặt nào bạn yêu cầu, thì có thể bạn sẽ không thực sự cần đặt cài đặt đó trong tập lệnh nữa. Để thay đổi thời gian thực hiện của bạn trong php. ini làm theo các bước dưới đây

  1. Xác định vị trí và mở thư mục xây dựng PHP của bạn
  2. tìm php. ini và mở nó
  3. Tìm dòng sau trong tệp cấu hình văn bản – max_execution_time=30
  4. Thay đổi giá trị 30 thành giá trị lựa chọn, Hãy nhớ rằng, giá trị này tính bằng giây
  5. Lưu & Đóng
  6. Khởi động lại máy chủ web của bạn để các thay đổi có hiệu lực

Người giới thiệu

Hãy xem tài liệu về cả hai hàm PHP dựng sẵn đã được đề cập trong bài viết này –

  • chức năng ini_Set
  • Loại cấu hình

Tóm lược

Việc thay đổi cài đặt này không nên được thực hiện một cách vội vàng, trước tiên hãy nghĩ đến những nhược điểm, đặc biệt nếu đó là một dự án trực tiếp. Cài đặt nhỏ này có thể là cứu cánh, nhưng nếu sử dụng không đúng cách, nó là một quả bom hẹn giờ cho máy chủ web của bạn

Thời gian thực thi tối đa trong tập lệnh PHP là bao nhiêu?

Một khía cạnh quan trọng của các chương trình PHP là thời gian tối đa để thực thi một tập lệnh là 30 giây . Giới hạn thời gian khác nhau tùy thuộc vào công ty lưu trữ nhưng thời gian thực hiện tối đa là từ 30 đến 60 giây.

Làm cách nào để tăng thời gian thực hiện cURL trong PHP?

Để tăng Thời gian chờ của cURL, chúng tôi khuyên bạn nên thay đổi giá trị default_socket_timeout của bạn trong php. ini thành “60” trở lên .

Làm cách nào để tăng thời gian chờ kết nối trong PHP?

Thời gian chờ mặc định là 30 giây. Nó có thể được thay đổi bằng cách sử dụng php max_execution_time. ini chỉ thị hoặc php_value max_execution_time Apache httpd tương ứng. chỉ thị conf cũng như với hàm set_time_limit[] .

Làm cách nào để có được thời gian thực hiện trong PHP?

Có thể lấy thời gian trên đồng hồ bằng cách sử dụng hàm microtime[] . Lần đầu tiên sử dụng nó trước khi bắt đầu tập lệnh và sau đó ở cuối tập lệnh. Sau đó sử dụng công thức [End_time – Start_time]. Hàm microtime[] trả về thời gian tính bằng giây.

Chủ Đề