강의

멘토링

로드맵

Programming

/

Database

大企業で働いて経験したRedisをしっかりと使う方法【実習】

このレッスンでは、理論を直接扱うのではなく、実習をする過程を通じてコードでRedisを野蛮に使う方法について学習します。

  • Hong
3시간 만에 완강할 수 있는 강의 ⏰
실습 중심
시리즈
실무경험
Redis
redisinsights
cache
Spring

学習した受講者のレビュー

こんなことが学べます

  • SpringによるRedisソースの書き方

  • Redisの最も基本的なセット

  • Redisを活用したランキングデータの取り扱い

  • Redisを活用したキャッシュ戦略の実装

キャッシュを導入してユニット開発を進めてほしいという要請が入ってきました。 🤔

皆さんはこのような機能開発要求に対してキャッシュを導入しなければならないので、どのように導入をしますか?また、どのツールを使用しますか?この新しい要件が入ったら、次の項目を考慮する必要があります。


[1] 🤔どのようなキャッシュツールを導入する必要がありますか?

[2] 🤔キャッシング戦略と呼ばれていますが、それはどのような戦略を使うべきですか?

[3] 🤔期間が余裕あるか? Learning Curvesで時間がかかりました。


この新機能のシステムを導入する前に、そのシステムがどのように動作し、どのように活用するかについて基本的に知っておく必要があります。そうしてこそちゃんと使うことができ、今後のコード改善やメンテナンスをする上で大きな無理がありません。このレッスンでは、キャッシングを導入するという状況を想定し、代表的なキャッシングツールであるRedisについて本当に詳しく学びます。

Redis.. 必ず知っておくべきですか? 🤔

はい、絶対に学ぶ必要があります!

サーバーでの実務を経験してみた方であれば、データベースも必須ですが、 redisが使用されない場合は絶対に存在しません。

Redisを使用したキャッシュの導入は、プラットフォーム開発にとって不可欠な要素です。

  • Redisを使用せず、状況によっては異なるキャッシュツールを導入する場合もあります。しかし、基本的にキャッシュツールは使用されており、最もよく使われるのがRedisです。


講義の特徴😉

1⃣ SpringSpring Boot Javaを利用したAPIの設定

2⃣ redisinsightsを活用したredis管理

3⃣ Slave, Master Nodeの運用方法

4⃣さまざまなタイプのredis活用する方法

5⃣Mutex KeyとScriptを利用した様々なredisサービスの活用法

学習内容😉

Redisを活用した最も簡単なコレクションを扱う

Redisを使用しながら、最も頻繁に使用されるコレクションを使用する方法と、関数の抽象化を通じて汎用的に関数を使用する方法を学ぶことができます。

Sorted Setなどを活用した実際の機能に対するデータ実装

特定の機能を実装する際に使用できるコレクションを活用し、これにより実際の機能を実装する方法を学習することができます。

最も基本的なCaching StrategyとCache HitのためのPER Strategy

Caching Strategyには正解はありません。代わりに最良の選択肢があります。最も基本となるStrategyとアルゴリズムを活用したStrategyを一緒に学習します。

Lua Scriptを使用してAtomicを保証

1つの機能でRedisを介して複数回コマンドを送信することは、Atmoicを保証するのに適していません。 Scriptを介してAtmoicを保証するクエリを送信します。

Distributed Lockを活用する本番コード

実際の作業では、さまざまなインスタンスを運営しています。このような状況では、クライアントがMutexを制御するのは正しくありません。

Redisを活用して、複数のインスタンス間でロックを制御する方法を学ぶことができます。

練習の例😉

Master、Slave Redis Nodeを直接設定して操作する方法

Redis Pipelineを利用したI/O最適化

Redis Scriptを利用したAtmoicデータ処理

一緒に見れば良い講義😉

受講前の注意

練習環境

  • MacOs M1で講義が撮影されました。

  • java 17 2021-09-14 LTSバージョンが使用されました。

  • 誰もが使い慣れたVsCodeをIDEとして活用しました。

こんな方に
おすすめです

学習対象は
誰でしょう?

  • なぜRedisを書くのか、どのように書くのか気になった人

  • バックエンド開発者を夢見ている方

  • 誰もが知る方法ではなく、実務者の使い方が気になった方

こんにちは
です。

3,795

受講生

287

受講レビュー

104

回答

4.6

講座評価

18

講座

자기 소개

집에서 빈둥대다 개발에 흥미를 느껴 개발 공부를 시작하였고 현재는 판교에서 플랫폼 서버 개발을 담당하여 진행하고 있습니다.

 

제가 공부를 했던 방법과 실무에서 접하실 수 있는 여러가지 문제점들과 해결책을 여러분들에게 제공하고 싶어 지식공유자 활동을 이어나가고 있습니다.

 

강의는 오로지 저만의 지식을 통해 만들어지지 않습니다. 모든 강의는 함께하시는 분들이 계십니다.

 

지식공유자 경력

[前] 샌드박스 블록체인 개발자

[前] 넥슨 자회사 백엔드 개발자

[] 판교에서 고여가는 서버 개발자

 

