2012-10-20 31 views
8

Vì vậy, đây là những gì làm phiền tôi. Tôi chỉ cần cài đặt bộ nhớ cache APC và Im thử nghiệm nó. Khi sử dụng giao diện Quản trị APC, trong tệp apc.php, tôi có thể xem tất cả thông tin về APC, v.v. Khi tôi vào mục Bộ nhớ cache Hệ thống, tôi có thể thấy mọi tập lệnh tôi gọi đều được ghi ở đó.PHP APC Cache, nó có hoạt động không?

Vậy điều này có nghĩa là APC Cache hoạt động ra khỏi hộp? Tôi chỉ có thể cài đặt bộ đệm APC và nó đã tăng tốc ứng dụng của tôi bằng cách lưu trữ bộ nhớ đệm? Và nếu tôi muốn tôi có thể lưu các biến để làm cho nó nhanh hơn?

Hy vọng bạn nhận được câu hỏi, nó có thể đơn giản đối với người có nhiều kinh nghiệm hơn với APC.

Tôi biết tôi có thể thêm một số biến vào bộ nhớ cache, sau đó loại bỏ chúng và điều đó sẽ tăng tốc ứng dụng của tôi. Nhưng có đúng không, APC sẽ tăng tốc ứng dụng và bộ nhớ cache tất cả bởi chính anh ta? Và có tài liệu hay nào để tôi có thể tìm hiểu thêm về APC không?

+1

Có, nếu bạn nhìn thấy kịch bản nó bộ nhớ đệm nó hoạt động. Có lẽ nó cần một số [finetuning của tập tin cấu hình] (http://www.php.net/manual/en/apc.configuration.php) mặc dù, nhưng đó là tất cả. – fvu

+1

Cảm ơn, vì vậy theo mặc định APC lưu trữ mọi tập lệnh và lưu vào RAM. Vì vậy, theo cách đó chúng được truy cập nhanh hơn nhiều so với HDD. Vì vậy, tôi có thể thấy lợi ích của việc sử dụng bộ nhớ cache APC bằng cách cài đặt nó, mà không làm bất cứ điều gì khác? – otporan

+1

Lợi thế ** chính ** không phải là bạn lưu tải từ đĩa nhưng thực tế là mã byte được lưu trữ - không có bộ nhớ cache mã được diễn giải lại mỗi khi nó được chạy, với bộ đệm ẩn mà bước bị bỏ qua. – fvu

Trả lời

8

Vâng, APC "chỉ hoạt động". Bất cứ ai chạy PHP trong sản xuất mà không có APC/(opcodecache khác) đang bỏ lỡ việc cải thiện hiệu suất dễ dàng nhất mà họ có thể dễ dàng đạt được.

Một vài thông báo trước.

Nếu bạn đang phát triển, bạn vẫn có thể chạy APC, tuy nhiên, bạn có thể muốn kích hoạt các cuộc gọi stat. Điều này có nghĩa là APC sẽ kiểm tra sửa đổi lần cuối các tệp của bạn.

apc.stat = [1|0]

Vì vậy, nếu bạn không có cuộc gọi stat được kích hoạt, và bạn thay đổi một tập tin và APC đã lưu trữ nó, thì nó sẽ không quan sát những thay đổi của bạn, và bạn sẽ tiếp tục sử dụng opcode cache.

Như bạn đã đề cập, APC không chỉ dành cho bộ nhớ đệm mã hóa, nó còn hữu ích cho bộ nhớ đệm của người dùng. Bạn có bộ nhớ cache system và bộ nhớ cache user của mình.

Bạn có thể lưu trữ những thứ chống lại bộ nhớ cache dùng của bạn bằng cách chỉ cần thực hiện một cái gì đó như:

apc_store("fooKey", "barValue");

+1

Cảm ơn, vì vậy cache hệ thống là những gì tôi đã trải nghiệm, mọi tập lệnh được lưu vào RAM tự động và bộ nhớ cache của người dùng sẽ là nếu tôi lưu một thứ gì đó vào bộ đệm bằng cách sử dụng apc_store() và sau đó lấy nó ra bằng apc_fetch()? Điều này có đúng không? Cảm ơn một lần nữa! – otporan

Các vấn đề liên quan