Meta tags:
Headings (most frequently used words):
edit, navigation, tools, node, js, contents, history, overview, releases, technical, details, project, governance, see, also, references, further, reading, external, links, menu, platform, architecture, industry, support, internals, threading, v8, package, management, unified, api, event, loop, webassembly, native, bindings, personal, namespaces, views, contribute, print, export, in, other, projects, languages,
Text of the page (most frequently used words):
node (172), the (150), and (88), retrieved (49), version (47), javascript (36), maintained (35), with (33), for (32), 2015 (29), old (29), longer (28), foundation (26), web (23), edit (22), end (20), that (20), from (18), such (18), server (17), code (17), nodejs (17), org (16), github (16), event (16), 2016 (16), 2014 (16), may (15), life (15), release (15), was (14), october (14), 2012 (14), september (14), 2013 (13), com (13), are (13), support (13), 2017 (12), dahl (12), side (12), january (12), 2018 (12), modules (12), loop (12), 2022 (11), visual (11), studio (11), microsoft (11), development (11), api (11), thread (11), november (10), typescript (10), applications (10), releases (10), environment (10), also (10), using (9), 2009 (9), npm (9), google (9), website (9), april (9), february (9), runtime (9), can (9), open (9), source (9), lts (9), wikipedia (8), 2019 (8), linux (8), ryan (8), 2021 (8), built (8), original (8), july (8), project (8), technical (8), december (8), which (8), system (8), developers (7), about (7), this (7), non (7), use (7), license (7), other (7), articles (7), package (7), express (7), platform (7), august (7), governance (7), threads (7), manager (7), new (7), engine (7), why (7), windows (7), ibm (7), servers (7), blocking (7), older (7), still (7), you (6), page (6), languages (6), projects (6), tools (6), community (6), current (6), software (6), joyent (6), libraries (6), php (6), frameworks (6), uses (6), has (6), june (6), archived (6), into (6), single (6), native (6), written (6), functions (6), maintenance (6), yet (6), available (5), under (5), file (5), related (5), help (5), main (5), march (5), webassembly (5), isbn (5), further (5), after (5), tsc (5), 2020 (5), connections (5), 2011 (5), based (5), long (5), supported (5), include (5), have (5), pool (5), 2023 (5), most (5), programming (5), commons (4), links (4), changes (4), events (4), not (4), identifiers (4), all (4), john (4), list (4), active (4), module (4), json (4), model (4), coffeescript (4), media (4), 978 (4), sams (4), running (4), working (4), groups (4), documentation (4), www (4), future (4), process (4), concurrent (4), date (4), webstorm (4), supports (4), merged (4), there (4), they (4), used (4), back (4), third (4), core (4), well (4), these (4), term (4), called (4), versions (4), even (4), operating (4), callback (4), driven (4), callbacks (4), when (4), browser (4), programs (4), packages (4), task (4), number (4), libuv (4), completion (4), unix (4), macos (4), months (4), only (4), others (4), language (4), http (4), openjs (4), policy (3), additional (3), wikimedia (3), inc (3), simple (3), wikidata (3), what (3), article (3), navigation (3), more (3), history (3), create (3), mit (3), free (3), https (3), commonjs (3), services (3), ide (3), devtools (3), library (3), client (3), mongodb (3), problem (3), wiley (3), sons (3), publishing (3), reilly (3), its (3), nodeclipse (3), infoworld (3), application (3), definitions (3), between (3), net (3), nonstop (3), via (3), everywhere (3), previous (3), features (3), merge (3), function (3), fork (3), schlueter (3), jsconf (3), developer (3), 2010 (3), need (3), venturebeat (3), sap (3), their (3), linkedin (3), created (3), due (3), committee (3), group (3), build (3), various (3), interface (3), way (3), sourced (3), functionality (3), processes (3), data (3), unified (3), management (3), execution (3), machine (3), without (3), multiple (3), tasks (3), execute (3), networking (3), asynchronous (3), threading (3), handle (3), network (3), cut (3), released (3), receives (3), latest (3), planned (3), stable (3), ides (3), many (3), architecture (3), commands (3), form (3), mobile (2), view (2), contact (2), privacy (2), terms (2), site (2), registered (2), organization (2), english (2), bahasa (2), link (2), pages (2), upload (2), here (2), contents (2), talk (2), categories (2), unsourced (2), statements (2), short (2), description (2), programmed (2), germany (2), testing (2), deno (2), comparison (2), engines (2), brackets (2), atom (2), cloud9 (2), inspector (2), edge (2), chrome (2), compiler (2), dart (2), clojurescript (2), lodash (2), next (2), sails (2), meteor (2), external (2), approach (2), twit (2), professional (2), teach (2), yourself (2), hours (2), reading (2), postgresql (2), pm2 (2), strongloop (2), blog (2), enide (2), eclipse (2), krill (2), paul (2), netbeans (2), definitelytyped (2), repository (2), type (2), some (2), popular (2), debugging (2), infrasoft (2), cluster (2), compile (2), nov (2), any (2), collaboration (2), members (2), issues (2), issue (2), decided (2), isaac (2), oct (2), building (2), scalable (2), sep (2), cnet (2), netscape (2), training (2), should (2), add (2), your (2), amazon (2), app (2), run (2), highly (2), aws (2), walmart (2), paypal (2), fast (2), performance (2), groupon (2), tier (2), godaddy (2), deal (2), collaborative (2), archive (2), references (2), see (2), steering (2), manages (2), one (2), streams (2), neutral (2), accelerate (2), success (2), similar (2), produce (2), headers (2), within (2), internal (2), users (2), specific (2), work (2), parties (2), introduced (2), top (2), simplify (2), but (2), complexity (2), bindings (2), experimental (2), each (2), connection (2), scalability (2), instead (2), does (2), combined (2), were (2), allows (2), installation (2), registry (2), initially (2), threaded (2), across (2), cores (2), cpu (2), entire (2), until (2), handles (2), parallel (2), inherently (2), while (2), turn (2), executes (2), thousands (2), design (2), requests (2), operations (2), systems (2), internals (2), details (2), numbered (2), odd (2), 2026 (2), cloud (2), industry (2), tcp (2), dns (2), signal (2), scripting (2), officially (2), later (2), provided (2), openbsd (2), freebsd (2), aix (2), smartos (2), designed (2), overview (2), together (2), announced (2), creator (2), first (2), years (2), initial (2), real (2), time (2), scripts (2), runs (2), ago (2), jump (2), cookie, statement, statistics, disclaimers, text, apply, agree, trademark, profit, creative, attribution, sharealike, last, edited, utc, tiếng, việt, اردو, українська, türkçe, svenska, suomi, српски, srpski, کوردی, русский, română, qaraqalpaqsha, português, polski, oʻzbekcha, ўзбекча, norsk, bokmål, 日本語, nederlands, melayu, മലയാളം, magyar, lombard, latviešu, кыргызча, עברית, italiano, indonesia, हिन्दी, հայերեն, 한국어, français, فارسی, euskara, español, ελληνικά, eesti, deutsch, dansk, čeština, català, български, беларуская, bân, lâm, বাংলা, azərbaycanca, asturianu, العربية, wikibooks, printable, download, pdf, print, export, item, cite, information, permanent, special, recent, portal, learn, contribute, donate, random, read, views, namespaces, log, account, contributions, logged, personal, menu, hidden, dmy, dates, nkc, lccn, j9u, gnd, category, matches, index, title, oldid, 1124070646, czech, republic, united, states, israel, national, authority, control, resig, brendan, eich, douglas, crockford, people, qunit, mocha, jest, jasmine, unit, wakanda, jsgi, webpack, bundlers, yarn, managers, webauthn, html5, html, document, object, cascading, style, sheets, asm, assemblyscript, ajax, technologies, ecmascript, vim, team, orion, phpstorm, light, table, codemirror, ace, editors, jsdoc, doc, generators, safari, opera, komodo, firefox, debuggers, syntax, concepts, websharper, reason, purescript, opa, nim, morfik, livescript, haxe, toolkit, closure, emscripten, elm, babel, atscript, transpilers, objective, supersets, jslint, jshint, eslint, analysis, vue, react, underscore, backbone, meen, substituted, ember, angular, angularjs, mean, official, gackenheimer, cory, 4302, 6058, apress, recipes, solution, aaron, newcomb, podcast, occurs, show, floss, weekly, episode, 237, randal, schwartz, teixeira, pedro, 118, 22754, ornbo, george, 672, 33595, hughes, croucher, tom, wilson, mike, 4493, 9858, whittaker, zack, zdnet, breakdown, leaders, fight, survival, addons, v14, types, aleksander, kasiuk, problems, processing, unitech, production, load, balancer, strong, caustik, bringing, forward, channel, hello, takes, center, stage, samples, imageboard, high, quality, soywiz, typings, integration, techrepublic, tony, patton, bridges, gap, azat, mardan, guide, comprehensive, book, bombora, installing, child_process, 9781449316846, aug, smashing, packt, essentials, again, won, above, medium, combines, codebase, advances, announces, ratified, mikeal, rogers, state, ben, noordhuis, 3692, suddenly, becomes, undefined, tech, watch, javaworld, phase, gatekeeper, ryandahl, porting, earliest, youtube, presentation, ubl, malte, berlin, garbar, dzmitry, belitsoft, partners, competitors, staff, news, 1996, opens, intranet, attack, skill, set, deploy, launch, codebrahma, really, appbuilder, companies, products, fluentconf, clash, titans, releasing, kraken, flames, webmatrix, front, take, note, asp, baxter, reynolds, matthew, london, guardian, happy, embracing, blazing, tips, never, believe, how, ipad, bluemix, geitgey, adam, dismantling, monoliths, nodejitsu, great, linuxfoundation, laurent, orsini, readwrite, know, gcuomo, three, amigos, wild, blue, yonder, initiative, master, v19, resigned, dispute, conduct, governing, body, responsible, repo, dependent, adjacent, generally, delegates, administration, committees, diagnostics, i18n, evangelism, docker, addon, benchmarking, post, mortem, intl, branches, greater, began, vendor, stated, purpose, enable, widespread, adoption, through, encourages, participation, contribution, framework, stewardship, ecosystem, invested, java, order, needs, appropriate, necessary, latter, typically, shipped, itself, msvc, clang, gcc, provides, ons, loadable, importable, directly, loaded, memory, executed, implementation, relies, objects, requiring, constantly, evolves, compatibility, subject, sometimes, get, broken, consequence, against, correctly, address, wrappers, partially, alleviate, interfaces, effect, introduce, maintainers, though, resides, enhance, capabilities, improve, import, wasi, registers, notifies, small, traditionally, relatively, heavyweight, handled, contrast, explicitly, defined, automatically, enters, definition, exits, performed, heap, allocation, database, stack, adaptation, essentially, patterns, etc, same, service, reuse, mvvm, mvp, mvc, couchdb, postgres, pre, installed, installs, organizing, party, range, helper, runners, grunt, then, 2008, compiles, includes, ignition, bytecode, interpreter, downside, allow, increasing, however, increase, default, likely, distribute, another, lasting, computations, bound, freeze, citation, needed, vertical, scaling, call, posts, shared, queue, pull, translate, kernel, sockets, own, completes, informs, wakes, operates, calls, allowing, tens, incurring, cost, sharing, among, intended, where, performing, must, accommodate, fixed, sized, observer, pattern, context, switching, hood, abstraction, layer, both, oss, posix, incoming, major, branch, every, six, undergoes, transition, gives, designated, expire, breaking, backports, few, weeks, land, critical, fixes, updates, strategy, preview, legend, 2025, hydrogen, gallium, fermium, erbium, dubnium, carbon, boron, argon, name, status, hosting, platforms, like, elastic, beanstalk, jelastic, modern, desktop, provide, editing, specifically, certain, online, koding, flow, editor, red, codenvy, codeanywhere, jetbrains, developed, connect, feathers, koa, hapi, derby, been, interfacing, environments, socket, them, hosted, conferences, including, nodeconf, interactive, summit, regional, since, proficient, internet, fundamentals, known, making, accessible, bsd, brings, enabling, simplified, connects, ease, power, works, 400, those, modified, primarily, significant, difference, finish, failure, concurrently, block, natively, result, creation, collection, functionalities, buffers, reduce, writing, cryptography, binary, udp, tls, ssl, brought, cycle, recommends, switch, es6, intent, communities, voted, fedor, indutny, started, conflict, over, alternative, separate, unlike, authors, keep, stepped, aside, promoting, coworker, manage, timothy, fontaine, would, lead, implemented, supporting, makes, easier, programmers, publish, share, updating, uninstallation, demonstrated, inaugural, european, low, level, criticized, limited, possibilities, lot, 000, common, creating, sequential, either, blocked, implied, stacks, case, simultaneous, apache, thirteen, introduction, livewire, pro, mac, led, sponsored, corporate, yahoo, netflix, previously, governed, now, facilitated, program, distributed, capable, choices, aim, optimize, input, output, games, communication, throughput, lets, write, command, line, produces, content, before, sent, user, consequently, represents, paradigm, unifying, around, rather, than, different, dynamic, outside, cross, days, author, search, encyclopedia, wayback, 20221219205456, wiki, timestamps, capture, fail, jan, dec, 514, captures,
Text of the page (random words):
s development and maintenance was led by dahl and later sponsored by joyent 26 dahl criticized the limited possibilities of the most popular web server in 2009 apache http server to handle a lot of concurrent connections up to 10 000 and more and the most common way of creating code sequential programming when code either blocked the entire process or implied multiple execution stacks in the case of simultaneous connections 27 dahl demonstrated the project at the inaugural european jsconf on november 8 2009 28 29 30 node js combined google s v8 javascript engine an event loop and a low level i o api 31 in january 2010 a package manager was introduced for the node js environment called npm 32 the package manager makes it easier for programmers to publish and share source code of node js packages and is designed to simplify installation updating and uninstallation of packages 31 in june 2011 microsoft and joyent implemented a native windows version of node js 33 the first node js build supporting windows was released in july 2011 in january 2012 dahl stepped aside promoting coworker and npm creator isaac schlueter to manage the project 34 in january 2014 schlueter announced that timothy j fontaine would lead the project 35 in december 2014 fedor indutny started io js a fork of node js due to the internal conflict over joyent s governance io js was created as an open governance alternative with a separate technical committee 36 37 unlike node js 38 the authors planned to keep io js up to date with the latest releases of the google v8 javascript engine 39 in february 2015 the intent to form a neutral node js foundation was announced by june 2015 the node js and io js communities voted to work together under the node js foundation 40 in september 2015 node js v0 12 and io js v3 3 were merged back together into node v4 0 41 this merge brought v8 es6 features into node js and a long term support release cycle 42 as of 2016 the io js website recommends that developers switch back to node js and that no further releases of io js are planned due to the merge 43 in 2019 the js foundation and node js foundation merged to form the openjs foundation in september 2022 node js 18 9 0 was released 44 overview edit node js allows the creation of web servers and networking tools using javascript and a collection of modules that handle various core functionalities 28 31 45 46 47 modules are provided for file system i o networking dns http tcp tls ssl or udp binary data buffers cryptography functions data streams and other core functions 31 46 48 node js s modules use an api designed to reduce the complexity of writing server applications 31 46 javascript is the only language that node js supports natively but many compile to js languages are available 49 as a result node js applications can be written in coffeescript 50 dart typescript clojurescript and others node js is primarily used to build network programs such as web servers 45 the most significant difference between node js and php is that most functions in php block until completion commands execute only after previous commands finish while node js functions are non blocking commands execute concurrently or even in parallel 51 52 and use callbacks to signal completion or failure 45 node js is officially supported on linux macos and microsoft windows 8 1 and server 2012 and later 3 with tier 2 support for smartos and ibm aix and experimental support for freebsd openbsd also works and lts versions available for ibm i as 400 53 the provided source code may also be built on similar operating systems to those officially supported or be modified by third parties to support others such as nonstop os 54 and unix servers platform architecture edit node js brings event driven programming to web servers enabling development of fast web servers in javascript 31 developers can create scalable servers without using threading by using a simplified model of event driven programming that uses callbacks to signal the completion of a task 31 node js connects the ease of a scripting language javascript with the power of unix network programming 31 node js was built on top of google s v8 javascript engine since it was open sourced under the bsd license it is proficient with internet fundamentals such as http dns and tcp 28 javascript was also a well known language making node js accessible to the web development community 28 industry support edit there are thousands of open source libraries for node js most of them hosted on the npm website there are multiple developer conferences and events that support the node js community including nodeconf node interactive and node summit as well as a number of regional events the open source community has developed web frameworks to accelerate the development of applications such frameworks include connect express js socket io feathers js koa js hapi js sails js meteor derby and many others 31 55 various packages have also been created for interfacing with other languages or runtime environments such as microsoft net 56 modern desktop ides provide editing and debugging features specifically for node js applications such ides include atom brackets jetbrains webstorm 57 58 microsoft visual studio with node js tools for visual studio 59 or typescript with node definitions 60 61 62 63 netbeans 64 nodeclipse enide studio 65 eclipse based and visual studio code 66 67 certain online web based ides also support node js such as codeanywhere codenvy cloud9 ide koding and the visual flow editor in node red node js is supported across a number of cloud hosting platforms like jelastic google cloud platform aws elastic beanstalk joyent and others releases edit release 68 status code name release date maintenance end old version no longer maintained 0 10 x old version no longer maintained end of life 2013 03 11 2016 10 31 old version no longer maintained 0 12 x old version no longer maintained end of life 2015 02 06 2016 12 31 old version no longer maintained 4 x old version no longer maintained end of life argon 69 2015 09 08 2018 04 30 old version no longer maintained 5 x old version no longer maintained end of life 2015 10 29 2016 06 30 old version no longer maintained 6 x old version no longer maintained end of life boron 69 2016 04 26 2019 04 30 old version no longer maintained 7 x old version no longer maintained end of life 2016 10 25 2017 06 30 old version no longer maintained 8 x old version no longer maintained end of life carbon 69 2017 05 30 2019 12 31 old version no longer maintained 9 x old version no longer maintained end of life 2017 10 01 2018 06 30 old version no longer maintained 10 x old version no longer maintained end of life dubnium 69 2018 04 24 2021 04 30 old version no longer maintained 11 x old version no longer maintained end of life 2018 10 23 2019 06 01 old version no longer maintained 12 x old version no longer maintained end of life erbium 69 2019 04 23 2022 04 30 old version no longer maintained 13 x old version no longer maintained end of life 2019 10 22 2020 06 01 older version yet still maintained 14 x older version yet still maintained maintenance lts fermium 69 2020 04 21 2023 04 30 old version no longer maintained 15 x old version no longer maintained end of life 2020 10 20 2021 06 01 older version yet still maintained 16 x older version yet still maintained maintenance lts gallium 69 2021 04 20 2023 09 11 70 old version no longer maintained 17 x old version no longer maintained end of life 2021 10 19 2022 06 01 older version yet still maintained 18 x older version yet still maintained active lts hydrogen 69 2022 04 19 2025 04 30 current stable version 19 x current stable version current 2022 10 18 2023 06 01 future release 20 x future release planned 2023 04 18 2026 04 30 legend old version older version still maintained latest version latest preview version future release new major releases of node js are cut from the github main branch every six months even numbered versions are cut in april and odd numbered versions are cut in october when a new odd version is released the previous even version undergoes transition to long term support lts which gives that version 18 months of active support from the date it is designated lts after these 18 months expire an lts release receives an additional 12 months of maintenance support an active version receives non breaking backports of changes a few weeks after they land in the current release a maintenance release receives only critical fixes and documentation updates 69 the lts working group manages strategy and policy in collaboration with the technical steering committee of the node js foundation technical details edit node js is a javascript runtime environment that processes incoming requests in a loop called the event loop internals edit node js uses libuv under the hood to handle asynchronous events libuv is an abstraction layer for network and file system functionality on both windows and posix based systems such as linux macos oss on nonstop and unix threading edit node js operates on a single thread event loop using non blocking i o calls allowing it to support tens of thousands of concurrent connections without incurring the cost of thread context switching 71 the design of sharing a single thread among all the requests that use the observer pattern is intended for building highly concurrent applications where any function performing i o must use a callback to accommodate the single threaded event loop node js uses the libuv library which in turn uses a fixed sized thread pool that handles some of the non blocking asynchronous i o operations 7 a thread pool handles the execution of parallel tasks in node js the main thread function call posts tasks to the shared task queue which threads in the thread pool pull and execute inherently non blocking system functions such as networking translate to kernel side non blocking sockets while inherently blocking system functions such as file i o run in a blocking way on their own threads when a thread in the thread pool completes a task it informs the main thread of this which in turn wakes up and executes the registered callback a downside of this single threaded approach is that node js does not allow vertical scaling by increasing the number of cpu cores of the machine it is running on without using an additional module such as cluster 51 strongloop process manager 72 or pm2 73 however developers can increase the default number of threads in the libuv thread pool the server operating system os is likely to distribute these threads across multiple cores 74 another problem is that long lasting computations and other cpu bound tasks freeze the entire event loop until completion citation needed v8 edit main article v8 javascript engine v8 is the javascript execution engine which was initially built for google chrome it was then open sourced by google in 2008 written in c v8 compiles javascript source code to native machine code at runtime 7 as of 2016 it also includes ignition a bytecode interpreter package management edit npm is the pre installed package manager for the node js server platform it installs node js programs from the npm registry organizing the installation and management of third party node js programs packages in the npm registry can range from simple helper libraries such as lodash to task runners such as grunt unified api edit node js can be combined with a browser with your site a database that supports json data such as postgres 75 mongodb or couchdb and json for a unified javascript development stack with the adaptation of what were essentially server side development patterns such as mvc mvp mvvm etc node js allows the reuse of the same model and service interface between client side and server side event loop edit node js registers with the operating system so the os notifies it of connections and issues a callback within the node js runtime each connection is a small heap allocation traditionally relatively heavyweight os processes or threads handled each connection node js uses an event loop for scalability instead of processes or threads 76 in contrast to other event driven servers node js s event loop does not need to be called explicitly instead callbacks are defined and the server automatically enters the event loop at the end of the callback definition node js exits the event loop when there are no further callbacks to be performed webassembly edit node js supports webassembly and as of node 14 has experimental support of wasi the webassembly system interface native bindings edit node js provides a way to create add ons via a c based api called n api which can be used to produce loadable importable node modules from source code written in c c 77 the modules can be directly loaded into memory and executed from within js environment as simple commonjs modules the implementation of the n api relies on internal c c node js and v8 objects requiring users to import include node js specific headers into their native source code 77 as the node js platform constantly evolves the api compatibility is subject to changes and may sometimes get broken by a new version as a consequence modules have to be built against specific node js versions to work correctly to address the issue third parties have introduced open sourced с с wrappers on top of the api that partially alleviate the problem they simplify interfaces but as a side effect they may also introduce complexity which maintainers have to deal with even though the core functionality of node js resides in a javascript built in library modules written in c can be used to enhance capabilities and to improve performance of applications in order to produce such modules one needs to have an appropriate c compiler and necessary headers the latter are typically shipped with node js itself gcc clang or msvc the n api is similar to java native interface project governance edit in 2015 various branches of the greater node js community began working under the vendor neutral node js foundation the stated purpose of the organization is to enable widespread adoption and help accelerate development of node js and other related modules through an open governance model that encourages participation technical contribution and a framework for long term stewardship by an ecosystem invested in node js success 78 the node js foundation technical steering committee tsc is the technical governing body of the node js foundation the tsc is responsible for the core node js repo as well as dependent and adjacent projects generally the tsc delegates the administration of these projects to working groups or committees 79 the lts group that manages long term supported releases is one such group other current groups include website streams build diagnostics i18n evangelism docker addon api benchmarking post mortem intl documentation and testing 80 in august 2017 a third of the tsc members resigne...
|