먼저 실제 상태 : 양식이있는 ZF2 응용 프로그램이 있습니다. 이 양식에는 일부 자동 완성 필드가 포함되어 있습니다 (프론트 엔드 측에 jQuery Autocomplete으로 구현 됨). 이 같이 뒤에ZF2 애플리케이션에서 자동 완성을위한 서버 측 캐싱을 실현하는 방법은 무엇입니까?
SQL 문 : 물론
SELECT name FROM countries WHERE countries.name LIKE %en%
-> should find "Arg[en]tina", "Arm[en]ia", "B[en]in", "Turkm[en]istan" etc.
or
SELECT name FROM countries WHERE countries.continent_id = 2
-> should find "Afghanistan", "Armenia", "Azerbaijan" etc. (2 = Asia)
or
SELECT name FROM countries WHERE countries.continent_id = 2 AND countries.name LIKE %en%
-> should find "Arm[en]ia", "Turkm[en]istan" etc. (2 = Asia)
, 그것은 데이터베이스가 작은 자동 완성 많은 요청에 의해 위협 가져옵니다는 문제에 연결됩니다. 캐싱이 도움이 될 것입니다. 이미 Zend\Cache\Storage\Adapter\Apcu
기반 캐싱 메커니즘을 구현하기 시작했습니다. 하지만 다음 문제가 생겼습니다. APCu과 같은 공용 캐시를 사용하면 결과를 동적으로 필터링 할 수 없습니다. 따라서 이러한 캐시는 자동 완성 기능이있는 경우에는 작동하지 않는 것 같습니다.
저는 이것이 일반적인 문제이며 이미이 문제에 대한 해결책이 있음을 확신합니다.
자동 완성 기능을위한 ZF2 응용 프로그램에서 캐싱 메커니즘을 구현하는 방법은 무엇입니까?