김영한의 실전 데이터베이스 - 기본편
김영한
실무에 꼭 필요한 SQL과 데이터베이스의 기본기를 학습합니다. 개발자뿐만 아니라 기획자나 데이터 분석가분들도 SQL을 깊이있게 학습합니다.
Basic
SQL, MySQL, DBMS/RDBMS
Spring BootとJPAを活用してAPIを開発します。そして、JPAは極端なパフォーマンスを最適化する方法を学ぶことができます。
Spring BootとJPAを活用してAPIを開発する正しい方法を理解します。
Spring BootとJPAを活用してAPIルックアップパフォーマンスをチューニングする方法を理解します。
Spring BootとJPAを活用して、実用的なパフォーマンスを最適化する方法を理解します。
スプリングブート、実務でうまく使いたいなら?
複雑な問題まで解決する力を育ててみてください。
🚩この講義はロードマップコースです。
Java Jin Youngでは、Spring BootとJPAを活用してWebアプリケーションを開発することが世界的な傾向です。そのため、多くの開発者がこれら2つの技術を学習して使用しています。しかし、実務の多様で複雑な状況にパフォーマンスまで考慮しながら、これらの技術を再び活用することは考えほど簡単ではありません。
実務では、機能を開発するために必要な手順を超えて技術的な問題を解決できる必要があります。複雑で、データも多くの状況でパフォーマンスを最適化し、同時にメンテナンスしやすいアプリケーションを開発する必要があります。
1編ではWebアプリケーションを開発しながら機能の実装に焦点を当てたら、 2編は機能開発を超えて技術問題を解決することに焦点を当てました。きちんと実装する方法は何か、実務で主にどんな性能問題があり、どのように解決すべきか、技術問題を解決するのに役立ちます。
APIを正しく実装
APIを1つ開発してもJPAを使用すると、エンティティという概念が入りながら悩む距離が多くなります。エンティティをAPIに直接公開する必要がありますか?それとも別のオブジェクトを別々に作成して返す必要がありますか?エンティティを返すと、遅延ローディングはどのように処理する必要がありますか?など数多くの悩みをすることになります。実務でどのように実装するのが安全で、メンテナンスが良い方法なのか本番のノウハウをお知らせします。
JPA 極限の照会パフォーマンスの最適化について
実務では、複数のテーブルを結合し、データをすばやく照会する必要がある複雑な状況が頻繁に発生します。ところでここに一対多関係のコレクションデータも一緒に照会し、さらにページングまで処理しなければならない場合があります。これは問題が非常に複雑になり、単にテーブルの結合だけでは問題を解決するのが困難です。このような複雑なルックアップパフォーマンスの問題をJPAでどのように最適化するか、そして限界はどこまでであるのか本番のノウハウをお知らせします。
複雑な例をコーディングで6段階に分けてパフォーマンスチューニング
パフォーマンスが出ないAPIを直接開発し、なぜパフォーマンスが出ないのかを分析し、 6段階に分けて段階的に直接コーディングしながらチューニングできるように準備しました。こういったことに従うと、当然のことながら、実務の複雑なパフォーマンス問題にどのように対処すべきかがわかります。
ワーキングJPAパフォーマンス問題の90%を解決
今回の講義では、実務JPAのパフォーマンス問題の90%を解決できるように、実務で本当に頻繁に発生するさまざまなパフォーマンス問題が含まれています。スプリングブートとJPAで進行する実務プロジェクトを見ると、機能の実装はうまくいきますが、プロジェクトの最後にパフォーマンスが出なくなって苦労する開発者の方々を本当にたくさん見ました。それで、助けに行ってみると、JPAのパフォーマンス最適化をどうすべきかわからない方が多かったです。
数日の夜を刻みながら何とか解決しようとする方から、方法がわからないので、JPAの代わりにSQLを直接汗で汗で書いて、数多くのコードをSQLに変更する方まで、本当に様々な状況を見ました。ところがいざ助けに行って実際の性能がよく出るようにチューニングするのには5分かかりませんでした。 JPAクエリオプションを調整して、少しのコードだけを修正しましたが、数日苦労しても1時間ずつかかったクエリが数十秒に減るのを見た開発者の方の表情がまだ生き生きしています。 JPAは、それ自体でさまざまなパフォーマンスチューニングオプションを提供しています。したがって、いくつかのオプションとコードを修正するだけで、さまざまなパフォーマンスの最適化を試すことができます。
このレッスンで説明されている内容を理解すると、90%の実務パフォーマンスの問題を解決できます。
最近では、ビューテンプレートを使用して直接サーバーからHTMLを作成して応答するのではなく、APIにJSONデータを投稿して返すことがよくあります。 Spring BootとJPAを使用してAPIを開発する際の注意点と正しい設計方向を理解し、パフォーマンスまで考慮してAPIを完成することが今回の目標です。
パート2は、パート1で作成したドメインに基づいてREST APIを開発します。そして、段階的にルックアップ用APIのパフォーマンスを最適化します。このプロセスを通じて、実務で必要なJPAの照会クエリのチューニングに関連する部分を素早く解放します。
この講義はほとんど練習で行われています。そのため、最初から最後まで、自分が直接コーディングしながら講義に従わなければならない最も多くのものを得ることができます。
ちなみにこの講義はSpring BootとJPAをある程度知り、簡単なWebアプリケーション程度は開発できる方が対象です。これらの人々が機能の実装を超えて技術的に深い理解をするのを助けることが目標です。したがって、Spring BootとJPAの理解が不足している場合は、最初のレッスンを最初に聞くことをお勧めします。
💻選手講義を確認してください!
Java ORM標準JPAプログラミング - 基本編
JPAベースの技術を理解するために必要な選手講義です。
本当! Spring BootとJPAの活用1 - Webアプリケーション開発
Spring BootとJPAで実際のWebアプリケーションを設計および開発します。
本当! Spring Data JPA
基礎から実務までスプリングJPAを学びます。
本当! Querydsl
Querydslを介して複雑なクエリと動的クエリの問題を解決します。
学習対象は
誰でしょう?
実務ではSpring BootとJPAを使用していますが、そのスキルをよりよく活用したい方
Spring BootとJPAは知っていますが、正しいAPIの開発方法を理解したい人
Spring BootとJPAは知っていますが、実務に必要なパフォーマンス最適化技術を理解したい人
スプリングブートとJPAは分かるが、実務で必ず知るべき深い内容を理解したい方
前提知識、
必要でしょうか?
JAVA言語
スプリングフレームワーク
リレーショナルデータベースの基礎知識
JPA
552,826
受講生
36,140
受講レビュー
8,952
回答
5.0
講座評価
24
講座
교육자
전: 우아한형제들 기술이사, 카카오, SK플래닛
진짜 실무에 필요한 제대로 된 개발자가 될 수 있도록, 교육하는 것이 저의 목표입니다.
EO 인터뷰 영상
개발바닥 - 시골 청년 개발왕 되다
全体
24件 ∙ (6時間 35分)
講座資料(こうぎしりょう):
全体
1,268件
5.0
1,268件の受講レビュー
受講レビュー 2
∙
平均評価 5.0
5
JPA 기본편과 활용 1, 2편까지 완강 했습니다. 배속 재생을 하지 않으면 듣기 힘들정도로 지루한 강의 들이 많았는데 영한님 강의는 배속 재생을 할 수가 없었습니다. 그만큼 내용이 알차게 담겨있고 강의 텐션도 좋으셔서 집중해서 모든 강의를 들을 수 있었습니다. 좋은 강의 감사합니다~!~!
크! 고맙습니다. 정원님. 사실 저도 텐션이 중요하다고 생각해서, 텐션이 죽으면 다시 찍습니다 ㅋㅋㅋ 이 부분을 상당히 많이 노력했는데, 알아주시는 좋은 피드백을 받아서 기분이 좋네요 ㅎㅎ
受講レビュー 5
∙
平均評価 5.0
5
* best practice를 알려주시되 bad practice도 함께 설명해주시니 개선된 것들이 왜 best practice가 되는지 알 수 있었습니다. * 개발편의, 성능, 유지보수 등의 트레이드 오프에 대해 자세히 설명해주십니다. 아직까지 많은 트래픽을 경험한적이 없지만 서비스가 커지고 트래픽이 늘었을 때 백엔드 개발자가 성능 개선을 위해 어떤 점을 고려해야 하는지 알 수 있었습니다. * 성능 개선을 위해 작업 했을 때 SQL 쿼리를 하나씩 보여주시면서 어떻게 성능 최적화가 되는지, 항상 이런 방식의 성능 최적화가 은탄환이 아님도 함께 알려주십니다. Spring Data JPA, QueryDSL 설명을 듣다보니 DB와 JPA의 기본을 더욱 탄탄히 다지고 싶다는 생각이 듭니다. 실무에서의 경험을 멋진 강의로 풀어내주셔서 감사합니다:)
강의를 정말 제대로 습득하셨네요^^! 멋진 수강평보다 깊이있게 학습하셔서 제가 더 보람이 있습니다. 항상 응원하겠습니다.
¥10,375
知識共有者の他の講座を見てみましょう!
同じ分野の他の講座を見てみましょう!