인터뷰 이력

カリキュラム

全体

25件 ∙ (2時間 45分)

講座資料(こうぎしりょう):

授業資料
講座掲載日: 
最終更新日: 

受講レビュー

全体

13件

4.1

13件の受講レビュー

  • Kkyle님의 프로필 이미지
    Kkyle

    受講レビュー 6

    平均評価 5.0

    5

    60% 受講後に作成

    초심자도 듣기 좋은 강의이고 반복적인 코드일수도 있지만, 실제 하나하나 작성해주시면서 함께 강의를 구성해나가는 좋은 강의라고 생각합니다. 이렇게 Redis를 직접 운영하고 노드마다의 Ping 처리하는 강의는 보지 못했고 처음보는 개념이라서 굉장히 유익하였습니다. 해당 강의에서는 Spring을 사용하였지만, 사실상 개념적인 부분만 학습해도 매우 좋은 강의라고 평가 할 수 있을꺼같습니다. - 그래서 저는 실제로 제가 사용하는 언어로 따라하며 직접 구현하였습니다. 좋은 강의 공유해주셔서 감사합니다!

    • Hong
      知識共有者

      좋은 평 남겨주셔서 감사합니다. Redis는 정말 실무에서 많이 사용되는 툴 입니다. 그래서 자세히 알고 다양한 사용 방법에 대해서 숙지하시면 많은 도움이 되실꺼에요. 사실 제가 알려드리는 내용만 모두 숙지하셔도 앞으로 Redis를 작업하는데에 있어서 어려운 부분이나 모르시는 부분은 없을꺼라고 생각합니다. 실제로 제가 사용하고 있는 방식을 기반으로 강의가 촬영이 되기도 하였고요 앞으로 좋은 개발과 재미있는 개발 하시기를 바라겠습니다. 감사합니다 :)

  • 유쾌한 캥거루님의 프로필 이미지
    유쾌한 캥거루

    受講レビュー 14

    平均評価 4.9

    5

    60% 受講後に作成

    Redis를 코드상에서 이렇게 자세하게 파고든 강의는 처음이라고 생각합니다. 어느정도 익숙한 Spring, Java코드를 활용하여 제가 몰랐던 캐싱 정략과 그에 따른 이점과 단점을 말로만 하는것이 아니라 실제로 구현하는 모습이 인상깊었습니다. 개인적으로는 되게 유익했다고 생각합니다. 그럴싸하게 어려운 용어로 포장한 것이 아니라 좀 더 친숙하고 최대한 쉽게 알려주려고 노력하는 모습이 느껴지기도 한 강의였습니다. 좋은 강의 감사합니다 강사님.

    • Hong
      知識共有者

      안녕하세요 이론적인 부분에 대해서 한번 다루어보았는데, 실제 코드를 작성하는 방법에 대해서도 알려드리고 싶었습니다. 좋은 평 남겨주셔서 감사합니다.

  • devHand님의 프로필 이미지
    devHand

    受講レビュー 10

    平均評価 5.0

    5

    60% 受講後に作成

    코드는 되게 간단하고 처음하는 사람이 보기 좋은 강의라고 생각을 하고 더 중요한 부분은 강사님이 말씀해 주시는 다양한 사용법이라고 생각합니다. 듣지않고 코드만 본다면, 만족하지 못하는 분들도 있을꺼같아요.

    • Hong
      知識共有者

      Redis를 다루는 코드는 그렇게 어려운 부분이 없습니다. 되게 한정적으로 사용하기 떄문이고 사실상 반복적인 로직이 많이 적용이 되기 떄문입니다. 문제는 Redis를 어떻게 사용하냐고 굉장히 중요합니다. 싱글스레드라는 성질을 알고 다양한 형태를 알고 구현 할 수 있다면 실제 실무에서도 많은 도움이 된다고 생각을 합니다. 좋은 평 남겨주셔서 감사합니다.

  • 신동아님의 프로필 이미지
    신동아

    受講レビュー 11

    平均評価 4.6

    3

    36% 受講後に作成

    slave node를 왜 구성하는지 이런거에 대한 설명도 없어서 아쉽네요

    • Hong
      知識共有者

      안녕하세요 평 남겨주셔서 감사합니다!! slave node를 구성하는 이유에 대해서 간략하게 설명을 남겼다고 생각을 하였는데, 조금 부족한 부분이 있었나 보네요. Slave Node를 사용해야 하는 이유는, 기존 메인 노드가 사용이 불가능하는 경우에 대해서 대체용으로써 사용이 됩니다. 이러한 구조를 고가용성이라고 부르기도 하고요 쉽게 말해서 메인 노드에 대한 대체품이라고 생각해주시면 될 꺼 같습니다. 평 남겨주셔서 감사합니다!

  • 복숭아요거트님의 프로필 이미지
    복숭아요거트

    受講レビュー 4

    平均評価 4.0

    3

    32% 受講後に作成

    ¥4,656

    Hongの他の講座

    知識共有者の他の講座を見てみましょう!

    似ている講座

    同じ分野の他の講座を見てみましょう!