並び順

ブックマーク数

期間指定

  • から
  • まで

81 - 120 件 / 379件

新着順 人気順

Socket.ioの検索結果81 - 120 件 / 379件

  • Laravel+WebSocketを触ってみる。

    今回は、WebSocketの勉強として、複数のブラウザでリアルタイムに同期されるチャット機能を実装してみます。 WebSocketとは? サーバとクライアント間で相互通信を行うためのプロトコル Socket.IOって何? Socket.IOはWebSocketで通信を行うためのライブラリ。(厳密にはWebSocketの実装ではないらしいが) ブラウザ用のJavaScriptライブラリと、サーバサイド用のNode.jsライブラリがある。 LaravelでWebSocketを使うには? ブロードキャスト(Broadcast)という機能を利用する。 この仕組みにより、Laravelでイベントがトリガーされるとフロントにもイベントが通知される様になるとの事。 ブロードキャストドライバとして、PusherというSaaSサービスを使う方式とRedisのPub/Sub機能を使用する方式がある。 Lara

      Laravel+WebSocketを触ってみる。
    • Node.js Backend Development: Features, Benefits - DZone

      Node.js backend development has become extremely popular among software developers. In order to keep up with modern technologies, it is necessary to know what is Node.js, what are the reasons to use it, where to hire developers, etc. Answers to these questions will be discovered in this article. Node.js back-end development is nothing new and you can find its implementation in many products like N

        Node.js Backend Development: Features, Benefits - DZone
      • Open sourcing Querybook, Pinterest’s collaborative big data hub

        An efficient big data solution for an increasingly remote-working world. Charlie Gu | Tech Lead, Analytics Platform, Lena Ryoo | Software Engineer, Analytics Platform, and Justin Mejorada-Pier | Engineering Manager, Analytics Platform With more than 300 billion Pins, Pinterest is powering an ever-growing and unique dataset that maps interests, ideas, and intent. As a data-driven company, Pinterest

          Open sourcing Querybook, Pinterest’s collaborative big data hub
        • バックエンド開発にお勧めしたいNode.jsフレームワークまとめ

          Node.js フレームワーク一覧テーブル Express.js # Express.js は、2010 年にリリースされてから、 MIT ライセンス の下で開発が続けられている、 Node.js の デファクトスタンダード です。 サーバーサイドで Web アプリケーションを開発するために必要な機能を提供します。 MVC アーキテクチャ が採用されており、この フレームワーク だけでアプリケーションを作成することができます。 また MVC アーキテクチャ だけではなく、REST API フレームワークとしての側面もあり、プロジェクトによって切り分けて使用できます。 非常に多機能で拡張性があり、多くのパッケージが開発されています。それらを組み合わせることで、より複雑なアプリケーションを開発することもできます。 メリット 単純で軽量 必要最小限の機能しか持ちません。 そのため非常に軽快に動作

            バックエンド開発にお勧めしたいNode.jsフレームワークまとめ
          • N予備校プログラミング入門コースで学べること - Qiita

            私 is 誰 今年の7月にドワンゴの教育事業部に異動し、N予備校でプログラミング講師をやることになりました。 現在は週2回ニコ生やN予備校上にてプログラミング入門コースの授業放送をしています。 ドワンゴ自体は7年目となり、ニコニコ動画の開発を4年、エンジニア教育やエンジニア採用を2年ほどやってきました。 この記事で書きたいこと 現部署に異動後、教材のインプットを兼ねて『N予備校プログラミング入門コース』を履修したのですが、明らかに難易度が僕の想像した "入門コース" から外れたガチ編成になっていて衝撃を受けたことが記事を書こうと思ったきっかけです。 中身としてはとても良い教材になっているので、僕のような勿体無い誤解が少しでも減れば幸いです。 入門コースはいわゆる入門コースではない 『プログラミング入門コース』のゴールは ドワンゴがエンジニアとして採用したいレベル や IT企業のエンジニアイ

              N予備校プログラミング入門コースで学べること - Qiita
            • Year in Review: The Most Loved Docker Articles, Blogs and Tweets of 2019 | Docker

              Year in Review: The Most Loved Docker Articles, Blogs and Tweets of 2019 Photo by NordWood Themes on Unsplash As this decade comes to a close, we are rounding up some of your favorite content from 2019. Catch up on anything you missed and get ready for a lot more to come in 2020! Docker Captain Content Brian Christner did an analysis of VMware, Docker, and Kubernetes Google Trends and the results

                Year in Review: The Most Loved Docker Articles, Blogs and Tweets of 2019 | Docker
              • GitHub - claytongulick/bit-sync: Bit-sync is a utility for synchronizing arbitrary data using the rsync algorithm in pure js

                This is a simple utility to synchronize two pieces of data, the source and the destination, using the rsync algorithm. The reason you might want to use this utility rather than just copying the source to the destination is to save on bandwidth. The rsync algorithm is really clever about only sending the parts of the file that have changed, rather than the whole file. For small files, this isn't th

                  GitHub - claytongulick/bit-sync: Bit-sync is a utility for synchronizing arbitrary data using the rsync algorithm in pure js
                • socket.ioのv3で知らなかったこと

                  サーバーサイド 初期化 httpサーバーと共存方式、websocketサーバーだけのスタンドアロン方式、expressを使った方法 koaを使った方法、tsを用いる方法などちゃんとドキュメントに書かれてあった。 イベント socket.emitのほかに単純にsocket.send()をするだけで、messageイベントとして送信される。 // 送り手 socket.send('hello') // 受け手 socket.on('message', data => console.log(data)); // hello

                    socket.ioのv3で知らなかったこと
                  • How We Created a Realtime Patient Monitoring System With Go and Vue in 3 days

                    How We Created a Realtime Patient Monitoring System With Go and Vue in 3 days #A Pandemic started In the last November in 2019, we heard about the first case of unknown deadly diseases from China. Now everyone knows it as Covid-19 Now it seems to change our lives forever. The virus is deadly and it is highly contagious. Still, we know very little about it. I truly hope we will find some cure soon.

                      How We Created a Realtime Patient Monitoring System With Go and Vue in 3 days
                    • 【忘年会に向け】オールスター感謝祭的な四択クイズウェブシステムをNuxt.js+Socket.IOで実装してみた - Qiita

                      経緯 我がチームが忘年会の幹事に任命される まじろう「出し物、、、なんかします?」 先輩「オールスター感謝祭・・・」 一同「は?」 先輩「オールスター感謝祭!!」 ということで、即興でnuxtによる四択クイズウェブシステムを作ったお話です。 ソースはgithubに設置しました。 https://github.com/majirou/allstar また、開発にあたり以下の記事とソースを参考にさせていただきました。 オール◯ター感謝祭もどきアプリで社内イベントを乗り切る 私自身はVue派なので、Reactソースを眺めながら勉強になりました。 基盤となる技術 websocket Slackなどのチャット系サービスなどに使われている技術とのことで、 nodejsでは、socketioというライブラリを用います。 wiki からの引用ですが、メリットはありそうです。 従来の手法に比べると、新たなコ

                        【忘年会に向け】オールスター感謝祭的な四択クイズウェブシステムをNuxt.js+Socket.IOで実装してみた - Qiita
                      • Introducing "Implement DNS in a Weekend"

                        Hello! I’m excited to announce a project I’ve been working on for a long time: a free guide to implementing your own DNS resolver in a weekend. The whole thing is about 200 lines of Python, including implementing all of the binary DNS parsing from scratch. Here’s the link: This project is a fun way to learn: How to parse a binary network protocol like DNS How DNS works behind the scenes (what’s ac

                        • これからWebSocketを導入しようと考える前に読んでほしい

                          こんにちはハトです。業務でwebアプリにWebSocketを導入し、半年たったので知見を共有したいと思います。間違ったことを言っている可能性がありますご了承ください(指摘などwelcomeです) ぶっちゃけリアルタイム通信ってそこまで必要ない 後述しますが、WebSocketを導入すると同時に複雑さも入り込みます。WebSocketは必要ないのであれば入れないほうが良いと思います。自身のサービスの要件を考えたときにリアルタイム通信が本当に必要なのかどうか考えましょう。 WebSocketを導入するとスケールアウト時に、クライアントが接続しているサーバー間をまたぐ通信にRedisなどを導入する必要があります。 WebSocketとsocket.ioの違い 最新のブラウザはWebSocket通信に対応しています。しかしWebSocketについて調べると有名なsocket.ioというライブラリが

                            これからWebSocketを導入しようと考える前に読んでほしい
                          • Socket.IO を触ってみた - Qiita

                            Socket.IO とは WebSocket 通信を実装するための JavaScript ライブラリです WebSocket とはなんぞや、という記事は こちら 公式のチュートリアル に沿って「チャットアプリ」を作っていきます 細かいことはチュートリアルを見ればわかるので、ポイントだけ コネクションの確立 サーバ側 var app = require('express')(); var http = require('http').createServer(app); // httpサーバーオブジェクトを渡して Socket.IO のインスタンスを初期化する var io = require('socket.io')(http); // 中略 // コネクションが確立すると呼ばれる io.on('connection', (socket) => { console.log('a user

                              Socket.IO を触ってみた - Qiita
                            • React+Socket.ioの画面からCelery経由でPythonプログラムを呼び出すやつ - Qiita

                              Pythonプログラム Windows環境だと -P solo を付けないと動かないので注意。あと、CeleryはWindowsを正式にはサポートしていないので、あくまでもテスト用とすること。 どこが素晴らしいのか Node.jsのサーバーからPythonプログラムを非同期で呼ぶようにすることで、Flask-SocketIOでゴリゴリ書くよりもシンプルかつコンパクトになる。たとえば、Pythonで書かれた機械学習のプログラムを呼び出したりなんかしても面白い。というか、まさにそれ用に作った。 その他 テスト用にRedisを無料で使いたい場合 RedisLabsで無料版あり。クレジットカードの登録等も不要。

                                React+Socket.ioの画面からCelery経由でPythonプログラムを呼び出すやつ - Qiita
                              • とほほのWebSocket入門 - とほほのWWW入門

                                WebSocket はサーバ・クライアント間で双方向の非同期通信を実現する技術です。 通常の HTTP/HTTPS では通常はクライアントからサーバに要求して応答を得るのみで、サーバからクライアントに非同期に通信するには、Server push、Long polling, Comet などを用いて疑似的に実現していましたが、いずれも短所がありました。WebSocket はこれらの短所を補う目的で開発されました。 HTTP/HTTPS とは厳密には異なるプロトコルですが、既存の HTTP/HTTPS プロキシやロードバランサ等を経由して動作するように設計されています。 Webチャットで誰かが書き込みを行った際に即座にクライアントに通知したり、Webコンソール機能など、サーバからクライアントにデータをプッシュする技術のひとつとして利用されています。 URLスキーマとして ws:// または、暗

                                • Introduction to Story-Driven Development with Nuxt Stories

                                  Develop at the Speed of Thought! You want your ideas to come to life as you think of them. The instant you write down those ideas, you demand instant gratification from instant functionality. nuxt-stories is a module that you can use to rapidly write stories, game-plans, notes, documentation, whatever for your Nuxt web application. Actually, if you think about it, even your collection of stories c

                                    Introduction to Story-Driven Development with Nuxt Stories
                                  • GitHub - cyco130/vavite: Develop server-side applications with Vite

                                    All examples have "type": "module" in their package.json. For Vite v2, remove it to use CommonJS (CJS). If you want to use CommonJS with Vite v3+, add legacy.buildSsrCjsExternalHeuristics: true to your Vite config. simple-standalone: Simple standalone example (Stackblitz) express: Integrating with Express (Stackblitz) koa: Integrating with Koa (Stackblitz) fastify: Integrating with Fastify (Stackb

                                      GitHub - cyco130/vavite: Develop server-side applications with Vite
                                    • Lessons from Building Node Apps in Docker (2019)

                                      Update (2019-10-10): This post was discussed on Hacker News. Way back in 2016, I wrote Lessons from Building a Node App in Docker, which has now helped over a hundred thousand people Dockerize their node.js apps. Since then there have been many changes, both in the ecosystem and how I work with node in Docker, so it was due for an overhaul. In this updated tutorial, we’ll set up the socket.io chat

                                        Lessons from Building Node Apps in Docker (2019)
                                      • 非エンジニアでもわかるSNSアプリの作り方 | 株式会社entershare(エンターシェア)

                                        サルでもバカでも小学生でもわかるようにSNSの作り方を解説したいと思います。 SNSとタイトルに入れましたが、SNSに限らず一般的なウェブサービスなら考え方は全く同じです。 非エンジニア向けにSNSやウェブサービスがどうやって作られているのかを書いているので、具体的なプログラミングの話ではなく概念的な話が中心です。ギークの方はQiitaでも見ておいて下さい(^_^;) そもそもウェブサイトはどのように作られるのかを理解するSNSをどうやって作るのかを理解する前にそもそもウェブサイトがなぜ見れるのかを理解しないといけません。 みんながいつも見てるウェブサイトはどういう仕組で見れるのか?小さなお店のホームページとFacebookとは何が違うのか? そもそものところから理解しましょう。 ウェブサイトはネット上に公開されているhtml文章基本的にはウェブサイトはインターネット上に公開されいる、サー

                                          非エンジニアでもわかるSNSアプリの作り方 | 株式会社entershare(エンターシェア)
                                        • 結局WebSocketってなに? - Qiita

                                          背景 YouTube Live Streaming APIを用いたライブ配信機能を実装する時に、WebSocket通信(Socket.IOというライブラリを使いました)を用いて実装したのですが、実装中に、 「そもそもWebSocketとは?」 と何回も原点回帰を繰り返しては、頭の中がかなり混乱していたので、その経験を踏まえて、WebSocketについて簡潔にまとめようと思い記事にしました。 ズバリWebSocketとは? 簡潔にいうと、Webアプリケーションを作成する際に使用される通信プロトコルです。 WebSocketを使用すると、WebブラウザとWebサーバー間で双方向通信を行う事ができ、ライブチャットやオンラインゲームなど、リアルタイム性の高いアプリケーションを作成することができます。 通信プロトコルってなんだっけ? 通信プロトコルとは、通信を行うための規則や手順のことです。 通信す

                                            結局WebSocketってなに? - Qiita
                                          • James Shore: Testing Without Mocks: A Pattern Language

                                            Automated tests are important. Without them, programmers waste a huge amount of time manually checking and fixing their code. Unfortunately, many automated tests also waste a huge amount of time. The easy, obvious way to write tests is to make broad tests that are automated versions of manual tests. But they’re flaky and slow. Folks in the know use mocks and spies (I say “mocks” for short in this

                                            • Nuxt3でwebsocketを使う | デバッグライフ

                                              Nuxt3のリリースを見ると、SummerからAutumnになっていましたね。リリースが待ち遠しい。。 さて、Nuxt3でwebsocketを使うにはどうするかを調べていたところ、Nuxt2とは少し異なるようでした。本記事では、Nuxt3でwebsockt(今回はsocket.io)を使う方法について書きます。 注:記事作成時点ではRC版で開発も活発なため(githubにもwebsocktについてのissueがある)内容は変わる可能性がありますのでご注意ください。

                                                Nuxt3でwebsocketを使う | デバッグライフ
                                              • ストリームの手引き | gulp 日本語リファレンス | js STUDIO

                                                このドキュメントはストリームを使用したnode.jsプログラムの基本的な書き方の手引書になります。 翻訳元の記事はgulpのドキュメントからリンクされていたGitHub上のsubstack氏のstream-handbookであり、 あくまでgulpをはじめとしたタスクランナーの内部処理で重要な役割を果たすファイル・ストリームについて書かれた手引書(handbook)であり、 gulpのドキュメントの一部というわけではありません。 写本 イントロダクション 何故ストリームを使用するべきなのか 基本 組み込みストリーム 制御ストリーム メタストリーム ステートストリーム HTTPストリーム IOストリーム パーサーストリーム ブラウザストリーム HTMLストリーム オーディオストリーム RPCストリーム テストストリーム パワーコンボ 写本 この手引書は、次のようにnpmのコマンドを実行するこ

                                                • 高校生がリアルタイム言語変換のサービスを作ってGithubにPushしてみた。 - Qiita

                                                  高校生でプログラミングが好きなレオです!! 今回はリアルタイムで言語変換できるサービスを作ったので、 紹介とどのように作ったのか少し説明したいと思います。 ※この記事は、Node.jsとPython,Socket.ioを使える前提で話を進めていきます。 1. アイディア アイディアはWeChatの翻訳機能を使っていた時に思いつきました。 僕が中国でお買い物をする際に店員さんと、WeChatを使って会話をすることがあるのですが、リアルタイムではなく、毎度翻訳をかけないと行けなかったので、リアルタイムで翻訳できて、友達交換もしなくていいサービスを作ろう!と思ったのがきっかけです。 2. 使用した言語と技術 使用したプログラミング言語はNode.jsとPythonです。 主にNode.jsを使っていて、Node.js上でSocket.ioなどの通信部分やテンプレート(EJS)を表示しています。

                                                    高校生がリアルタイム言語変換のサービスを作ってGithubにPushしてみた。 - Qiita
                                                  • 【swift】swift+node.jsでWebSocket - Qiita

                                                    WebSocketとは... 双方向通信を低コストで行うための仕組みのこと 平たく言えばチャットとか、常に通信が開いたままの状態でサーバとやりとりするような通信方式の事 ws://とwss://という通信スキーマを使っている。httpとhttpsのようなもの wsの挙動としては、まずhttpでハンドシェイクを行い、その後にwsにプロトコルを変更して通信する流れ もっと詳しくは以下の記事を参照 https://qiita.com/chihiro/items/9d280704c6eff8603389 利用するライブラリ StarscreamやSwiftWebSocket、Socket.io-client-swift 等色々ある サーバ側がnode.jsの場合、基本的にSocketIOを使う模様 そのため、node.jsとのやりとりが簡単にできるSocket.io-client-swiftを使う

                                                      【swift】swift+node.jsでWebSocket - Qiita
                                                    • SORACOMで構成できるネットワークとNAT越えのさまざま - 工場長のブログ

                                                      この記事では、SORACOM Air for セルラーやSORACOM Arcで接続されたデバイスとクラウドアプリケーションの間の通信について考えてみます。 なお、わたしはこれを書いている2021/12/16現在、株式会社ソラコムで働いていますが、この記事内に出てくるソラコムの仕様についてはすべて外部から観測可能な話に基づいて書いています(のはず)。 ちなみにこの記事は株式会社ソラコム Advent Calendar 2021の19日目の記事です。 デバイスとクラウドの通信にはどんなものがある? IoTアプリケーションにおける通信のユースケースとしては以下のようなものがあげられます。また、これらを組み合わせたアプリケーションも考えられるでしょう。 テレメトリ デバイスからクラウドに対してデータを送信する。スマートメーターのように数時間おきから数日おきに長いインターバルで定期送信するもの、ロ

                                                        SORACOMで構成できるネットワークとNAT越えのさまざま - 工場長のブログ
                                                      • slack event api の設定 - SO Technologies 開発者ブログ

                                                        こんにちは、こんばんは医師崎です。 業務でslack event apiを使ったのでその時に設定した事などをまとめます。 slack event api とは EventAPIは、Slack内で起きたイベントをトリガーに、発生した内容をApp指定のURLに送る仕組みです。インターネット経由でコールバックを受ける仕組みです。Slackが送信元になり、HTTPSで待ち受ける形式です。 slack appの設定 まずは Slack API: Applications | Slack にアクセスし、Create New Appからslack appを作成します。 slack appの権限設定 左側のメニューからOAuth & Permissionsをクリックし、Bot Token ScopesのAdd an OAuth Scopeをクリックし、必要な権限のScopeを追加します。 scopeはap

                                                          slack event api の設定 - SO Technologies 開発者ブログ
                                                        • WebRTCをかじってみた2020春 - はてだBlog(仮称)

                                                          そろそろ私なんかでも日曜大工で遊べそうな雰囲気が漂ってきたWebRTCでの画面共有アプリを習作してみました、という例です。 なお、各種ソフトのバージョンはあえて割愛しますが、2020年5月2日に確認した内容の記事となりますので、そのような鮮度だとご承知ください。 シグナリングサーバとWebサイト部分は、node.jsで実現しています。(下記は資材の一覧です。live.puは無視してください。) 実行イメージです。 Socket.IOを使っているのですが、Socket.IOのチュートリアルのリアルタイムテキストチャットを改変(?)したミニチャット付きです。 このミニチャット部分は「シグナリング」のやりとりの簡易ログも兼ねています。 (1) WebRTCについて 要素技術・関連記述についてのリンク(WebRTC、getUserMedia、 Socket.IO(WebSocket) ) 利用ソフ

                                                            WebRTCをかじってみた2020春 - はてだBlog(仮称)
                                                          • npm-scriptsで脱Gulpを目指す

                                                            脱create-react-appをするとcssコンパイル導入もしやすくなります。 しかし自動コンパイルをするには自分で設定する必要があるので、 タスクランナーの設定をしていきます。 Gulpを使ってもいいのですが、せっかくなので脱Gulpもしてしまいましょう。 npm-srciptsをタスクランナーにする 早速使いたいという方はこの項目を飛ばして2から読み始めてください。 最初にnpm-scriptsについて少し説明すると、package.jsonに記述している「scripts」の部分です。 ファイルの保存がされたらそのスクリプトを実行させることでGulpのような タスクランナーとして扱う感じですね。 Reactを使わない場合はpug / postcss / es6 の変更を監視して 変更があったらそれぞれを再コンパイルしてリロードするといった形をとっていました。 今回はcreate-r

                                                              npm-scriptsで脱Gulpを目指す
                                                            • オンライン対戦ゲームを作る ( Node.js + Socket.io )

                                                              Node.js と Socket.io を用いて、オンライン対戦ゲームを作成する方法を解説します。 ゲームとしては、戦車対戦ゲームを作ります。 使用開発環境は、以下です。 Node.js : version 8.12.0 Express : version 4.16.4 Socket.io : version 2.2.0

                                                              • A Brief History of API: RPC, REST, GraphQL, tRPC

                                                                Background Last week I joined an event about GraphQL VS TRPC discussion hosted by Guild in London. The creator of tPRC Alex and urql GraphQL core team member Phil(urql is a highly customisable and versatile GraphQL client for Javascript and its frameworks) had a fantastic discussion about each camp's general usage and problem. You can watch the whole discussion below: A little surprise to me is th

                                                                  A Brief History of API: RPC, REST, GraphQL, tRPC
                                                                • 二画面ファイラーを作った。 - Qiita

                                                                  15 年以上前、まだ Windows ユーザーだったころ、二画面ファイラーを使っていました。 ファイラーとは、コピーや移動、リネームなど一連のファイル操作を行うソフトウェアのことで、いわゆるファイルマネージャー、Mac で言うところの Finder、Windows での Explorer にあたります。検索しても出てこないので、この文脈でのファイラーという単語の使い方はもしかしたら日本独特なのかもしれません。 二画面ファイラーは左右二画面を同時表示してファイル操作するという強い特徴があり、使い方によっては業務効率をかなり上げることができます。私が使っていたのは あふ というソフトウェアで、その世界では知らぬ者はいない定番のファイラーでした。久しぶりに調べたところまだ健在のようですごく嬉しいです。 以下はコンソールで動かす二画面ファイラー Midnight Commander のスクリーンシ

                                                                    二画面ファイラーを作った。 - Qiita
                                                                  • yarnでパッケージをアップデートするときに注意すること - Qiita

                                                                    手順 yarn outdatedでversionを確認する yarn upgrade-interacitve --latest でパッケージを更新する。 手順としては上記2点だけで更新できるが きちんと理解していないと躓くので、それぞれをきちんと理解する。 yarn outdated 古いパッケージの依存関係があるかをチェックします。 https://yarnpkg.com/lang/ja/docs/cli/outdated/ Package Current Wanted Latest Package Type URL lodash 4.15.0 4.15.0 4.16.4 devDependencies https://github.com/lodash/lodash#readme underscore 1.6.0 1.6.0 1.8.3 dependencies https://git

                                                                      yarnでパッケージをアップデートするときに注意すること - Qiita
                                                                    • Client API | Socket.IO

                                                                      io.protocol​<number>The protocol revision number (currently: 5). The protocol defines the format of the packets exchanged between the client and the server. Both the client and the server must use the same revision in order to understand each other. You can find more information here. io([url][, options])​url <string> (defaults to window.location.host)options <Object>forceNew <boolean> whether to

                                                                      • Node.jsのsokect.ioを使ってのPUSH通知を作ってみた - Qiita

                                                                        こんにちは、wattak です。 50の手習いで Web アプリを作ってみよう、と色々と調べておりまして、自分の備忘録もかねて作ってみた実装をこちらに投稿しようと思います。 今回のプログラム 任意のタイミングでサーバーからクライアントへ PUSH する仕組みを持つ環境を Node.js を使って構築してみました。 なお PUSH の仕組みは記事のタグにも記載しましたが socket.io の仕組みを使っております。 処理概要 以下のようなイメージで構築しようと考えております。 1.クライアントから接続要求 2.サーバーにてクライアント情報を追加 3.クライアントから受付要求 4.サーバーにて登録処理して応答 5.以後、任意のタイミングでサーバーからクライアントへ PUSH 通知 「任意のタイミング」については PUSH 用に RestAPI を用意し API コールのタイミングで通知を行う

                                                                          Node.jsのsokect.ioを使ってのPUSH通知を作ってみた - Qiita
                                                                        • 【Next】Next.js + SocketIO で簡単なチャットアプリを作る - 7839

                                                                          今回は、SocketIO を用いた簡単なチャットアプリを作ってみたので、紹介する。 Next.js + Socket通信の実装 サーバーサイド フロントエンド Material-UI で簡単にUI構成 まとめ なお、実装したサンプルコードは GitHub に公開している。 Docker でコンテナを起動するだけで、サンプルプログラムの動作確認ができるようにしているので、どうぞ。 github.com Next.js + Socket通信の実装 サーバーサイド 今回は、Next.js をベースとしている。Next.js のカスタムサーバーとして、Express を用いており、サーバー側で注意すべきは以下の部分ではないかと思う。 const httpServer = server.listen(port, (err?: any) => { if (err) throw err console.

                                                                            【Next】Next.js + SocketIO で簡単なチャットアプリを作る - 7839
                                                                          • [Nodejs] Socket.IOのバージョン違いによる注意点

                                                                            開発環境、テスト環境、ステージング環境、本番環境・・・その他にも沢山のプログラムの実行環境が存在しますが、全てを設ける必要はないのですが、開発環境と本番環境の2つぐらいは最低設けていると思います。 そんな環境を全て同一に保つというのもなかなかの運用コストの掛かる作業になるのですが、dockerのコンテナをうまく使って同一環境にするという手もありますが、本番環境において、特定のサーバーホスティング環境を使わざるを得ない時に、dockerコンテナが適用できないケースもあります。 そんな時に、バージョンによる挙動の違いを把握していないと、無駄な調査時間に時間を取られるということはすくなくありません。 今回はポーリング処理において、NodejsのSocketIOは非常に高品位なスペックを持っていると、色々なサーバーエンジニアから聞くことが多いので、PythonやRubyではなく、Nodejsを使う

                                                                              [Nodejs] Socket.IOのバージョン違いによる注意点
                                                                            • WebRTCでビデオチャット

                                                                              (※過去のブログ記事をZennにアップしています。) PeerJS(WebRTC)でP2Pで繋いだビデオチャットを、Socket.io(WebSocket)で管理して、複数人でのビデオ会議を実装します。 WebRTCとは WebRTCとは、「Web Real-Time Communication」の称で、ウェブブラウザでリアルタイム通信を実現する技術です。ウェブページ内で直接、P2P(ピア・ツー・ピア)通信を行うことによって、プラグインのインストールやネイティブアプリをダウンロードを行わなくても、ウェブブラウザ間のボイスチャット、ビデオチャット、ファイル共有などを実装できるようになります。 今回は、このWebRTCを使って、ビデオチャットを実装します。 ▼ 今回作ったサンプル ※1台のPCの同じカメラでブラウザを4つ立ち上げてます。 PeerJSを使ってP2P通信 P2Pは、ネットワーク上

                                                                                WebRTCでビデオチャット
                                                                              • 【Node.js】EventEmitterとは何?いつ使うの? | 謎の技術研究部

                                                                                よく見かける「.on」 「.on」というメソッド。Node.jsならfsやSocket.ioで本当によく見かけるメソッドだ。 Node.jsでは**「event-driven architecture」**と呼ばれている概念。 EventEmitterというクラスからきているが、おそらく殆どの初心者は「なんとなくそういうものだ」として使っているのではないだろうか。 これは「イベントを発火する(emit)」と「対応したイベントの処理をする(on)」というシンプルなものだがそもそもなんでそんな面倒なことが必要なのだろうかというところにスポットライトを当ててみる。 前提 ここからはES6の構文で書いていく。拡張子は.mjs また、この記事は少しむずかしい内容なので上から順番に読みすすめることを前提に書いている。 長くはなるがわかりやすくなるよう順を追っているので頑張ってみて欲しい。 まずはEve

                                                                                  【Node.js】EventEmitterとは何?いつ使うの? | 謎の技術研究部
                                                                                • Scalable WebSockets with NestJS and Redis - LogRocket Blog

                                                                                  When working on a relatively young application, people often tend to disregard the need for scalability in order to implement features quicker. However, I believe that even at the earliest stages of a project, it is crucial to ensure our code is as scalable as possible. Recently, as I was working on a project, I was faced with a challenge to add WebSockets to a NestJS application. While a relative

                                                                                    Scalable WebSockets with NestJS and Redis - LogRocket Blog