並び順

ブックマーク数

期間指定

  • から
  • まで

81 - 120 件 / 1880件

新着順 人気順

non-blockingの検索結果81 - 120 件 / 1880件

  • The Architecture of Open Source Applications (Volume 2)nginx

    The Architecture of Open Source Applications (Volume 2) nginx Andrew Alexeev nginx (pronounced "engine x") is a free open source web server written by Igor Sysoev, a Russian software engineer. Since its public launch in 2004, nginx has focused on high performance, high concurrency and low memory usage. Additional features on top of the web server functionality, like load balancing, caching, access

    • MySQLのslow_logは何を計測して出力されるのか - tom__bo’s Blog

      slow logの時間は何を計測しているのか? きっかけ とあるMySQLインスタンスで1Gbのネットワーク帯域を使い切ってレスポンスタイムが悪化していたという話を聞いた。 確かに遅いがlong_query_timeを小さくしてもslow_logは特に出ていなかったため、どのクエリが問題なのかを特定しづらかったらしい。 これを聞いたときはRedisとかインメモリのDBならまだしもMySQLがストレージより先に1GbのNICを使い切ることがあるのかーと驚いた。まあ、100GB以上のメモリも珍しくないので、ほとんどメモリから結果を返していれば1Gb/s以上返すことは難しくなさそうではある。 だが、long_query_timeを小さくしてもslow_logにクエリが出力されなかったという部分は気になった。 具体的にlong_query_timeがどれくらいなのか、同時接続数はどれくらいでQPS

        MySQLのslow_logは何を計測して出力されるのか - tom__bo’s Blog
      • runtime.js – JavaScript library operating system for the cloud

        Overview runtime.js is an open-source library operating system (unikernel) for the cloud that runs JavaScript, can be bundled up with an application and deployed as a lightweight and immutable VM image. It's built on V8 JavaScript engine and uses event-driven and non-blocking I/O model inspired by Node.js. At the moment KVM is the only supported hypervisor. It tries to be compatible with npm modul

        • Refactoring Ruby with Monads

          Contents Introduction Stacks Collections Abstract data types Refactoring Handling nil Multiple results Asynchronous code Monads Conclusion Introduction Hello! I’m going to tell you about monads, and how we can uncover them by refactoring our Ruby code. The ideas in this article might be unfamiliar, so before we get stuck into the details, let’s warm our brains up with something simple. People alwa

          • Safari 11.1

            Safari 11.1Safari 11.1 ships with iOS 11.3 and macOS 10.13.4. It is also available for macOS 10.12.6 and 10.11.6. Highlights of Safari 11.1Service Workers. Implement background scripts for offline web applications and faster web pages. Payment Request. Provide a consistent user payment experience in Safari using a standards-based API. Security Improvements. Improved protection against memory corru

            • JavaScriptとイベントループ | NHN Cloud Meetup

              JavaScriptの大きな特徴の1つは、「シングルスレッド」基盤の言語だという点です。スレッドが1つということは、同時に1つの作業だけを処理できるということです。しかし、実際にJavaScriptが使われる環境を考えてみると、多くの作業が同時に処理されていることが分かります。例えば、Webブラウザは、アニメーション効果を見せながら、マウスの入力を受けて処理をし、Node.js基盤のWebサーバーでは、同時に複数のHTTPリクエストを処理したりします。スレッドが1つなのに、どうしてこのようなことができるのでしょうか?質問を変えると、「JavaScriptはどのように同時実行(Concurrency)をサポートしているのでしょうか?」 このとき登場する概念が「イベントループ」です。Node.jsを導入した際、イベントループ基盤の非同期方式でNon-Blocking IOに対応して…」のような

                JavaScriptとイベントループ | NHN Cloud Meetup
              • Redis Cluster のリシャーディングとorphaned masterの話 - CyberAgent エンジニア Advent Calendar 2014 2日目

                redis_cluster.md Redis Cluster のリシャーディングとorphaned masterの話 (2019/04 追記 こちらの情報は非常に古く、またRC版での結果となります。記録として残していますが参考になさらないでください) CyberAgent エンジニア Advent Calendar 2014 2日目です。 昨日に引き続き、秋葉原ラボの柿島が担当します。仕事ではHadoopクラスタの運用を中心に、秋葉原ラボのインフラ/ミドルウェアまわりを担当しています。今年はHadoop、mesos、Aerospikeと分散型のシステムを触る機会が多い1年でした。 この記事のテーマはRedis Clusterです。Redis Clusterが使えるようになるRedis 3.0.0は10月にRC1がリリースされました。2015年のQ1にstableリリースを目指しているようで

                  Redis Cluster のリシャーディングとorphaned masterの話 - CyberAgent エンジニア Advent Calendar 2014 2日目
                • python flaskねた - holly's wiki

                  holly's wiki hollyさんのwiki トップページページ一覧メンバー掲示板編集 python flaskねた 最終更新: kurt0027 2011年05月21日(土) 23:57:02履歴 Tweet ちょっとしたWEBアプリを作りたい時に便利そうなフレームワーク。いろいろあるようだが、とりあえずこれを試してみることにしてみた。これが理解できるようになってからメガフレームワーク系に進もう。 http://flask.pocoo.org/ 公式サイト http://flask.pocoo.org/docs/api/ メソッドの使い方などはこのあたり http://werkzeug.pocoo.org/docs/ よくこのパッケージの機能もでてくるので見てみること http://flask.pocoo.org/snippets/ tips的な インストール pipを使うことにす

                    python flaskねた - holly's wiki
                  • redisのmaster-slave構成で考えるべきことの話 - diary

                    結論 Redisは2.6を使おう master-slave構成を取る場合はclient-output-buffer-limitをちゃんと意識するべき 概要 redisはエッジトリガ型のnon-blocking I/Oを用いてシングルスレッドでソケットの読み書きをぶん回す構造で書かれています。 よってclientやslaveへ対してのreplyを行う際も、ソケット自体の送信バッファが溢れた際(EAGAINが帰った際)には一度イベントループに処理を戻し、またソケットが書き込み可能になってイベントループが自分を呼んでくれた時に続きをwriteします。 まあnon-blocking I/Oなんだから当たり前なんですが、送信処理を再入可能にするためにredisはアプリケーションレベルで出力バッファを持っています。 これは送信が終わり次第適宜解放されるものの、write自体が間に合わなくなると詰まって

                      redisのmaster-slave構成で考えるべきことの話 - diary
                    • Go for Rubyists — SitePoint

                      The great folks over at Google have developed an awesome language called Go. At first glance, it seems like Ruby and Go are distant cousins, at best. However, their complementary skill sets provide a perfect match. It is definitely worth any Rubyist’s time to take a look at Go as some of the innovations it brings to the table are quite enticing. For me, Go was the missing link between C++ and Ruby

                        Go for Rubyists — SitePoint
                      • WebSocketについて調べてみた。 - Nao Minami's Blog

                        実はけっこう前からWebSocketの詳しい仕組みについて気になってて、遂に一念発起して調べてみた。何かとても良さげっぽい。 そもそもWebSocketとは Webにおいて双方向通信を低コストで行う為の仕組み。インタラクティブなWebアプリケーションではサーバから任意のタイミングでクライアントに情報の送信とかしたい事があって、例えばFacebookのチャットアプリみたいに多数のクライアントが一つのページにアクセスしてて誰かがメッセージを投稿するとそれをその他のユーザーに通知したい場合があって、そういった時に双方向通信の必要性が出てくる。 元々はWebにおいてはHTTPしか通信の選択肢が無くてHTTPのロングポーリング使って無理矢理双方向通信実現したりしてたんだけど、流石に無駄が多すぎるし辛いよねって事でWebSocketというプロトコルが作られた。 WebSocketにおいては、TCP上で

                          WebSocketについて調べてみた。 - Nao Minami's Blog
                        • GitHub - bregman-arie/devops-exercises: Linux, Jenkins, AWS, SRE, Prometheus, Docker, Python, Ansible, Git, Kubernetes, Terraform, OpenStack, SQL, NoSQL, Azure, GCP, DNS, Elastic, Network, Virtualization. DevOps Interview Questions

                          In general, what do you need in order to communicate? A common language (for the two ends to understand) A way to address who you want to communicate with A Connection (so the content of the communication can reach the recipients) What is TCP/IP? A set of protocols that define how two or more devices can communicate with each other. To learn more about TCP/IP, read here What is Ethernet? Ethernet

                            GitHub - bregman-arie/devops-exercises: Linux, Jenkins, AWS, SRE, Prometheus, Docker, Python, Ansible, Git, Kubernetes, Terraform, OpenStack, SQL, NoSQL, Azure, GCP, DNS, Elastic, Network, Virtualization. DevOps Interview Questions
                          • Choose the Right Python Concurrency API - Super Fast Python

                            How to Choose the Right Python Concurrency API Python standard library offers 3 concurrency APIs. How do you know which API to use in your project? In this tutorial, you will discover a helpful step-by-step procedure and helpful questions to guide you to the most appropriate concurrency API. After reading this guide, you will also know how to choose the right Python concurrency API for current and

                              Choose the Right Python Concurrency API - Super Fast Python
                            • Asynchronous PHP and Real-time Messaging

                              The document discusses asynchronous programming in PHP using non-blocking I/O and event loops. It covers using asynchronous techniques like ReactPHP to scrape web pages concurrently without blocking. Promises and streams are also discussed as ways to handle asynchronous operations and pass data between components. Finally, messaging techniques like websockets and WAMP are presented as ways to buil

                                Asynchronous PHP and Real-time Messaging
                              • Rust Advent Calendar 2019 1日目 Rust の非同期プログラミングモデルはランタイム観点だと Go のそれに似ている - keno_ssの日記

                                この記事は Rust Advent Calendar 2019 の1日目の記事になります. 明日は topecongiro さんの予定です. TL;DR 去る 11/07 に Rust 1.39.0 がリリースされました. これはユーザー待望の async/await 構文が言語機能として取り込まれた安定版リリースとなります. Advent Calendar 最初の記事としては取り上げないわけにはいきません. もう既に他の良い記事がたくさん書かれていますが, この記事ではそれらを補完する視点から説明してみようと思います. Rust と非同期 IO の歴史 κeenのHappy Hacκing Blog -- async/awaitと合成可能性 async/await の実装と利便性のバランスの良さについて. κeenのHappy Hacκing Blog -- RustのFutureとその

                                  Rust Advent Calendar 2019 1日目 Rust の非同期プログラミングモデルはランタイム観点だと Go のそれに似ている - keno_ssの日記
                                • High availability with Redis Sentinel

                                  High availability for non-clustered Redis Redis Sentinel provides high availability for Redis when not using Redis Cluster. Redis Sentinel also provides other collateral tasks such as monitoring, notifications and acts as a configuration provider for clients. This is the full list of Sentinel capabilities at a macroscopic level (i.e. the big picture): Monitoring. Sentinel constantly checks if your

                                  • MongoDB 4.0: Non-Blocking Secondary Reads | MongoDB

                                    General InformationDocumentationDeveloper Articles & TopicsCommunity ForumsBlogUniversity

                                      MongoDB 4.0: Non-Blocking Secondary Reads | MongoDB
                                    • Kernel Queue: The Complete Guide On The Most Essential Technology For High-Performance I/O

                                      Kernel Queue: The Complete Guide On The Most Essential Technology For High-Performance I/O When talking about high-performance software we probably think of server software (such as nginx) which processes millions requests from thousands clients in parallel. Surely, what makes server software work so fast is high-end CPU running with huge amount of memory and a very fast network link. But even the

                                        Kernel Queue: The Complete Guide On The Most Essential Technology For High-Performance I/O
                                      • 入門Kotlin coroutines - Qiita

                                        前書き coroutineはKotlin 1.1から搭載された新機能ですが、まだexperimentalなこともあってバリバリ使っている人は多くないと思われます。しかしながら、experimentalとはいえproduction readyなことは宣言されており、Kotlin 1.3ではexperimentalが外れる(予定の)ため、そろそろ学んでおいても悪くない時期になってきています。 そこで、この記事ではcoroutineを実践するにあたって抑えておくと役立つ知見を共有します。ご参考になれば幸いです! 注: この記事はKotlin 1.2.21, kotlinx.coroutines 0.22.5に基づいて書かれています。 coroutineとは何であって何でないのか coroutineとは何か coroutineとは何かを一言で表現すると、「中断可能な計算インスタンス」になります。こ

                                          入門Kotlin coroutines - Qiita
                                        • Testing Microservices, the sane way

                                          Author’s Note: Thanks, as ever, to Fred Hebert, for reading a draft of this post and making some sterling suggestions. This is the first installment in my series on testing distributed systems. The posts in this series are the following: Testing Microservices, the sane way (published December 2017) Testing in Production, the safe way (published March 2018) Testing in Production: the hard parts (pu

                                            Testing Microservices, the sane way
                                          • 非同期I/O Linux

                                            非同期I/O 概説 Introduction to Asynchronous I/O AIO, I/O Multiplexing… 2007年8月6日 KLab 株式会社 Kラボラトリー 廣瀬 正明 Copyright © KLab Inc. All rights reserved. 今日の目的 非同期I/Oとは何かを知る 非同期I/Oを使うと何がうれしいのかを知る 非同期I/Oを実現する手段(複数)を知る Copyright © KLab Inc. All rights reserved. アジェンダ 非同期I/Oを使う理由 非同期I/Oとは? AIOの実装を紹介 AIOの使い方 落穂ひろい Copyright © KLab Inc. All rights reserved. アジェンダ 非同期I/Oを使う理由 非同期I/Oとは? AIOの実装を紹介 AIOの使い方 落穂ひろ

                                            • 非同期I/O APIの設計がなかなか難しい - .mjtの日記復帰計画

                                              yuniで実用的なプログラムを書くためには、どうしても非同期I/Oライブラリが必要になる。というわけで黙々と設計しているけれど、これがなかなか難しい。 非同期I/Oライブラリの難しさ そもそもOS/処理系毎に別物が必要 "非同期I/Oライブラリなんてlibuv一択だろ"という意見も有るかもしれないし、実際、Node.jsはlibuvのデザインの実用性を証明しつづけていると言える(実際には逆で、Node.jsのOS抽象化レイヤとしてlibuvが実装されている)。が、libuvはカーネル機能の抽象化でしかなく、同じデザインがyuniに適用できるとは限らない。yuniは既にKawa(Java上のScheme実装)やIronScheme(.net上のScheme実装)をターゲットしているので、これらでも動作するような配慮が必要になる。 もし、yuniの非同期I/Oライブラリを単なるlibuvのバイ

                                                非同期I/O APIの設計がなかなか難しい - .mjtの日記復帰計画
                                              • Whispering Gophers

                                                Whispering Gophers Network programming in Go Andrew Gerrand Francesc Campoy Introduction This code lab demonstrates network programming with Go. The final goal is to build a "whispernet": a peer to peer mesh network for transmitting text messages. Design overview Pre-requisites You must have these tools installed and working: Go 1.1 (see golang.org/doc/install) Mercurial (see mercurial.selenic.com

                                                • Node.jsのためのasync必修パターン(1): 同期パターン

                                                  node.jsはnon-blocking処理を行うため、書き手の意図しない順序で処理が実行されることがあります。それでは困ることもあるため同期をとって処理を行うパターンについて書きます。例えばA、B、C、Dという処理があり、A、B、Cの3つが終わってからDが行われることを保証したい場合の必須のパターンです。 A、B、Cという3つの処理では、それぞれDBに問い合わせを行い、Dという処理では3つのDB問い合わせの結果を使って集計の処理を行いたいような場面を考えてみます。a(); b(); c(); d();上のように普通に書くと、node.jsでは折々の状況に応じてaからdまでの処理を非同期に実行します。dが一番最初に実行されるかもしれません。困ります。そこで、A、B、Cの3つの処理が3つとも完了した後にDが実行されるようにするパターンを書きます。// sync.js var wait = f

                                                  • Introduction to Service Worker: How to use Service Worker - HTML5 Rocks

                                                    Service workers essentially act as proxy servers that sit between web applications, the browser, and the network (when available). They are intended, among other things, to enable the creation of effective offline experiences, intercept network requests and take appropriate action based on whether the network is available, and update assets residing on the server. They will also allow access to pu

                                                      Introduction to Service Worker: How to use Service Worker - HTML5 Rocks
                                                    • Sensu | How Kubernetes works

                                                      August 8, 2019 // Jef Spaleta Sensu, Inc. This post walks you through how Kubernetes works, breaking down the individual components to illustrate how K8s helps you manage the lifecycle of containerized applications. DevOps It’s no secret that the popularity of running containerized applications has exploded over the past several years. Being able to iterate and release an application by provisioni

                                                      • The reasons I stopped using libuv for H2O

                                                        Libuv is a great cross-platform library that abstracts various types of I/O by using callbacks. So when I started writing H2O - a high-performance HTTP server / library implementation with support for HTTP1, HTTP2 and websocket, using libuv seemed like a good idea. But recently, I have stopped using it for sereval reasons. This blog post explains them. ■No Support for TLS Although libuv provides a

                                                          The reasons I stopped using libuv for H2O
                                                        • PIPEによるプロセス間通信とselect, poll, epollの話 - c-bata web

                                                          エキスパートPythonプログラミング 改訂2版 (アスキードワンゴ) 作者: Michal Jaworski,TarekZiade,稲田直哉,芝田将,渋川よしき,清水川貴之,森本哲也出版社/メーカー: ドワンゴ発売日: 2018/02/26メディア: Kindle版この商品を含むブログを見る 先日、 tokibito 先生(id:nullpobug)と勉強していたpipe, select, poll, epollあたりについてメモ。 os.fork os.fork : 子プロセス(child process)をつくれる。 import os a = 0 print(a) os.fork() a += 1 print(a) 子は親の複製。親のデータ、ヒープ、スタックの各空間の複製を取得。 メモリのこれらの部分は共有されないので、実行結果は次のようになる(テキストセグメントは共有される)。

                                                            PIPEによるプロセス間通信とselect, poll, epollの話 - c-bata web
                                                          • Go言語を簡単に調べてみた印象 - 空想クソ野郎日記

                                                            なぜに今Go言語? Node.jsからGo言語に切り替えたという記事を最近よく見かける気がします。Go言語ってGoogleが作った言語っていうくらいしか前提知識なかったのであまりピンと来てなかったんですが、下記のid:yosuke_furukawaさんの記事で最近ようやく興味を持ち始めました。 はてなブログに投稿しましたFarewell Node.js (翻訳) - from scratchURL 2014-07-06 09:46:24 via Hatena 記事はNode.js界隈で貢献の大きかったvisionmediaがNodeを捨てて、Goに切り替えて開発を行うと宣言したという内容です。ぼくはNode.jsも最近触り始めた程度なので記事に書かれているようなNode.jsならではの苦労についてはまだあまりピンと来てないところもあるのですが、確かにJavaScriptのエラーハンドリング

                                                            • Understanding node.js » Debuggable - Node.js Consulting

                                                              Node.js has generally caused two reactions in people I've introduced it to. Basically people either "got it" right away, or they ended up being very confused. If you have been in the second group so far, here is my attempt to explain node: It is a command line tool. You download a tarball, compile and install the source. It let's you run JavaScript programs by typing 'node my_app.js' in your termi

                                                              • オープンソースのグラフデータベース「Neo4j 4.0」正式版リリース。リアクティブアーキテクチャを新採用

                                                                オープンソースのグラフデータベース「Neo4j 4.0」正式版リリース。リアクティブアーキテクチャを新採用 オープンソースのグラフデータベースであるNeo4jの最新版「Neo4j Graph Database 4.0」正式版がリリースされました。 Introducing Neo4j Graph Database 4.0 [GA Release] – by @jimwebber, Chief Scientist @Neo4jhttps://t.co/X8csuFuEFC#GraphDatabase #Neo4j — Neo4j (@neo4j) February 4, 2020 一般に、リレーショナルデータベースではテーブルのあいだで関係が設定されますが、グラフデータベースではデータひとつひとつがほかのデータとの関係を持てます。 また、あるデータとデータとの関係において重要度や距離、評価、時

                                                                  オープンソースのグラフデータベース「Neo4j 4.0」正式版リリース。リアクティブアーキテクチャを新採用
                                                                • 急がば回れ、選ぶなら近道

                                                                  TsurugiとRSA 2023/12現在、Tsurugiは単ノード稼働の制約があるので、次のフェーズとして複数ノードでの稼働を目指しています。Tsurugiは直接の操作対象データのindex treeをメモリーにもつRDBであり、単ノードでのメモリー限界がパフォーマンス限界になります。複数ノードにまたがるメモリー・クラスターでの透過的な稼働をTsurugiの次の目標としています。想定されているアーキテクチャはRack Scale Architecture(以下RSA)になります。 RSAについては、まずこのポストがスタート地点。 https://okachimachiorz.hatenablog.com/entry/20151225/1451028992 これは2015年なので、8年前のエントリーになります。概ねコンセプトは変わっていません。(8年前は誰かがつくるだろうとおもっていたけど

                                                                    急がば回れ、選ぶなら近道
                                                                  • Nicholas Piël » Benchmark of Python Web Servers

                                                                    It has been a while since the Socket Benchmark of Asynchronous server. That benchmark looked specifically at the raw socket performance of various frameworks. Which was being benchmarked by doing a regular HTTP request against the TCP server. The server itself was dumb and did not actually understand the headers being send to it. In this benchmark i will be looking at how different WSGI servers pe

                                                                    • Loading CSS without blocking render

                                                                      This article demonstrates a technique to get content in front of visitors as quickly as possible by asynchronously downloading stylesheets to prevent them from blocking page render. Warning! I posted this with the best of intentions, but it would be irresponsible not to make readers aware of the following issues. Community feedback is coming in thick and fast (something I'm very grateful for) and

                                                                        Loading CSS without blocking render
                                                                      • 4 Reasons Why All PHP Frameworks Suck? - PHP Classes

                                                                        Top featured articles 33. How to Create a Simple PHP Custom CMS Tutorial in 2019 Way with PHP SEO Friendly URL Generated HTML Links34. PHP Multithreading using pthreads extension35. PHP security exploit with GIF images35. PHP in Arabic35. This article Author: Manuel Lemos Viewers: 1,357 Last month viewers: 536 Categories: PHP opinions Recently, Rasmus Lerdorf, the creator of PHP, stated in a PHP f

                                                                          4 Reasons Why All PHP Frameworks Suck? - PHP Classes
                                                                        • Introducing Proxygen, Facebook's C++ HTTP framework | Engineering Blog | Facebook Code | Facebook

                                                                          Introducing Proxygen, Facebook’s C++ HTTP framework We are excited to announce the release of Proxygen, a collection of C++ HTTP libraries, including an easy-to-use HTTP server. In addition to HTTP/1.1, Proxygen (rhymes with "oxygen") supports SPDY/3 and SPDY/3.1. We are also iterating and developing support for HTTP/2. Proxygen is not designed to replace Apache or nginx — those projects focus on

                                                                            Introducing Proxygen, Facebook's C++ HTTP framework | Engineering Blog | Facebook Code | Facebook
                                                                          • JavaScript for Cats

                                                                            JavaScript For Cats An introduction for new programmers So easy your human companion could do it too! JavaScript is a programming language or, in other words, a means by which a computer is instructed to do things. Just the same as one controls humans with hisses and meows, one controls computers with statements written in a programming language. All web browsers understand JavaScript and you can

                                                                            • GitHub - microsoft/FASTER: Fast persistent recoverable log and key-value store + cache, in C# and C++.

                                                                              Managing large application state easily, resiliently, and with high performance is one of the hardest problems in the cloud today. The FASTER project offers two artifacts to help tackle this problem. FASTER Log is a high-performance concurrent persistent recoverable log, iterator, and random reader library in C#. It supports very frequent commit operations at low latency, and can quickly saturate

                                                                                GitHub - microsoft/FASTER: Fast persistent recoverable log and key-value store + cache, in C# and C++.
                                                                              • OCaml備忘録

                                                                                基本的にlinuxベース。バージョンは大体3.07とか3.08ぐらい。よく分からない部分もとりあえず書いているので、多分間違い多数。徐々に追加とか修正とかする予定。今のところオブジェクトとモジュールのところの内容は空。 ツールの使い方 起動と終了の仕方 OCamlのインタプリタを起動させるにはシェルから次のように入力する。 [radio@taka radio]$ ocaml Objective Caml version 3.08.0 # 終了は # #quit;; と打ち込む。バイトコンパイルはシェルから [radio@taka radio]$ ocamlc hoge.ml -o hoge ネイティブコンパイルは [radio@taka radio]$ ocamlopt hoge.ml -o hoge とする。 また次のようにすると起動時にファイルを読み込むことができる [radio@ta

                                                                                • 【JavaScript】ビルドとは何か〜webpackを使ってビルドする - Qiita

                                                                                  この辺が曖昧だったので、書き残しておきます。 ビルドとは何か なぜビルドが必要か ビルドでは何を行なっているのか ビルドしたらどうなるのか Node.jsの特徴 JavaScriptをサーバーサイドで動かすための実行環境。 モジュール機能(他ファイルの読み込み) ノンブロッキングI/Oで処理を効率化 参考記事 ノンブロッキングI/O (non-blocking I/O) ノンブロッキングI/Oと非同期I/Oの違いを理解する Node.js を5分で大雑把に理解する Node.jsについて調べてみた JavaScriptが辿った変遷 npm とか bower とか一体何なんだよ!Javascript 界隈の文脈を理解しよう ビルドツール Node.jsスタイルのコードは、そのままの状態ではブラウザで動きません。ソースコードを元にして、実際に動くプログラム(実行可能ファイル)を作ってあげる必要

                                                                                    【JavaScript】ビルドとは何か〜webpackを使ってビルドする - Qiita