
誰も教えてくれないWebRTCを使ったP2P通信
July
WebRTCを活用して実装するウェブカメラとピア間通信について学習できます。
入門
Go, webrtc, p2p
statefulサービスに対してどのようにサーバーを構築し、無停止デプロイが進行されるのか、すべてをお教えします。


学習した受講者のレビュー
5.0
ssez
ORMを使用するときの欠点について言及してくれたときはすっきりしました。それでも最近のクエリチューニング時にロギングしてみました。 今回も楽しく見ています。 goが慣れていないので、第1弾に比べて進度がちょっとダディですが、こう書いてるな~ってまた違う楽しみがありますね! 私たちの会社は私を含めて2人だけ働いていて(私はフルスタック、ひとりは代表ですが、devopsまで頑張ってください。😅)どうしても小さなサービスを運営しているので…受講し始めましたが、再び勉強する時のようにときめきですね。 最近未来について悩みも多かったのですが、やはり悩むよりも頭を空にして勉強するのが最高のようです。頑張れば別の講義に行きます:)
5.0
DAN
go langを書いたサーバーを見ることができてよかったです。
5.0
rnxogud123
良い講義ありがとうございます。
Kafkaを通じた発行/購読パターン
MySQLを通じたデータ管理
WSS通信による大容量チャットTPS処理
イベントストリーミングによるサーバー管理
本講義ではストリーミングプラットフォームで使用されるチャットTPSについて、Statefulなサービスがどのように管理され、開発されるのかについて学ぶことができます。
この講義は2つの言語を使用しています。
Golangを優先的に使用してすべて実装する方法について学び
その後受講される方のためにより馴染みのあるNode.JSでKafkaを活用する方法など、様々な言語を通じて講義を構成しました。
さらにKafkaを通じた発行/購読パターン、MySQLを通じたデータ管理など、多様で既存に経験したことのないテーマで講義を構成しました。
講義を受講すると、皆さんはKafka、MySQLに対する深い理解とStatefulなサービスに対するZero-downtime Deploymentを学習することができます。
皆さん!!単純にMVC、Service-Repositoryのようなサーバーの構造ではなく、サーバーの基本形態について考えたことはありますか?
実務ではサーバーの形態によってZero-downtime Deploymentを実行するか、それともある程度のretryを許容するかが決まります。

皆さんが開発するサーバーは、この2つの概念のうち1つが必ず適用されて開発が始まります。

一般的なHTTPサーバーを考えていただければと思います。
状態を保持しないため、拡張に非常に有利であり、皆さんが一般的にサーバーを開発するなら
基本的にStatelessなサーバーで構成されます。
最も代表的なサーバーの形態だと見ていただければと思います。
なかなか触れることのないサーバーの形態です。
このようなサーバーの構造では、wsプロトコルを活用して開発が進められ
状態を維持するため、拡張には非常に不利ですが、コネクションを維持するため、リソースの節約に役立ちます。
この講義で主に扱うサーバーの形態です。

この講義は簡単には接することのできない講義だと断言できます。
2つの形態のサーバー開発を通じて、皆さんはMySQL、Socketを活用した大容量チャットTPSに対する処理と、Kafkaを活用したZero-downtime Deploymentがどのように動作できるのかについて学習することができます。
先ほどの紹介文で、私は頻繁にこの用語を使用しました。
直訳すると、無中断デプロイを意味します。
皆さんはストリーミングプラットフォームで突然サイトが使えなくなったり、中断された経験はありますか?
ユーザー側では、デプロイが進行しているのか、していないのかも分からないほど、サイトに影響を与えずにデプロイが進行することをZero-downtime Deploymentと言います。
この方式はStatelessなサービスでは非常に簡単に実装できます。
しかし、サーバーの状態を維持するStatefulなサービスでは非常に難しく、多くのリソースを消費する作業です。
この講義ではStatefulなサービスに対してKafkaを活用し、Zero-downtime Deploymentを実装する方法について扱います。
Kafkaはイベント駆動型Streamツールとして、パブリッシュ/サブスクライブパターンを使用する際に非常に頻繁に使われるサービスです。
実際にLinkedInで開発し、導入したサービスであり、様々な企業がKafkaを導入してイベントに対するメッセージの損失なくデータを処理しています。
受講生の皆さんが最も重要視すべき点は、ネカラクベ、多数の大企業ではKafkaを必須で使用しているため、大いに役立つはずです。
この講義では、自らlocal環境にKafka環境を設定及び構築する方法についてお伝えし、実際に使用する方法までお伝えしています。
Kafkaに関する内容は、実際のLinkedInの開発者であるGwen ShapiraのKafka: The Definitive Guideの内容を基にカリキュラムが構成されました。
kafkaのconfig環境設定およびBroker、zookeeperの起動まで扱います。これを通じて皆さんは実際にKafkaを活用したサービスを開発する方法と注意点について学ぶことができます。

socket通信に関するデータ管理及びチャットルームに関するデータ管理を、サービス構築に適したMySQLを活用して管理する方法について学習し、ORDER BY、Pagingなどのクエリを直接作成しながら、サーバーを構築する方法を学ぶことができます。

