Laravel 쿼리에서 캐시를 사용하는 방법 – Larachamp


laravel에서 캐시

안녕하세요 개발자 여러분, 오늘은 라라벨의 캐시에 대해 알아보고 데이터베이스에 쿼리하는 동안 캐시를 사용하는 방법에 대해서도 알아보겠습니다. 일반적으로 캐시는 브라우저에서 쿼리 결과의 속도를 높이는 데 도움이 되기 때문에 제가 가장 좋아하는 주제라고 말하고 싶습니다.

쿼리를 실행하고 작업을 수행하는 동안 매번 결과를 반환하는 데 몇 초 또는 마이크로초가 걸립니다. 그러나 결과를 캐싱할 때는 결과를 빠르게 검색하는 데 도움이 됩니다.

Laravel의 캐시는 무엇입니까



캐시는 우리가 특정 시간 동안 데이터를 저장하는 데 사용하는 것이며 영원히 존재할 수도 있습니다. 가능한 한 빨리 결과에 액세스할 수 있도록 Laravel에서 캐시를 사용합니다. 서버에서 데이터를 저장합니다(캐시를 사용하는 경우). 서버에서 동일한 데이터를 요청할 필요가 없으며 결과를 얻기 위해 몇 초 동안 기다릴 필요도 없습니다.

Laravel에서 캐시를 사용하는 이유



이것은 캐시를 처음 사용하는 모든 사람이 물어봐야 할 주요 질문입니다. 캐시를 사용해야 하는 이유는 무엇입니까? 대답은 간단합니다. 캐시는 모든 데이터를 로컬에 저장하며 로딩 속도와 효율성을 향상시키는 데 도움이 됩니다. 사용자가 데이터를 매우 느리게 로드하는 사이트를 방문할 때 캐시를 사용할 수 있는 간단한 솔루션이 있으며 모든 데이터를 미리 다운로드하고 나중에 사용자 경험을 향상시키는 로컬 저장소에서 검색합니다.

Laravel의 캐시 구성



구성 디렉토리에서 캐시 파일을 찾을 수 있습니다config/cache.php. 라라벨은 다양한 유형의 캐시 드라이버를 제공하며 그 중 아무거나 캐시 드라이버로 사용할 수 있습니다.

라라벨은 Memcached , Redis , DynamoDB 등과 같은 대중적인 캐싱 백엔드를 지원합니다.
cache.php에서 드라이버에 대한 자세한 개요를 볼 수 있습니다. 기본값은 캐시를 파일에 저장합니다. 스토리지 디렉토리 아래에서 찾을 수 있습니다. storage\framework\cache\data .

캐시를 사용하자



몇 가지 실용적인 예제를 통해 Laravel에서 캐시를 사용하는 방법을 살펴보겠습니다.

캐시에 항목 저장



파일 상단에 Cache Facade를 사용해야 한다고 해서 Cache에 모든 항목을 쉽게 저장할 수 있습니다.

Cache::put('key', 'value', $seconds = 10);

put 메서드에서 특정 시간을 전달하지 않으면 캐시가 무기한 저장됩니다.

항목 저장 및 존재하지 않는지 확인




Cache::add('key', 'value', $seconds);

//add method will do this, If the item will be stored then it will return true otherwise false


항목을 영원히 저장하려면 이 항목에 대해 forever 메서드를 사용할 수 있습니다.

Cache::forever('key', 'value');


캐시에서 항목 제거


forget 메서드를 사용하여 캐시에서 항목을 제거할 수 있습니다.

Cache::forget('key');
// here you have to pass the key, which you want to remove.


모든 항목의 캐시를 제거하려면 flush () 메서드를 사용할 수 있습니다.

Cache::flush();.


Laravel의 태그 캐시



캐시 태그는 모든 드라이버에서 작동하지 않으며 Memcached에서만 작동하므로 이에 대해 알고 싶다면 official documentation에서 읽을 수 있습니다.

Laravel 쿼리 결과에서 캐시를 사용하는 실제 예



사용자 테이블이 있고 모든 사용자를 가져오고 싶습니다. 사용자를 가져오는 쿼리를 작성한 다음 캐시를 통해 모든 사용자를 가져온 다음 사용자 목록을 가져오기 위해 요청을 다시 누르면 해당 데이터가 캐시되었는지 여부를 확인합니다.

이것이 이 프로세스가 작동하는 방식입니다. 예를 보자. 질문이 있으시면 댓글 상자에 알려주세요.

나는 내 컨트롤러에 있고 모든 작업을 수행할 표시 기능을 갖게 됩니다.

 public function show()
    {
        $parentId = Auth::User()->id;
        $ClientsData = Cache::remember('clients', 60 * 60, function () use ($parentId) {
            return User::where('parent_id', $parentId)->orderByDesc('id')->with('file')->get();
        });
        return view('usersListing', ['clients' => $ClientsData]);
    }


기능의 과정을 이해합시다.
Cache::remember 함수를 사용하면 명명된 캐시가 존재하는지 여부clients를 확인한다는 의미입니다. 그렇지 않은 경우 데이터베이스에서 가져옵니다.

목록과 함께 CRUD 작업을 사용하는 경우 관찰자를 사용하여 캐시를 잊어버리는 것을 잊지 마십시오. 아래 동영상을 보시면 더 깊이 이해하실 수 있을 것입니다.

관찰자에 대해 알아보기

보고 읽어 주셔서 감사합니다. 개발자 여정에 도움이 되기를 바랍니다. Laravel Tips 페이지를 보십시오. 아마도 유용한 정보를 찾을 수 있을 것입니다.

게시물How to use Cache In Laravel Query – Larachamplarachamp.com에 처음 등장했습니다.

게시물 How to use Cache In Laravel Query – Larachamplarachamp.com에 처음 나타났습니다.

좋은 웹페이지 즐겨찾기