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

Tính bền bỉ của kết nối PHP MySQL

Sự bền vững được thực hiện bởi bản sao của PHP được nhúng trong máy chủ web. Thông thường, bạn đã đúng - nếu PHP đang chạy ở chế độ CGI, sẽ không thể có kết nối liên tục, bởi vì sẽ không còn gì để tồn tại khi yêu cầu được thực hiện và PHP tắt.

Tuy nhiên, vì có một bản sao của PHP được nhúng trong máy chủ web và bản thân máy chủ web tiếp tục chạy giữa các yêu cầu, nên có thể duy trì một nhóm các kết nối liên tục trong PHP "vĩnh viễn" đó.

Tuy nhiên, lưu ý rằng trên các mô hình máy chủ loại đa nhân viên Apache, các nhóm kết nối được duy trì MỖI NGƯỜI. Nếu bạn đặt giới hạn nhóm của mình thành 10, bạn sẽ có 10 kết nối cho mỗi con Apache. 20 trẻ em =200 kết nối.

Các kết nối liên tục cũng sẽ dẫn đến các vấn đề lâu dài với các deadlock và các vấn đề khó gỡ lỗi khác. Hãy nhớ rằng - không có gì đảm bảo rằng các yêu cầu HTTP của người dùng sẽ được phục vụ bởi kết nối SAME apache con / mysql. Nếu một tập lệnh chết một phần thông qua một giao dịch cơ sở dữ liệu, giao dịch đó sẽ KHÔNG được khôi phục lại, bởi vì MySQL không nhìn thấy mặt HTTP của mọi thứ - tất cả những gì nó thấy là kết nối apache mysql <-> vẫn mở và giả định rằng tất cả đều tốt.

Người dùng tiếp theo nhấn tổ hợp apache / mysql con / kết nối cụ thể giờ đây sẽ kết thúc một cách kỳ diệu ở giữa giao dịch đó mà không có manh mối nào cho thấy giao dịch đang mở. Về cơ bản, nó tương đương với Web của một nhà vệ sinh không có nắp - tất cả "rác" từ người dùng trước vẫn ở đó.

Với các kết nối không liên tục, bạn được đảm bảo có một môi trường 'sạch' mỗi khi kết nối.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Tại sao MySQL COUNT không có tên bảng lại cho 1

  2. Tính tổng số giờ từ trình theo dõi thời gian đến lịch theo ngày

  3. Mysql Chỉ mục không gian không được sử dụng

  4. lỗi mysql 'TYPE =MyISAM'

  5. Làm thế nào để chuyển đổi DateTime thành một số trong MySQL?