単に1つのサーバーを構築するのではなく、様々なサーバーを構成し、それらのサーバーを管理するControllerサーバーを構築するなど、多くのサーバー作業を通じてLoad Balancerを間接的に経験することができ、KafkaのPub/Sub Modelingを活用したサーバー間の通信方法について経験することができます。


ローカル環境でのKafka起動方法

MySQLを通じたチャットルーム及びチャットデータ管理

websockets通信を通じたDBデータの取り扱い

Node.js、Goを活用したKafka活用及びサーバー管理
オペレーティングシステムおよびバージョン(OS):Windows、macOS、Linuxなど、すべてのOSが可能です。
PCスペック: インターネット接続が可能な基本スペックのPC
必ず無料で公開されている動画をご確認ください!! 皆さんがこの講義で学ぶことができ、実際に実装するサービスに関する情報が含まれています。
この講座は前回の1弾講座に続き、追加的なサービス構築及びデータ管理と配布について扱う講座です。
ですので、前回の講義を基に講義が続けて進行されます。
簡単に前回の講義で扱ったソースコードの説明は行われますが、初めて聞く方は非常に戸惑う可能性があります。
ですので、もしwss通信やチャットサーバーに関する知識がない場合は、この講義を先に受講していただければ、講義を受ける上で大きな困難はないと思います。
この講義の目標はFE開発ではなく、ws protocolに関するZero-downtime Deploymentアーキテクチャ及びサーバー開発を中心としています。
なぜなら、私はFEを専門とする開発者ではなく、BEを専門とする開発者だからです。そのため、FE開発において誤った知識が伝わる懸念があるため、FE開発は単一サーバーに対するAPI処理のみ進行しています。
ですので、追加的なZero-downtime DeploymentのためのReact State管理は講義では行いません。この部分は講義でも継続的に言及しておりますので、ご参考いただければ幸いです。
学習対象は
誰でしょう?
パブリッシュ/サブスクライブパターンに興味がある方
ストリーミングプラットフォーム構築に興味のある方
チャットデータ管理について気になる方
無難な開発方式ではなく、新しくて面白い開発をしてみたい方
MySQL、Kafkaを実務者から学びたい方
前提知識、
必要でしょうか?
Golang [ 講義の基本言語です。知らなくても大丈夫です。 ]
Node.js [受講生のための言語です。知らなくても大丈夫です。]
3,865
受講生
195
受講レビュー
88
回答
4.4
講座評価
15
講座
自己紹介
非専攻出身で、現在は板橋(パンギョ)でプラットフォームサーバーの開発を担当しています。
サーバーの最適化や様々なクエリチューニングを好み、簡単な機能を皆さんに分かりやすく、かつ迅速にお伝えできるよう努めています。
経歴
[前] サンドボックス ブロックチェーン開発者
[前] ネクソン子会社 バックエンド開発者
[前] 板橋(パンギョ)大企業プラットフォームサーバー開発者
[現] 板橋(パンギョ)親会社サーバー開発者
全体
31件 ∙ (3時間 46分)
講座資料(こうぎしりょう):
全体
16件
4.4
16件の受講レビュー
受講レビュー 4
∙
平均評価 5.0
受講レビュー 5
∙
平均評価 4.6
受講レビュー 3
∙
平均評価 5.0
5
1編と2編とも見ました。チャットサーバーの構成をある程度理解できたし、一般的に触れられない話題で構成された良い講義だと思います。
身体を知らないという…。これから良い講義でお返事いたします!
受講レビュー 11
∙
平均評価 5.0
受講レビュー 8
∙
平均評価 5.0
5
ORMを使用するときの欠点について言及してくれたときはすっきりしました。それでも最近のクエリチューニング時にロギングしてみました。 今回も楽しく見ています。 goが慣れていないので、第1弾に比べて進度がちょっとダディですが、こう書いてるな~ってまた違う楽しみがありますね! 私たちの会社は私を含めて2人だけ働いていて(私はフルスタック、ひとりは代表ですが、devopsまで頑張ってください。😅)どうしても小さなサービスを運営しているので…受講し始めましたが、再び勉強する時のようにときめきですね。 最近未来について悩みも多かったのですが、やはり悩むよりも頭を空にして勉強するのが最高のようです。頑張れば別の講義に行きます:)
2人開発という本当に簡単ではありません。応援します! どうやら簡単に触れられない様々な概念を提供していただきながら、見方を広げたいと思いました。だからこういう講義をたくさん準備したのですが、役に立ったと思い、とても嬉しいですね。 常に実力に対する疑いが行くのは良い姿のようです。自慢するよりは低い姿勢で取り組むのが私は正しいと思います 私もそうですよㅎㅎ 講義内容のほか、悩みのある部分や質問がありましたら、気軽に質問してください。あの考えよりなるように人間的な人なのでㅎㅎ いろいろ会話しながらお互いに解決していくのもいいと思います。 講義聞いてくれてありがとう!
知識共有者の他の講座を見てみましょう!
同じ分野の他の講座を見てみましょう!