Mẹo Nodejs lấy url gốc

Thủ Thuật Hướng dẫn Nodejs lấy url gốc Mới Nhất

Lã Hiền Minh đang tìm kiếm từ khóa Nodejs lấy url gốc được Update vào lúc : 2022-12-24 19:44:07 . Với phương châm chia sẻ Kinh Nghiệm Hướng dẫn trong nội dung bài viết một cách Chi Tiết 2022. Nếu sau khi tham khảo nội dung bài viết vẫn ko hiểu thì hoàn toàn có thể lại Comments ở cuối bài để Ad lý giải và hướng dẫn lại nha.

Nút. js tỏa sáng trong những ứng dụng web thời gian thực sử dụng công nghệ tiên tiến đẩy qua WebSocket. Các link hai chiều, thời gian thực của nút—nơi mỗi máy khách và sever hoàn toàn có thể khởi đầu tiếp xúc—được cho phép trao đổi tài liệu tự do hơn

Nội dung chính Show
    nút là gì. js?Tại sao nên sử dụng nút. js?Nút ra làm sao. js Công việc?npm. Trình quản lý gói nútNơi sử dụng nút. jsTrò chuyệnAPI trên đầu DB đối tượngĐầu vào xếp hàngTruyền dữ liệuỦy quyềnMôi giới/Bảng điều khiển của nhà thanh toán giao dịch thanh toán chứng khoánBảng điều khiển giám sát ứng dụngBảng điều khiển giám sát hệ thốngNơi sử dụng nút. js, nhưng thận trọngServer-side Web ApplicationsWhere Not to Use Node. jsServer-side Web Application With a Relational Database ApplicationHeavy Server-side Computation and/or ProcessingWhy Choose Node. js?Understanding the basicsWhat is Node. js?What is Node. js used for?What is a web framework?Is Node. js a framework?là nút. js một ngôn từ lập trình?Tại sao là nút. js phổ biến?Sự khác lạ giữa nút là gì. js và Góc/AngularJS?Tại sao là nút. js xấu?

Qua

Tomislav Capan

Tomislav là Kiến trúc sư giải pháp, nhà phát triển và tư vấn kỹ thuật được AWS ghi nhận với hơn 10 năm kinh nghiệm tay nghề. Tomislav có bằng thạc sĩ về máy tính

CHIA SẺ

    CHIA SẺ

      Đọc bản tiếng Tây Ban Nha

      Nodejs lấy url gốccủa nội dung bài viết này do Isabella Rolz dịch

      Ghi chú của sửa đổi và biên tập viên. Phiên bản tiếng Anh của nội dung bài viết này đã được update vào ngày 10/03/2022 bởi nhóm sửa đổi và biên tập của chúng tôi. Nó đã được sửa đổi để gồm có những nguồn mới gần đây và phù phù phù hợp với những tiêu đúng đắn sửa và biên tập hiện tại của chúng tôi

      Sự phổ biến của JavaScript đã kéo theo rất nhiều thay đổi. Những điều tất cả chúng ta làm trên web ngày này thật khó tưởng tượng chỉ vài năm trước

      Trước khi chúng tôi tìm hiểu về Node. js (“Node”), hãy xem xét việc áp dụng JavaScript trên toàn bộ ngăn xếp để thống nhất ngôn từ và định dạng tài liệu (JSON), sẽ tạo điều kiện thuận lợi cho việc sử dụng lại tài nguyên của nhà phát triển một cách tối ưu. Vì đây là một quyền lợi của JavaScript hơn là Node. js rõ ràng, chúng tôi sẽ không lý giải thêm

      Với tất cả những ưu điểm của tớ, Node. js đóng một vai trò quan trọng trong kho công nghệ tiên tiến của nhiều công ty nổi tiếng, những người dân phụ thuộc vào quyền lợi độc đáo của nó. nút này. js xử lý và xử lý cách nhận ra những lợi thế này và nguyên do tại sao bạn hoàn toàn có thể—hoặc hoàn toàn có thể không—sử dụng Node. js

      nút là gì. js?

      Nút. js gồm có công cụ JavaScript V8 của Google, lớp trừu tượng nền tảng libUV và thư viện cốt lõi được viết bằng JavaScript. Ngoài ra, Nút. js nhờ vào ngăn xếp web mở (HTML, CSS và JS) và hoạt động và sinh hoạt giải trí trên cổng tiêu chuẩn 80

      Nút. js đáp ứng cho những nhà phát triển một công cụ toàn diện để thao tác trong quy mô I/O không chặn, hướng sự kiện. Ryan Dahl, người tạo ra Nút. js được “lấy cảm hứng từ những ứng dụng như Gmail” và—trong việc tạo Node. js—nhằm mục đích mục tiêu tạo những trang web thời gian thực với kĩ năng đẩy

      Sau hơn 20 năm web không trạng thái nhờ vào quy mô phản hồi yêu cầu không trạng thái, ở đầu cuối tất cả chúng ta cũng luôn có thể có những ứng dụng web với link hai chiều, thời gian thực

      Tại sao nên sử dụng nút. js?

      Nút. js tỏa sáng trong những ứng dụng web thời gian thực sử dụng công nghệ tiên tiến đẩy qua WebSocket. Sau hơn 20 năm web không trạng thái nhờ vào quy mô phản hồi yêu cầu không trạng thái, ở đầu cuối tất cả chúng ta cũng luôn có thể có những ứng dụng web với link hai chiều, thời gian thực, trong đó cả máy khách và sever đều hoàn toàn có thể khởi đầu tiếp xúc, được cho phép chúng trao đổi tài liệu tự do hơn. Điều này hoàn toàn trái ngược với quy mô phản hồi web điển hình, nơi người tiêu dùng luôn khởi đầu tiếp xúc

      Người ta hoàn toàn có thể lập luận rằng tất cả chúng ta đã có công nghệ tiên tiến này trong nhiều năm dưới dạng Flash và Java Applet. Tuy nhiên, trên thực tế, đó chỉ là những môi trường tự nhiên thiên nhiên hộp cát sử dụng web làm giao thức vận chuyển để gửi đến máy khách. Ngoài ra, những Applet Flash và Java được chạy độc lập và thường hoạt động và sinh hoạt giải trí trên những cổng không chuẩn, hoàn toàn có thể yêu cầu thêm quyền

      Nút ra làm sao. js Công việc?

      Node thực sự tỏa sáng trong việc xây dựng những ứng dụng mạng nhanh, hoàn toàn có thể mở rộng. Điều này là vì kĩ năng xử lý một số trong những lượng lớn những link đồng thời với thông lượng cao

      Nút. js sử dụng I/O không chặn, theo sự kiện để duy trì trọng lượng nhẹ và hiệu suất cao khi đối mặt với những ứng dụng thời gian thực sử dụng nhiều tài liệu chạy trên những thiết bị phân tán

      Nút. js là một nền tảng đáp ứng một nhu yếu rõ ràng và hiểu điều này là vô cùng thiết yếu. Ví dụ, bạn sẽ không sử dụng Node. js để thực hiện những hoạt động và sinh hoạt giải trí sinh hoạt sử dụng nhiều CPU. Gần như tất cả những lợi thế của Node sẽ bị hủy bỏ nếu nó được sử dụng để tính toán nặng

      Nút. js là một nền tảng đáp ứng nhu yếu rõ ràng. Nó không phải là viên đạn bạc hay nền tảng sẽ thống trị thế giới phát triển web

      tiếng riu ríu

      Làm thế nào nút. js hoạt động và sinh hoạt giải trí bí mật thật thú vị. So với những kỹ thuật phục vụ web truyền thống trong đó mỗi link (yêu cầu) tạo ra một luồng mới (chiếm RAM khối mạng lưới hệ thống và ở đầu cuối sử dụng tối đa dung tích RAM có sẵn), Node. js hoạt động và sinh hoạt giải trí trên một luồng đơn, sử dụng lệnh gọi I/O không chặn. Điều này được cho phép Node tương hỗ hàng trăm nghìn link đồng thời được tổ chức trong vòng lặp sự kiện

      Traditional vs. Node.js Server Thread

      Theo nội dung bài viết năm 2011 của Michael Abernethy “Node là gì. js?”, lấy một chuỗi có bộ nhớ 2 MB đi kèm, chạy trên khối mạng lưới hệ thống có RAM 8 GB và đáp ứng tối đa theo lý thuyết là 4.000 link đồng thời. Thêm vào đó là ngân sách quy đổi ngữ cảnh Một trong những luồng và bạn sẽ có một ngữ cảnh phổ biến trong những kỹ thuật phục vụ web truyền thống. Nút. js tránh được tất cả điều này, đạt được mức kĩ năng mở rộng cao

      Tất nhiên, có thắc mắc về việc chia sẻ một luồng duy nhất trong số tất cả những yêu cầu của người tiêu dùng, một cạm bẫy tiềm ẩn khi viết Node. ứng dụng js

      Đầu tiên, tính toán nặng nề hoàn toàn có thể làm tắc nghẽn luồng đơn của Node và gây ra sự cố cho tất cả những máy khách, vì những yêu cầu đến sẽ bị chặn cho tới lúc quá trình tính toán nói trên hoàn tất

      Thứ hai, những nhà phát triển cần cảnh giác và ngăn ngừa những ngoại lệ xuất hiện ở nút lõi (trên cùng). js, vì điều này sẽ khiến Node. js để chấm hết, làm hỏng chương trình một cách hiệu suất cao

      Để ngăn luồng ngoại lệ, chúng tôi chuyển lỗi trở lại trình gọi dưới dạng tham số gọi lại (thay vì "ném", như chúng tôi làm trong một số trong những môi trường tự nhiên thiên nhiên khác). Nếu một ngoại lệ không được xử lý xuất hiện, tất cả chúng ta hoàn toàn có thể sử dụng mô-đun Forever hoặc những công cụ bên phía ngoài như upstart và monit và just upstart để theo dõi Nút. js và thực hiện Phục hồi thiết yếu cho một phiên bản bị lỗi. Lưu ý rằng những công cụ này sẽ không xử lý và xử lý việc Phục hồi trạng thái hiện tại của phiên người tiêu dùng

      npm. Trình quản lý gói nút

      Hỗ trợ tích hợp để quản lý gói bằng npm được gồm có trong mọi Nút. setup js. Ý tưởng đằng sau những mô-đun npm tương tự như ý tưởng của Ruby Gems. Nó là một tập hợp những thành phần có sẵn công khai minh bạch, hoàn toàn có thể tái sử dụng, thuận tiện và đơn giản setup thông qua kho tàng trữ trực tuyến, với quản lý phiên bản và phụ thuộc

      npm Inc. chia sẻ list những mô-đun được đóng gói cũng hoàn toàn có thể truy cập thông qua công cụ npm CLI của nó. Hệ sinh thái mô-đun mở cho tất cả mọi người xuất bản mô-đun của riêng họ, mô-đun này sẽ được thêm vào kho tàng trữ npm

      Một số mô-đun npm hữu ích gồm có

      thể hiện, thể hiện. js hoặc đơn giản là Express

      Khung phát triển web lấy cảm hứng từ Sinatra cho Node. js và tiêu chuẩn thực tế cho phần lớn Node. ứng dụng js

      hapi

      Khung tập trung vào thông số kỹ thuật mô-đun và dễ sử dụng để xây dựng những ứng dụng web và dịch vụ

      link

      Khung sever HTTP hoàn toàn có thể mở rộng cho Node. js, đáp ứng một tập hợp những plugin hiệu suất cao được gọi là phần mềm trung gian;

      ổ cắm. io và sockjs

      Một thành phần phía sever của hai thành phần WebSocket phổ biến

      pug (trước đây là Jade)

      Một công cụ tạo khuôn mẫu lấy cảm hứng từ HAML, một công cụ mặc định trong Express. js

      mongodb và mongojs

      Trình bao bọc MongoDB để đáp ứng API cho cơ sở tài liệu đối tượng MongoDB trong Node. js

      làm lại

      Thư viện máy khách Redis

      lodash, gạch dưới, lười biếng. js

      Vành đai tiện ích JavaScript. Underscore khởi đầu trò chơi nhưng bị lật đổ bởi một trong hai đối tác của nó, đa phần là vì lười biếng. js' hiệu suất tốt hơn và triển khai mô-đun

      mãi mãi

      Một tiện ích để đảm nói rằng tập lệnh nút đã cho chạy liên tục; . js xử lý trong quá trình sản xuất khi đối mặt với bất kỳ lỗi không mong ước nào

      chim xanh

      Triển khai Promise/A+ đầy đủ tính năng với hiệu suất đặc biệt tốt

      chốc lát. js

      Thư viện ngày JavaScript để phân tích cú pháp, xác thực, thao tác và định dạng ngày

      Nơi sử dụng nút. js

      Trò chuyện

      Trò chuyện là một ứng dụng nhiều người tiêu dùng, thời gian thực điển hình—từ IRC (trước đây)—đến những triển khai tân tiến trong Node. js with WebSocket

      Ứng dụng trò chuyện nhẹ, lưu lượng truy vấn cao và sử dụng nhiều tài liệu (nhưng kĩ năng xử lý/tính toán thấp). Nó chạy trên những thiết bị phân tán và là ví dụ điển hình cho Node. js

      Đơn giản, nhưng gồm có hầu hết những quy mô mà bạn sẽ sử dụng trong một Nút điển hình. js, trò chuyện là một trường hợp sử dụng tuyệt vời cho việc học

      Let’s depict how chat works. Giả sử chúng tôi có một phòng trò chuyện duy nhất nơi người tiêu dùng hoàn toàn có thể trao đổi tin nhắn theo kiểu một-nhiều (thực tế là tất cả). Cũng giả sử có ba người tiêu dùng được link với bảng tin của chúng tôi

      Về phía sever, một Express đơn giản. js application implements

      Trình xử lý yêu cầu GET / phục vụ trang web chứa bảng tin và nút 'Gửi' để khởi tạo đầu vào tin nhắn mới vàMáy chủ WebSocket lắng nghe những tin nhắn mới do máy khách WebSocket phát ra

      Về phía người tiêu dùng, chúng tôi có một trang HTML với một số trong những trình xử lý được thiết lập

      Trình xử lý cho việc kiện nhấp vào nút 'Gửi', nhận thông báo đầu vào và gửi nó xuống WebSocketA handler that listens for new incoming messages on the WebSocket client (i. e. , thông báo do người tiêu dùng tạo mà sever muốn máy khách hiển thị)

      Khi một người tiêu dùng đăng một tin nhắn, đây là những gì sẽ xảy ra

      Trình duyệt bắt nút 'Gửi' khi nhấp qua trình xử lý JavaScript. Nó lấy giá trị từ trường đầu vào (i. e. , văn bản tin nhắn) và phát ra một tin nhắn WebSocket bằng ứng dụng khách WebSocket được link với sever của chúng tôi (được khởi tạo khi khởi tạo trang web)Thành phần phía sever của link WebSocket nhận tin nhắn và chuyển tiếp nó tới tất cả những máy khách được link khác, sử dụng phương thức quảng báAll clients receive the new message as a push message, via a WebSocket client-side component running within the web page. Sau đó, người tiêu dùng chọn nội dung tin nhắn và update trang web tại chỗ, bằng phương pháp thêm tin nhắn mới vào bảngClient and Server WebSockets in a Node.js Application

      Đây là một ví dụ đơn giản về trò chuyện thời gian thực với NodeJS, Socket. io và ExpressJS

      Để có giải pháp hiệu suất cao hơn, bạn hoàn toàn có thể sử dụng bộ đệm đơn giản nhờ vào shop Redis. Hoặc trong một giải pháp nâng cao hơn thế nữa, hãy sử dụng hàng đợi tin nhắn để xử lý việc định tuyến tin nhắn đến máy khách và cơ chế phân phối mạnh mẽ và tự tin hơn. Hàng đợi hoàn toàn có thể gồm có những trường hợp mất link tạm thời hoặc tàng trữ tin nhắn cho người tiêu dùng đã đăng ký khi họ ngoại tuyến

      Bất kể giải pháp bạn chọn là gì, Node. js hoạt động và sinh hoạt giải trí theo những nguyên tắc cơ bản giống nhau. phản ứng với những sự kiện, xử lý nhiều link đồng thời và duy trì tính trôi chảy trong trải nghiệm người tiêu dùng

      API trên đầu DB đối tượng

      Nút. js là sự việc phù hợp tự nhiên để hiển thị tài liệu từ những DB đối tượng (e. g. , MongoDB). Dữ liệu được tàng trữ JSON được cho phép Node. js hoạt động và sinh hoạt giải trí mà không còn trở kháng không phù hợp và quy đổi tài liệu

      Chẳng hạn, nếu bạn đang sử dụng Rails, bạn sẽ quy đổi từ JSON sang quy mô nhị phân, sau đó hiển thị chúng trở lại dưới dạng JSON qua HTTP khi tài liệu được sử dụng bởi Backbone. js, góc cạnh. js, v.v. —hoặc thậm chí những cuộc gọi jQuery AJAX đơn giản. với nút. js, bạn hoàn toàn có thể hiển thị những đối tượng JSON bằng API REST để máy khách sử dụng

      Nếu bạn đang sử dụng MongoDB, bạn không cần lo ngại về việc quy đổi giữa JSON và bất kỳ thứ gì khác khi đọc hoặc ghi từ cơ sở tài liệu. Do đó, bạn hoàn toàn có thể tránh nhu yếu quy đổi nhiều lần bằng phương pháp sử dụng định dạng tuần tự hóa tài liệu thống nhất trên máy khách, sever và cơ sở tài liệu

      Đầu vào xếp hàng

      Nút được cho phép bạn linh hoạt đẩy việc xóa sổ cơ sở tài liệu sang một bên. Nhưng thậm chí còn tồn tại nhiều nguyên do hơn để sử dụng Node. js

      Nếu bạn đang nhận một lượng lớn tài liệu đồng thời, cơ sở tài liệu của bạn hoàn toàn có thể trở thành nút cổ chai. Nút. js hoàn toàn có thể thuận tiện và đơn giản xử lý những link đồng thời. Bởi vì—trong trường hợp này—việc truy cập cơ sở tài liệu là một thao tác ngăn ngừa, nên chúng tôi gặp rắc rối. Giải pháp là thừa nhận hành vi của người tiêu dùng trước khi tài liệu thực sự được ghi vào cơ sở tài liệu

      Cách tiếp cận này được cho phép khối mạng lưới hệ thống duy trì kĩ năng phản hồi khi tải nặng. Tính năng này đặc biệt hữu ích khi người tiêu dùng không yêu cầu xác nhận chắc như đinh về việc ghi tài liệu thành công, khi ghi nhật ký hoặc ghi tài liệu theo dõi người tiêu dùng, được xử lý theo lô, để sử dụng sau này hoặc cho những hoạt động và sinh hoạt giải trí không thiết yếu

      Dữ liệu được xếp hàng đợi thông qua một số trong những loại bộ nhớ đệm hoặc hạ tầng xếp hàng tin nhắn như RabbitMQ hoặc ZeroMQ. Sau đó, nó được tiêu hóa bởi một quy trình ghi hàng loạt cơ sở tài liệu riêng biệt hoặc dịch vụ phụ trợ xử lý tính toán nâng cao, được viết trên một nền tảng hoạt động và sinh hoạt giải trí tốt hơn cho tác vụ như vậy

      Database Batch-write in Node.js With Message Queuing.

      Nói ngắn gọn. Với Node, bạn hoàn toàn có thể đẩy việc ghi cơ sở tài liệu sang một bên để xử lý sau

      Truyền tài liệu

      Tại sao không sử dụng Nút. js trong truyền tài liệu? . Chúng ta hoàn toàn có thể sử dụng quan sát này để xây dựng một số trong những Node thú vị. tính năng js

      Ví dụ: chúng tôi hoàn toàn có thể xử lý tệp trong khi chúng vẫn đang được tải lên. Khi tài liệu đến qua một luồng, chúng tôi hoàn toàn có thể xử lý tài liệu song song trong quá trình tải lên đó. Điều này đúng với mã hóa âm thanh hoặc video thời gian thực và ủy quyền Một trong những nguồn tài liệu rất khác nhau

      Ủy quyền

      Nút. js thuận tiện và đơn giản được sử dụng làm proxy phía sever, nơi nó hoàn toàn có thể xử lý một lượng lớn link đồng thời theo cách không chặn. Nó hữu ích cho việc ủy ​​quyền những dịch vụ rất khác nhau với thời gian phản hồi rất khác nhau hoặc thu thập tài liệu từ nhiều điểm nguồn

      Ví dụ: hãy xem xét ứng dụng phía sever tiếp xúc với tài nguyên của bên thứ ba, lấy tài liệu từ những nguồn rất khác nhau hoặc tàng trữ nội dung (như hình ảnh và video) vào dịch vụ đám mây của bên thứ ba

      Sử dụng Nút thay cho sever proxy chuyên được dùng hoàn toàn có thể hữu ích nếu hạ tầng ủy quyền của bạn không tồn tại hoặc nếu bạn cần một giải pháp để phát triển cục bộ. Bằng cách này, ý tôi là bạn hoàn toàn có thể xây dựng ứng dụng phía máy khách bằng Node. sever phát triển js cho nội dung và yêu cầu ủy quyền/sơ khai API. Trong sản xuất, bạn sẽ xử lý những tương tác như vậy với dịch vụ proxy chuyên được dùng (như nginx hoặc HAProxy)

      Môi giới/Bảng điều khiển của nhà thanh toán giao dịch thanh toán sàn đầu tư và chứng khoán

      Ở Lever ứng dụng, phần mềm thanh toán giao dịch thanh toán của nhà môi giới là một ví dụ khác trong đó phần mềm máy tính chiếm ưu thế, nhưng hoàn toàn có thể thuận tiện và đơn giản thay thế bằng giải pháp web thời gian thực. Phần mềm thanh toán giao dịch thanh toán của nhà môi giới theo dõi giá Cp, thực hiện tính toán và phân tích kỹ thuật, đồng thời hiển thị đồ thị và biểu đồ

      Tại sao không sử dụng Nút. js để viết một giải pháp nhờ vào web thời gian thực cho những nhà môi giới? . Chúng tôi hoàn toàn có thể sớm gặp những nhà môi giới của tớ trên bãi tắm biển ở Florida hoặc Ibiza hoặc Bali

      Bảng điều khiển giám sát ứng dụng

      Hãy tưởng tượng bạn hoàn toàn có thể phát triển doanh nghiệp của tớ ra làm sao nếu bạn hoàn toàn có thể thấy khách truy cập của tớ đang làm gì trong thời gian thực. Với ổ cắm hai chiều, thời gian thực của Node, bạn hoàn toàn có thể đạt được kĩ năng này

      Nút với WebSocket hoàn toàn phù hợp để theo dõi khách truy cập trang web và trực quan hóa những tương tác của tớ trong thời gian thực

      Lý do nên sử dụng Nút. js cho bảng điều khiển giám sát gồm có thu thập số liệu thống kê theo thời gian thực từ người tiêu dùng hoặc ra mắt những tương tác được nhắm tiềm năng với khách truy cập của bạn bằng phương pháp mở kênh liên lạc tại một điểm rõ ràng trong kênh của bạn. CANDDi sản xuất ý tưởng này

      Bảng điều khiển giám sát khối mạng lưới hệ thống

      Bây giờ, hãy đến thăm khía cạnh hạ tầng của mọi thứ. Ví dụ, hãy tưởng tượng một nhà đáp ứng SaaS muốn đáp ứng cho những người dân tiêu dùng một trang giám sát dịch vụ, như trang trạng thái của GitHub. với nút. js, tất cả chúng ta hoàn toàn có thể tạo một bảng điều khiển nhờ vào web mạnh mẽ và tự tin để kiểm tra trạng thái của dịch vụ theo cách không đồng bộ, đẩy tài liệu đến máy khách bằng WebSocket

      Cả trạng thái nội bộ (nội bộ công ty) và dịch vụ công cộng đều hoàn toàn có thể được báo cáo trực tiếp và theo thời gian thực bằng phương pháp sử dụng công nghệ tiên tiến này. Push a little further and try to imagine a network operations center (NOC) that monitors the applications of a telecommunications operator, cloud/network/hosting provider, or some financial institution. The applications would run on the open web stack backed by Node. js và WebSocket

      Đừng cố xây dựng những khối mạng lưới hệ thống thời gian thực cứng trong Node (tôi. e. , khối mạng lưới hệ thống yêu cầu thời gian phản hồi nhất quán). Erlang có lẽ rằng là lựa chọn tốt hơn cho loại ứng dụng đó

      Nơi sử dụng nút. js, nhưng thận trọng

      Server-side Web Applications

      với nút. js với Express. js, bạn hoàn toàn có thể tạo những ứng dụng web cổ xưa ở phía sever. While possible, this request-response paradigm in which Node. js would carry rendered HTML is not an ideal use case. There are arguments to be made for and against this approach. Here are some facts to consider

      Pros

        You can significantly ease the development of an application that does not require CPU-intensive computation, by using Javascript to build it top to bottom, even down to the database level—if you use JSON storage Object DB (e. g. , MongoDB)Crawlers receive a fully rendered HTML response, which is far more SEO friendly than, say, a Single Page Application or a WebSocket app that runs on top of Node. js

      Cons

        Any CPU-intensive computation will block Node. js responsiveness, so a threaded platform is a better approach. Alternatively, you could try scaling out the computationUsing Node. js with a relational database can be painful. If you’re trying to perform relational operations, consider going with an environment such as Rails, Django, or ASP. Net MVC

      An alternative to CPU-intensive computations is to create a highly scalable MQ-backed environment with back-end processing to keep Node as a front-facing “clerk” to handle client requests asynchronously

      Where Not to Use Node. js

      There are situations where Node may not be the best tool for the job

      Server-side Web Application With a Relational Database Application

      Ruby on Rails was once the clear choice as a tool to access relational databases like PostgreSQL, MySQL, and Microsoft SQL Server. This was because relational DB tools for Node. js were still in their early stages while, in contrast, Rails automatically provided data access setup right out of the box, together with DB schema migrations support tools, and other Gems (pun intended). Rails and its peer frameworks have mature and proven Active Record or Data Mapper data access layer implementations

      It’s possible and not uncommon to use Node solely on the front end, while keeping your Rails back end with its easy access to a relational DB

      But things have changed. Sequelize, TypeORM, and Bookshelf have come a long way toward becoming mature ORM solutions. Cũng hoàn toàn có thể đáng để xem Tham gia Quái vật nếu bạn đang muốn tạo SQL từ những truy vấn GraphQL

      Heavy Server-side Computation and/or Processing

      Node. js is not the best platform to handle heavy computation. No, you definitely don’t want to build a Fibonacci computation server in Node. js

      In general, any CPU-intensive operation annuls all the throughput benefits Node offers with its sự kiện-driven, nonblocking I/O model. This is because incoming requests are blocked while the thread is occupied with your number-crunching—assuming you’re trying to run computations in the same Node instance used to respond to requests

      Since Node. js is single-threaded and uses only a single CPU core, it would require considerable effort to develop a cluster module in order to deliver concurrency on a multicore server. Alternatively, you can run several Node. js server instances pretty easily behind a reverse proxy via nginx

      With clustering, you should still offload all heavy computation to background processes. Ensure that you use an appropriate environment for the background processes, and that they communicate via a message queue server like RabbitMQ

      While you may run background processes on the main server, this approach may not scale well once the load increases. You may distribute background processing services to separate worker servers without the need to configure the loads of front-facing web servers

      With Node. js—as opposed to most other platforms—you enjoy that high reqs/sec throughput we talked about, as each request is a small task that Node handles quickly and efficiently

      Why Choose Node. js?

      We discussed Node. js from theory to practice, beginning with its purpose, and ending with its sweet spots and pitfalls

      Problems with Node almost always originate from the fact that blocking operations are the root of all evil—and 99% of Node misuses are a direct consequence

      In Node, blocking operations are the root of all evil—99% of Node misuses are a direct consequence

      tiếng riu ríu

      If your use case does not contain CPU-intensive operations, nor accesses blocking resources, you can exploit the benefits of Node. js and enjoy fast and scalable network applications. Welcome to the real-time web

      Understanding the basics

      What is Node. js?

      Node. js is a server-side, open-source, JavaScript runtime environment. Node uses Google's V8 engine---libUV---to deliver cross-platform compatibility and a core library. Notably, Node. js does not expose a global window object, since it does not run within a browser

      What is Node. js used for?

      Because Node. js is single-threaded, we use it primarily for non-blocking, sự kiện-driven servers. We can also use Node. js for traditional websites and back-end API services, as it was designed with real-time, push-based architectures in mind

      What is a web framework?

      Web frameworks like Angular and React are libraries that help organize and generate the front-end code that runs in a web browser. Web frameworks reuse code for common operations, thereby reducing development time. Some web frameworks are full stack

      Is Node. js a framework?

      No, Node. js is an environment. Back-end frameworks run within Node. js. Popular, compatible frameworks include Express. js (also referred to as Express) for HTTP servers and Socket. IO for WebSocket servers

      là nút. js một ngôn từ lập trình?

      Nút. js không phải là ngôn từ lập trình. Các ". js" ở cuối tên của nó cho biết thêm thêm JavaScript là ngôn từ lập trình được link với nó. Bất cứ thứ gì hoàn toàn có thể chuyển mã sang JavaScript---như TypeScript, Haxe hoặc CoffeeScript---cũng hoàn toàn có thể được sử dụng với Node. js

      Tại sao là nút. js phổ biến?

      Bên cạnh hiệu suất cao cực tốt, Node. js is popular because of its huge, active, open-source, JavaScript-based ecosystem

      Sự khác lạ giữa nút là gì. js và Góc/AngularJS?

      The Node. js thực thi mã JavaScript trên sever, trong khi đó Angular là một khung JavaScript được thực thi trên máy khách (i. e. , trong trình duyệt web)

      Tại sao là nút. js xấu?

      Nút. js không tệ. Công nghệ của nó được sử dụng rộng rãi cho nhiều loại sever. Tuy nhiên, vì là đơn luồng nên Node. js không lý tưởng cho những sever web gấp hai sever tính toán---việc tính toán nặng như vậy sẽ cản trở kĩ năng phản hồi của sever

      thẻ

      JavaScript/Nút. js

      Người thao tác tự do? Tìm việc làm tiếp theo của bạn.

      JavaScript Developer Jobs

      View full profile

      Tomislav Capan

      Cloud Solution Architect and Lead Developer

      About the author

      Tomislav is a software engineer, technical consultant, and solution architect who began as a technical partner for an online truyền thông business, growing it from zero to over 100,000 monthly readers. After years in software engineering, he now provides technical leadership through consulting and architecting dynamic, reliable, and scalable cloud solutions to support business growth and optimize complex architectures gone wrong. As an infrastructure lead, he makes the cloud a friendly place

      Hire Tomislav

      Comments

      Anony Mouse

      For relational DBs on Node, I like . //bookshelfjs. org/

      Anony Mouse

      For relational DBs on Node, I like . //bookshelfjs. org/

      Adin Scannell

      Awesome article. I definitely agree that node. js has some really perfectly suited use cases. However, I do want to comment on something that is a bit of a pet peeve of mine -- I wish you wouldn't contrast it with a non-existent straw-man "traditional" system in "how it works". 1) No server spawns a thread per request (they use thread pools or process pools). 2) You say "cost of context switching" as if it only applies to OS threads. Userspace frames need to be saved and loaded in the same way. Plus the OS does it with a few instructions, leveraging specialized support from the hardware -- which userspace can't do. 3) Similarly, userspace threads (I. e. frames or closures if you don't want to talk threads) take memory resources in the same way kernel threads do. It's not as if each system thread has it's full stack limit allocated, so that's an unfair analysis. Normal systems regularly have more than 4000 without coming anywhere near where you've pegged it. 4) The BIG problem with single-thread concurrency is the lack of parallelism. Sure, you can handle thousands of requests per second, but only one CPU on your 40 core server is going to doing ANY work. Dù sao đi nữa, tất cả những điều trên liên quan đến một đoạn khá nhỏ trong bài đăng xuất sắc của bạn. Node isn't really guilty of this, it's just that there's a lot of FUD out there around threads and processes which people often use to justify insane designs (and avoid threads when they are completely the right approach for the majority of situations)

      Adin Scannell

      Awesome article. I definitely agree that node. js has some really perfectly suited use cases. However, I do want to comment on something that is a bit of a pet peeve of mine -- I wish you wouldn't contrast it with a non-existent straw-man "traditional" system in "how it works". 1) No server spawns a thread per request (they use thread pools or process pools). 2) You say "cost of context switching" as if it only applies to OS threads. Userspace frames need to be saved and loaded in the same way. Plus the OS does it with a few instructions, leveraging specialized support from the hardware -- which userspace can't do. 3) Similarly, userspace threads (I. e. frames or closures if you don't want to talk threads) take memory resources in the same way kernel threads do. It's not as if each system thread has it's full stack limit allocated, so that's an unfair analysis. Normal systems regularly have more than 4000 without coming anywhere near where you've pegged it. 4) The BIG problem with single-thread concurrency is the lack of parallelism. Sure, you can handle thousands of requests per second, but only one CPU on your 40 core server is going to doing ANY work. Dù sao đi nữa, tất cả những điều trên liên quan đến một đoạn khá nhỏ trong bài đăng xuất sắc của bạn. Node isn't really guilty of this, it's just that there's a lot of FUD out there around threads and processes which people often use to justify insane designs (and avoid threads when they are completely the right approach for the majority of situations)

      Eric Elliott

      All your advice about computation heavy apps could not be more wrong. It's certainly true that attempting heavy computation inline with the request-response cycle, is a bad idea, but the same could be said of threaded environments. If you have CPU bound operations, it's a good idea to handle them with worker processes. JavaScript, and Node in particular are actually very well suited to handle distributed computation - especially with the good support for functional style programming. If you write your algorithms using pure functions and distribute workload to workers, you can easily distribute your workload over networked clusters. Node's great support for networking makes it an ideal environment both for computing and orchestration tasks, and it's orders of magnitude faster than Ruby both

      Eric Elliott

      All your advice about computation heavy apps could not be more wrong. It's certainly true that attempting heavy computation inline with the request-response cycle, is a bad idea, but the same could be said of threaded environments. If you have CPU bound operations, it's a good idea to handle them with worker processes. JavaScript, and Node in particular are actually very well suited to handle distributed computation - especially with the good support for functional style programming. If you write your algorithms using pure functions and distribute workload to workers, you can easily distribute your workload over networked clusters. Node's great support for networking makes it an ideal environment both for computing and orchestration tasks, and it's orders of magnitude faster than Ruby both

      jim thomas

      Very helpful. Thanks a lot

      jim thomas

      Very helpful. Thanks a lot

      Roland

      You certainly don't want to block any Node. js process that is handling server requests, but that doesn't mean you shouldn't do heavy computations behind a Node. js server. So long as the process doing the heavy computations is spawned asynchronously from your server process. Still you could end up blocking your Node. js process if you overdue it, but that is also true with the traditional threaded server

      Roland

      You certainly don't want to block any Node. js process that is handling server requests, but that doesn't mean you shouldn't do heavy computations behind a Node. js server. So long as the process doing the heavy computations is spawned asynchronously from your server process. Still you could end up blocking your Node. js process if you overdue it, but that is also true with the traditional threaded server

      Danny Machal

      This is going to make me out to be a giant noob but can you give me an example of a "blocking operation" ?

      Danny Machal

      This is going to make me out to be a giant noob but can you give me an example of a "blocking operation" ?

      irneb

      Any such hybrid system? I'm thinking. Use Node. js to process a request by simply placing it onto a to-process queue, return a message to the client stating something like "calculating. ". Then Node. js is không lấy phí to continue with the next request. The to-process queue can then be run through using a difference thread (or even multiple threads). As and when these complete, they send their results to Node. js's queue which will then relay it back to the original client? Of course this means some ID key needs to accompany each item in this queue to ensure the correct data is returned to the correct client. Anything like this possible? Or even already implemented?

      irneb

      Any such hybrid system? I'm thinking. Use Node. js to process a request by simply placing it onto a to-process queue, return a message to the client stating something like "calculating. ". Then Node. js is không lấy phí to continue with the next request. The to-process queue can then be run through using a difference thread (or even multiple threads). As and when these complete, they send their results to Node. js's queue which will then relay it back to the original client? Of course this means some ID key needs to accompany each item in this queue to ensure the correct data is returned to the correct client. Anything like this possible? Or even already implemented?

      zivkovic_milan

      Great article, thanks . )

      zivkovic_milan

      Great article, thanks . )

      Gerd Jungbluth

      Tomislav, thanks for this very well written and concise article. We 've been using MongoDB and Node. js (in combination with AngularJS for the user facing part) for > 2 years now and couldn't imagine to ever, ever, ever switch back to Flash (after 10 years of experience) or JEE / RDMS. So it boils down to just one programming language (JS), one data format (JSON) and one programming paradigma (Async), wow

      Gerd Jungbluth

      Tomislav, thanks for this very well written and concise article. We 've been using MongoDB and Node. js (in combination with AngularJS for the user facing part) for > 2 years now and couldn't imagine to ever, ever, ever switch back to Flash (after 10 years of experience) or JEE / RDMS. So it boils down to just one programming language (JS), one data format (JSON) and one programming paradigma (Async), wow

      chad

      That's by far the best explanation out there about Node. js. I finally understood that it is very useful (in certain scenarios) and not just a hype. Thanks a lot this was very informative

      chad

      That's by far the best explanation out there about Node. js. I finally understood that it is very useful (in certain scenarios) and not just a hype. Thanks a lot this was very informative

      ellisgl

      Node works well with relational databases, just don't use an ORM. SQL isn't that hard to learn. =)

      ellisgl

      Node works well with relational databases, just don't use an ORM. SQL isn't that hard to learn. =)

      Tomislav Capan

      True that, but I thought we as an industry got over the idea of writing all the SQL manually. Tools are good for common operations, tools that just get out of the way when needed to write some specifics manually, otherwise reducing the possibility of errors and security issues (that happens with more junior developers whether we want it or not)

      Tomislav Capan

      True that, but I thought we as an industry got over the idea of writing all the SQL manually. Tools are good for common operations, tools that just get out of the way when needed to write some specifics manually, otherwise reducing the possibility of errors and security issues (that happens with more junior developers whether we want it or not)

      Tomislav Capan

      Hi Adin, let me comment back 1) same scenario happens, there's a limitid amount of threads serving limited amount of clients. 2/3) Referenced presentation shows some measurements and numbers, you may be quite right on the internals but the common rough overview still stands as a general comparison of how things work between those two worlds. 4) parallelization options are also discussed within the article - as background worker processes, or several node processes behind a reverse proxy, or with Node clustering API (which is still in Experimental, but will be there eventually). Thanks for the great comments and the quality feedback on the article with that additional info, I appreciate it

      Tomislav Capan

      Hi Adin, let me comment back 1) same scenario happens, there's a limitid amount of threads serving limited amount of clients. 2/3) Referenced presentation shows some measurements and numbers, you may be quite right on the internals but the common rough overview still stands as a general comparison of how things work between those two worlds. 4) parallelization options are also discussed within the article - as background worker processes, or several node processes behind a reverse proxy, or with Node clustering API (which is still in Experimental, but will be there eventually). Thanks for the great comments and the quality feedback on the article with that additional info, I appreciate it

      Tomislav Capan

      Yes, you can have multiple worker processes, even communicating through Message Queue (MQ). Those workers can be separate Node processes (as node is single-threaded, unless you experiment with clustering API - I haven't tried yet as the API is very early and probably immmature), but can be any other language. I've worked on such a system which ran C# on Mono for background processing in a distributed CQRS architecture

      Tomislav Capan

      Yes, you can have multiple worker processes, even communicating through Message Queue (MQ). Those workers can be separate Node processes (as node is single-threaded, unless you experiment with clustering API - I haven't tried yet as the API is very early and probably immmature), but can be any other language. I've worked on such a system which ran C# on Mono for background processing in a distributed CQRS architecture

      Tomislav Capan

      Bất kỳ tính toán nào khiến CPU bận rộn cho tới lúc tính toán kết thúc. Imagine some operation that requires 2 seconds to perform the calculation. Hit that with 100 clients - you get a 200-sec delay. Note the article I have referenced, which explains the blocking of the sự kiện loop. . //zef. me/4561/node-js-and-the-case-of-the-blocked-sự kiện-loop

      Tomislav Capan

      Bất kỳ tính toán nào khiến CPU bận rộn cho tới lúc tính toán kết thúc. Imagine some operation that requires 2 seconds to perform the calculation. Hit that with 100 clients - you get a 200-sec delay. Note the article I have referenced, which explains the blocking of the sự kiện loop. . //zef. me/4561/node-js-and-the-case-of-the-blocked-sự kiện-loop

      Tomislav Capan

      Yes, that falls under the idea of having 'backend worker processes' in a distributed system. As the system is distributed, those workers can use any language/platform, including Node

      Tomislav Capan

      Yes, that falls under the idea of having 'backend worker processes' in a distributed system. As the system is distributed, those workers can use any language/platform, including Node

      Tomislav Capan

      Thanks for your feedback. I agree on that completely, for worker processes you could use JS when it fits, and that implies Node. js as that's what runs JS on the server, but you can also use other languages that do the particular work hand fast

      Tomislav Capan

      Thanks for your feedback. I agree on that completely, for worker processes you could use JS when it fits, and that implies Node. js as that's what runs JS on the server, but you can also use other languages that do the particular work hand fast

      ellisgl

      For ORMs in general, I just see them as a tool that can get something done quick for a newbie, but end up really gumming up the works later on. The closest thing I use for an ORM is a PDO wrapper (which I borrowed and rewrote from an old co-worker), that helps with writing PDO statements. https. //github. com/ellisgl/GeekLab-XPDO

      ellisgl

      For ORMs in general, I just see them as a tool that can get something done quick for a newbie, but end up really gumming up the works later on. The closest thing I use for an ORM is a PDO wrapper (which I borrowed and rewrote from an old co-worker), that helps with writing PDO statements. https. //github. com/ellisgl/GeekLab-XPDO

      Adin Scannell

      Apologies for the wall of text. Excellent discussion. 1) Agreed. But threads and processes are powerful tools. That's why a hybrid of threads/processes and sự kiện systems typically does best in the real world. Like the much beloved nginx . ) 2/3) Sorry, I may not have been clear. When I said FUD regarding threads and processes, I *meant the referenced presentation*. It's just a bunch of specifically tailored microbenchmarks designed to prove a certain point. (Which is fair, given that it's a lightning fair and can be a bit polemic. In fact, it's a great talk. But these synthetic micro-benchmarks are not the basis for a fair and through comparison. ) To say the difference between nginx and apache benchmarks is purely because of context switching is an extreme oversimplification. Nginx is specifically designed to serve HTTP requests really, really quickly in common circumstances (IMO generally by a tight coupling with the latest OS sự kiện systems, etc. ). You could specifically measure the overhead of context switching, and I would wager it's trivial. 4) But then aren't you the mercy of the horrible "process overhead" the referenced presentation talks about -- can't have it both ways . ) (To be clear, my position using threads/processes or whatever is not in and of itself a problem. There are way more important design factors there, the OS overhead of those entities is pretty trivial. Hence I hate it when people adopt a silly design based on the idea thread-are-bad or processes-are-bad or some other such nonesense)

      Adin Scannell

      Apologies for the wall of text. Excellent discussion. 1) Agreed. But threads and processes are powerful tools. That's why a hybrid of threads/processes and sự kiện systems typically does best in the real world. Like the much beloved nginx . ) 2/3) Sorry, I may not have been clear. When I said FUD regarding threads and processes, I *meant the referenced presentation*. It's just a bunch of specifically tailored microbenchmarks designed to prove a certain point. (Which is fair, given that it's a lightning fair and can be a bit polemic. In fact, it's a great talk. But these synthetic micro-benchmarks are not the basis for a fair and through comparison. ) To say the difference between nginx and apache benchmarks is purely because of context switching is an extreme oversimplification. Nginx is specifically designed to serve HTTP requests really, really quickly in common circumstances (IMO generally by a tight coupling with the latest OS sự kiện systems, etc. ). You could specifically measure the overhead of context switching, and I would wager it's trivial. 4) But then aren't you the mercy of the horrible "process overhead" the referenced presentation talks about -- can't have it both ways . ) (To be clear, my position using threads/processes or whatever is not in and of itself a problem. There are way more important design factors there, the OS overhead of those entities is pretty trivial. Hence I hate it when people adopt a silly design based on the idea thread-are-bad or processes-are-bad or some other such nonesense)

      Tomislav Capan

      Everything always needs to be put in the right context. I have presented possible situations, to analyze each one deeply I'd need a book . -) Still, I really appreciate your comments and insights, they are valuable addition to the article. Thank you for those

      Tomislav Capan

      Everything always needs to be put in the right context. I have presented possible situations, to analyze each one deeply I'd need a book . -) Still, I really appreciate your comments and insights, they are valuable addition to the article. Thank you for those

      Aaron Wang

      When use node. js as api server, and the back-end db is the bottleneck, if the clients are the other applications, not user interface, can we just let these client requests hang there waiting for db operation complete(sine node. js can handle massive concurrent connections easily)? Is a MQ necessary in this scenario? In my opinion, node. js is right the queue

      Aaron Wang

      When use node. js as api server, and the back-end db is the bottleneck, if the clients are the other applications, not user interface, can we just let these client requests hang there waiting for db operation complete(sine node. js can handle massive concurrent connections easily)? Is a MQ necessary in this scenario? In my opinion, node. js is right the queue

      Ethan

      ORM does not exist to make query languages "easier", it's a tool used to encapsulate database concerns, isolating them from the application. There are several benefits, but ultimately, it makes applications easier to test and maintain years down the road. Excuse the tangent, nothing to do with node

      Ethan

      ORM does not exist to make query languages "easier", it's a tool used to encapsulate database concerns, isolating them from the application. There are several benefits, but ultimately, it makes applications easier to test and maintain years down the road. Excuse the tangent, nothing to do with node

      Eric Elliott

      Yes, you could, but Ruby would be a poor choice if your aim is performance. =)

      Eric Elliott

      Yes, you could, but Ruby would be a poor choice if your aim is performance. =)

      Vedran

      thank you for a great article. By using the node. js child process . //nodejs. org/api/child_process. html - would you be able to overcome the high computational blocking Fibonacci issue?

      Vedran

      thank you for a great article. By using the node. js child process . //nodejs. org/api/child_process. html - would you be able to overcome the high computational blocking Fibonacci issue?

      nene odonkor

      any real life examples?

      nene odonkor

      any real life examples?

      nene odonkor

      What of the Meta example you used. When a user clicks on the like button there is an immediate acknowledgement but the data is written later. Cant that be an example of node used with relational db? Anyway what makes up the message queue?

      nene odonkor

      What of the Meta example you used. When a user clicks on the like button there is an immediate acknowledgement but the data is written later. Cant that be an example of node used with relational db? Anyway what makes up the message queue?

      Moch Lutfi

      Maybe go-lang is alternative choice. . )

      Moch Lutfi

      Maybe go-lang is alternative choice. . )

      Anthony Hildoer

      This article is great, except for the part where it says don't use NodeJS for computation because it doesn't have threads. Since when do we need threads? Run child processes. The only advantage to running threads over child processes is shared memory. Last time I checked, any system large enough for this entire debate to be relevant anyway is going to span multiple servers anyway, their by nullifying any benefit of threads. So, get it out of your head that NodeJS can't do CPU intensive work. And, if you can't, contact BlueRival. com, and we can fix all the stuff you built wrong with NodeJS

      Anthony Hildoer

      This article is great, except for the part where it says don't use NodeJS for computation because it doesn't have threads. Since when do we need threads? Run child processes. The only advantage to running threads over child processes is shared memory. Last time I checked, any system large enough for this entire debate to be relevant anyway is going to span multiple servers anyway, their by nullifying any benefit of threads. So, get it out of your head that NodeJS can't do CPU intensive work. And, if you can't, contact BlueRival. com, and we can fix all the stuff you built wrong with NodeJS

      RiggerTheGeek

      One application that few people use, but could be really fanastic, is using NodeJS to build a desktop application. There's plenty of packages out there - personally, I favour Node-Webkit https. //github. com/rogerwang/node-webkit

      RiggerTheGeek

      One application that few people use, but could be really fanastic, is using NodeJS to build a desktop application. There's plenty of packages out there - personally, I favour Node-Webkit https. //github. com/rogerwang/node-webkit

      hfuti

      Hi, nice article. However I would like to point one thing, NodeJS is not running in a single thread. The programmer doesn't have to spawn new threads, they are handled by node itself on sự kiện basis. NodeJS is evented, each function call per sự kiện will run in a separate thread. That approach encourages writing lighter functions. If your function does a lot of computation, reactor it into smaller ones and they all will run in separate threads. Think about the example where you process file while streaming. That is possible thanks to threads

      hfuti

      Hi, nice article. However I would like to point one thing, NodeJS is not running in a single thread. The programmer doesn't have to spawn new threads, they are handled by node itself on sự kiện basis. NodeJS is evented, each function call per sự kiện will run in a separate thread. That approach encourages writing lighter functions. If your function does a lot of computation, reactor it into smaller ones and they all will run in separate threads. Think about the example where you process file while streaming. That is possible thanks to threads

      Matthew Keas

      This is very well written. Thank you for this

      Matthew Keas

      This is very well written. Thank you for this

      Matti Schneider

      > The technique used to avoid exceptions bubbling up to the surface is passing errors back to the caller as callback parameters Excuse me, but that seems misled. In my understanding, [“Node-style callbacks”](. //nodeguide. com/style. html#callbacks) (i. e. the pattern of passing errors as the first param to callbacks) are a side-effect of the sự kiện queue (returning control as soon as possible to allow for “concurrency”) itself rather than a design to avoid interrupting flow. The fact that exceptions do not bubble are actually quite often a source of errors, especially to newcomers

      Matti Schneider

      > The technique used to avoid exceptions bubbling up to the surface is passing errors back to the caller as callback parameters Excuse me, but that seems misled. In my understanding, [“Node-style callbacks”](. //nodeguide. com/style. html#callbacks) (i. e. the pattern of passing errors as the first param to callbacks) are a side-effect of the sự kiện queue (returning control as soon as possible to allow for “concurrency”) itself rather than a design to avoid interrupting flow. The fact that exceptions do not bubble are actually quite often a source of errors, especially to newcomers

      kyoukhana

      Great Article. Wondering who made the beautiful diagrams . )

      kyoukhana

      Great Article. Wondering who made the beautiful diagrams . )

      TZ

      Great article, thanks . ) BTW, which tool do you use to draw the images?

      TZ

      Great article, thanks . ) BTW, which tool do you use to draw the images?

      Matthew Keas

      +1 for that

      Matthew Keas

      +1 for that

      Matthew Keas

      For those that are curious, it seems the images were created with Adobe Photoshop CC. I checked this by looking the EXIF data of one of the images. . //exifdata. com/ File Size – 61 kB File Type – PNG MIME Type – image/png Image Width – 624 Image Height – 600 X Resolution – 72 Y Resolution – 72 Color Space – sRGB Color Mode – 3 Compression – Deflate/Inflate Orientation – Horizontal (normal) XMP Toolkit – Adobe XMP Core 5. 5-c014 79. 151481, 2013/03/13-12. 09. 15 Creator Tool – Adobe Photoshop CC (Macintosh)

      Matthew Keas

      For those that are curious, it seems the images were created with Adobe Photoshop CC. I checked this by looking the EXIF data of one of the images. . //exifdata. com/ File Size – 61 kB File Type – PNG MIME Type – image/png Image Width – 624 Image Height – 600 X Resolution – 72 Y Resolution – 72 Color Space – sRGB Color Mode – 3 Compression – Deflate/Inflate Orientation – Horizontal (normal) XMP Toolkit – Adobe XMP Core 5. 5-c014 79. 151481, 2013/03/13-12. 09. 15 Creator Tool – Adobe Photoshop CC (Macintosh)

      Juan G. Nuño

      Also, the fact that javascript is not able to check type compliance introduces dificulty in expontaneous organization of huge number of coders updating the same codebase simultaneously

      Juan G. Nuño

      Also, the fact that javascript is not able to check type compliance introduces dificulty in expontaneous organization of huge number of coders updating the same codebase simultaneously

      Juan G. Nuño

      mmmm. disagree, if you use correctly a good ORM (take a look Mature ORMs) you get also a distributed cache of your Relational Database that allows you more performance for the same bucks and more scalability of your sistem. ORM is not just for easing the life to newies. It is non sense to use a non-blockin sistem such as node. js, if the end you get blocked your Database. But using a ORM that way, is not for newbies

      Juan G. Nuño

      mmmm. disagree, if you use correctly a good ORM (take a look Mature ORMs) you get also a distributed cache of your Relational Database that allows you more performance for the same bucks and more scalability of your sistem. ORM is not just for easing the life to newies. It is non sense to use a non-blockin sistem such as node. js, if the end you get blocked your Database. But using a ORM that way, is not for newbies

      geniium

      Glad you mention, most people don't mention this

      geniium

      Glad you mention, most people don't mention this

      Tracker1

      For that matter, since you can do an async shell to a console application, you could easily write your worker in, for instance golang, and then use a generic pool to limit your cpu workers. from there, you can shell out to a more efficient worker. You can also do that for CPU intensive JS as well, I did this for my scrypt-js module (there are binary modules that are more performant, but I wanted one without compiled dependencies). It's not that hard to queue work to other systems, and no reason node can't be used to orchestrate said work

      Tracker1

      For that matter, since you can do an async shell to a console application, you could easily write your worker in, for instance golang, and then use a generic pool to limit your cpu workers. from there, you can shell out to a more efficient worker. You can also do that for CPU intensive JS as well, I did this for my scrypt-js module (there are binary modules that are more performant, but I wanted one without compiled dependencies). It's not that hard to queue work to other systems, and no reason node can't be used to orchestrate said work

      Tracker1

      Could *could* use an intermediate system such as TypeScript, you can also use a linter (jshint) and even require a level of test coverage in order for release. Getting 100% test coverage is generally *very* easy in scripted environments. Would suggest looking into Mocha, Chai, and Proxyquire. If you aren't writing unit tests, type safety really doesn't give you much

      Tracker1

      Could *could* use an intermediate system such as TypeScript, you can also use a linter (jshint) and even require a level of test coverage in order for release. Getting 100% test coverage is generally *very* easy in scripted environments. Would suggest looking into Mocha, Chai, and Proxyquire. If you aren't writing unit tests, type safety really doesn't give you much

      Steve Naidamast

      I am beginning to find Node. js quite interesting. However, the paradigm it appears to be promoting is hardly new to IT. In the mainframe communications world we called such capabilities, "re-entrant", where a single process could handle a high level of calls to it. Microsoft implemented similar capabilities with its Singleton object infrastructure and I imagine the Java world has done similar implementations. Oddly enough, the Microsoft recommendation for enhancing scalability across the wires to back-end services was to promote the "Single Call" object structure or one object instance per calling request. Thus, the argument made for Node. js is actually contrary to the Microsoft recommendation; BTW, a recommendation I never quite understood. In any sự kiện, as a business ASP. NET developer, I am not sure if I would find any use for a Node. js implementation, though our web designer may. On another note, I would like to add my own opinion on the use of ORMs. ORMs are great tools when faced with an existing database structure against the requirements of a new application as the ORM can handle a lot of the mundane, repetitive coding that is usually found with any database application. However, because ORMs are high-level layers, they are usually not the most efficient options to use against databases whereas direct access through native providers are. In many respects, better to do the repetitive coding for efficiency over applying a heavy-weight interim layer such as an ORM

      Steve Naidamast

      I am beginning to find Node. js quite interesting. However, the paradigm it appears to be promoting is hardly new to IT. In the mainframe communications world we called such capabilities, "re-entrant", where a single process could handle a high level of calls to it. Microsoft implemented similar capabilities with its Singleton object infrastructure and I imagine the Java world has done similar implementations. Oddly enough, the Microsoft recommendation for enhancing scalability across the wires to back-end services was to promote the "Single Call" object structure or one object instance per calling request. Thus, the argument made for Node. js is actually contrary to the Microsoft recommendation; BTW, a recommendation I never quite understood. In any sự kiện, as a business ASP. NET developer, I am not sure if I would find any use for a Node. js implementation, though our web designer may. On another note, I would like to add my own opinion on the use of ORMs. ORMs are great tools when faced with an existing database structure against the requirements of a new application as the ORM can handle a lot of the mundane, repetitive coding that is usually found with any database application. However, because ORMs are high-level layers, they are usually not the most efficient options to use against databases whereas direct access through native providers are. In many respects, better to do the repetitive coding for efficiency over applying a heavy-weight interim layer such as an ORM

      opensas

      Very interesting observation. I'd like someone to elaborate a bit more on that. I would like a more concrete example, like some piece of concrete code calling an async heavy-computational function, and someone explaining what happens if that is run in a multicore equipment. Does the thread that was sercing requests gets blocked? Or another thread is used for that?

      opensas

      Very interesting observation. I'd like someone to elaborate a bit more on that. I would like a more concrete example, like some piece of concrete code calling an async heavy-computational function, and someone explaining what happens if that is run in a multicore equipment. Does the thread that was sercing requests gets blocked? Or another thread is used for that?

      Derrick Simpson

      Node is terrible as a web server. Even the creator suggests that this is not what Node is intended for, and that it should be leveraged for it's strengths. JavaScript "Everything", just like worker processes, is ludicrous

      Derrick Simpson

      Node is terrible as a web server. Even the creator suggests that this is not what Node is intended for, and that it should be leveraged for it's strengths. JavaScript "Everything", just like worker processes, is ludicrous

      Eric Elliott

      This is ridiculous. Node was built with the web as first class, and it excels as a web server. It is rapidly replacing Ruby and PHP in many enterprise organizations because it has demonstrably boosted both application performance (reduced page-load times, etc. ) and developer productivity

      Eric Elliott

      This is ridiculous. Node was built with the web as first class, and it excels as a web server. It is rapidly replacing Ruby and PHP in many enterprise organizations because it has demonstrably boosted both application performance (reduced page-load times, etc. ) and developer productivity

      jonpress

      You can in fact create multi-threaded servers using Node. js to offer more stable performance but it does take a lot of extra work (see the built-in cluster module and the child_process module). Tôi đã tạo một khung chạy trên nhiều lõi CPU và xử lý và xử lý được nhiều vấn đề được thảo luận trong bài đăng này. Check it out. . //nombo. io/

      jonpress

      You can in fact create multi-threaded servers using Node. js to offer more stable performance but it does take a lot of extra work (see the built-in cluster module and the child_process module). Tôi đã tạo một khung chạy trên nhiều lõi CPU và xử lý và xử lý được nhiều vấn đề được thảo luận trong bài đăng này. Check it out. . //nombo. io/

      Connor Leech

      does something like mongoose. js solve the node relational database issue? . //mongoosejs. com/

      Connor Leech

      does something like mongoose. js solve the node relational database issue? . //mongoosejs. com/

      Rob Tweed

      Yes - see the queue/pre-forked worker pool approach adopted by EWD. js. . //gradvs1. mgateway. com/tải về/EWDjs. pdf Summarised here. . //gradvs1. mgateway. com/tải về/EWDjsMechanics. pdf

      Rob Tweed

      Yes - see the queue/pre-forked worker pool approach adopted by EWD. js. . //gradvs1. mgateway. com/tải về/EWDjs. pdf Summarised here. . //gradvs1. mgateway. com/tải về/EWDjsMechanics. pdf

      keith

      yeah, I was wondering about it too. great visual + awesome post

      keith

      yeah, I was wondering about it too. great visual + awesome post

      Carlos Ballena

      Very helpful article

      Carlos Ballena

      Very helpful article

      Jesus Nuñez

      npm install felixge/node-mysql. That might be the most useful repository I've seen in ages

      Jesus Nuñez

      npm install felixge/node-mysql. That might be the most useful repository I've seen in ages

      Matthias Lienau

      Nice article, indeed. But, @hfuti. disqus, you're wrong in saying "NodeJS is not running in a single thread . each function call per sự kiện will run in a separate thread. " As far as I understood, the main NodeJS sự kiện loop consuming your JS code in fact runs in a single thread. All potentially blocking and/or long-running tasks like disk I/O is delegated to and executed by libuv as part of the node runtime engine which spawns a *limited* number of threads made available as thread pool. Said this, it's obvious that the main sự kiện loop thread is not affected or blocked by other (yet again asynchronous) code execution. So, for example, file I/O with the fs module itself is implemented in a non-blocking manner - in the end as good as the OS/kernel allows non-blocking operations. Of course foreign processes or threads could always be spawned by custom modules or 3rd party services (worker processes). And yes, there are runtime env projects handling more than one node process and their threads on the same machine or cpu cluster. But that's another story. Feel không lấy phí to correct me if I'm wrong

      Matthias Lienau

      Nice article, indeed. But, @hfuti. disqus, you're wrong in saying "NodeJS is not running in a single thread . each function call per sự kiện will run in a separate thread. " As far as I understood, the main NodeJS sự kiện loop consuming your JS code in fact runs in a single thread. All potentially blocking and/or long-running tasks like disk I/O is delegated to and executed by libuv as part of the node runtime engine which spawns a *limited* number of threads made available as thread pool. Said this, it's obvious that the main sự kiện loop thread is not affected or blocked by other (yet again asynchronous) code execution. So, for example, file I/O with the fs module itself is implemented in a non-blocking manner - in the end as good as the OS/kernel allows non-blocking operations. Of course foreign processes or threads could always be spawned by custom modules or 3rd party services (worker processes). And yes, there are runtime env projects handling more than one node process and their threads on the same machine or cpu cluster. But that's another story. Feel không lấy phí to correct me if I'm wrong

      josep2

      This is fantastic

      josep2

      This is fantastic

      Jacopo Chiapparino

      Nice article, thank you

      Jacopo Chiapparino

      Nice article, thank you

      NoobMovies. com

      I think Django still kicks Node's ass

      NoobMovies. com

      I think Django still kicks Node's ass

      Alex Writing

      Hey Tomislav, . //codecondo. com/7-minimal-node-js-web-frameworks/ I'd love if you could add the above post to the list . )

      Alex Writing

      Hey Tomislav, . //codecondo. com/7-minimal-node-js-web-frameworks/ I'd love if you could add the above post to the list . )

      dung nham Victor

      Omg, this is amazing. I have always wanted to learn node. js

      dung nham Victor

      Omg, this is amazing. I have always wanted to learn node. js

      ak

      Thanks for providing examples, illustrations and use cases. The detailed explanation and steps in some cases with relevant resources makes it a great read. Where nodejs *should* be used is very useful

      ak

      Thanks for providing examples, illustrations and use cases. The detailed explanation and steps in some cases with relevant resources makes it a great read. Where nodejs *should* be used is very useful

      crueber

      All Node code is thread-bound. It may not run on the same thread all times (which has nothing to do with Node itself, and instead has to do with the operating system process scheduler), but it is thread bound. In order to take advantage of multiple threads, you need to use something like Cluster. . //nodejs. org/api/cluster. html

      crueber

      All Node code is thread-bound. It may not run on the same thread all times (which has nothing to do with Node itself, and instead has to do with the operating system process scheduler), but it is thread bound. In order to take advantage of multiple threads, you need to use something like Cluster. . //nodejs. org/api/cluster. html

      crueber

      Agreed. I use Postgres for all sorts of GIS operations in an application I've been working on for about a year, and it works great, and benefits from the same non-blocking I/O that any other database access does. It's just that you have to drop down directly to the SQL. There are a couple ORMs, but nothing that is real mature

      crueber

      Agreed. I use Postgres for all sorts of GIS operations in an application I've been working on for about a year, and it works great, and benefits from the same non-blocking I/O that any other database access does. It's just that you have to drop down directly to the SQL. There are a couple ORMs, but nothing that is real mature

      elijahca

      Awesome, thanks a lot for this

      elijahca

      Awesome, thanks a lot for this

      Zmirc

      Minor comment. don't confuse Object DBs with Mongo (Document DB). There are 2 completely different things

      Zmirc

      Minor comment. don't confuse Object DBs with Mongo (Document DB). There are 2 completely different things

      Gianlucca

      i agree, good post

      Gianlucca

      i agree, good post

      Gianlucca

      yes, i agree

      Gianlucca

      yes, i agree

      Gianlucca

      sure

      Gianlucca

      sure

      Toulon

      Very well written article. You put a lot of thought into it. Quick node/express question I am I am adding rapid data entry, not batch, data entry to my system I have a form (mfntapes) that works great. I have a test form (joe) the prompts for the number of times I want to call the mfntapes form The gist contains the code, fails to work, the after prompting for cnt attempts to call for mfntapes cnt times. Error is "ReferenceError. form is not defined" in line 87 of the gist The question is how to call form mfntapes x number of times where x is a vairable? See lines 45-55 of https. //gist. github. com/toulon/9571625

      Toulon

      Very well written article. You put a lot of thought into it. Quick node/express question I am I am adding rapid data entry, not batch, data entry to my system I have a form (mfntapes) that works great. I have a test form (joe) the prompts for the number of times I want to call the mfntapes form The gist contains the code, fails to work, the after prompting for cnt attempts to call for mfntapes cnt times. Error is "ReferenceError. form is not defined" in line 87 of the gist The question is how to call form mfntapes x number of times where x is a vairable? See lines 45-55 of https. //gist. github. com/toulon/9571625

      Jesus Bejarano

      ORM for real projects are useless hone

      Jesus Bejarano

      ORM for real projects are useless hone

      Thomas

      Nice article . -) > SERVER-SIDE WEB APPLICATION W/ A RELATIONAL DB BEHIND I wonder why Node is not good for that? You have promise based *SQL libraries (like Knex) which enables non-blocking queries. Node has no opposition with relational databases. it has no interest with blocking I/O drivers only. Relational or not relational

      Thomas

      Nice article . -) > SERVER-SIDE WEB APPLICATION W/ A RELATIONAL DB BEHIND I wonder why Node is not good for that? You have promise based *SQL libraries (like Knex) which enables non-blocking queries. Node has no opposition with relational databases. it has no interest with blocking I/O drivers only. Relational or not relational

      Seb

      I wish NodeJS was not (almost) systematicallty presented as THE de facto alternative to the traditional threaded webserver. Async IO is not exclusive to NodeJS. Most major languages out there - including Java and PHP - have async IO frameworks similar to NodeJS. This wiki page lists most of them. . //en. wikipedia. org/wiki/Reactor_pattern I'm not saying NodeJS doesn't have its merit, but I'm sick and tired of seeing people flocking to it as if it's the *only* async IO stack available, and the *only* alternative to the good ol' PHP or Rails stack. To be honest, we may be stuck with Javascript on the browser, and will be for a very long time (except if Javascript becomes just another target platform/language thanks to asm. js), but I can't come up with any good reason to use it on the server side in favor to other available languages. Most of the alternatives are just way better as a language, have better standard libraries, tools and resources. Just a personal opinion. Long story short, Node JS is cool, but there certainly is a similar framework written in your favorite language. Please just take 5 minutes to research it before switching to NodeJS

      Seb

      I wish NodeJS was not (almost) systematicallty presented as THE de facto alternative to the traditional threaded webserver. Async IO is not exclusive to NodeJS. Most major languages out there - including Java and PHP - have async IO frameworks similar to NodeJS. This wiki page lists most of them. . //en. wikipedia. org/wiki/Reactor_pattern I'm not saying NodeJS doesn't have its merit, but I'm sick and tired of seeing people flocking to it as if it's the *only* async IO stack available, and the *only* alternative to the good ol' PHP or Rails stack. To be honest, we may be stuck with Javascript on the browser, and will be for a very long time (except if Javascript becomes just another target platform/language thanks to asm. js), but I can't come up with any good reason to use it on the server side in favor to other available languages. Most of the alternatives are just way better as a language, have better standard libraries, tools and resources. Just a personal opinion. Long story short, Node JS is cool, but there certainly is a similar framework written in your favorite language. Please just take 5 minutes to research it before switching to NodeJS

      Jarle Leopold Moe

      How would you upload files? What about Directory integration? (Active Directory, Open Directory) What about communication with external services? All request depending on a response from any of these types of services would block the calls. Node. js is _single-threaded_ it's only applicable for certain types of tasks

      Jarle Leopold Moe

      How would you upload files? What about Directory integration? (Active Directory, Open Directory) What about communication with external services? All request depending on a response from any of these types of services would block the calls. Node. js is _single-threaded_ it's only applicable for certain types of tasks

      Eric Elliott

      These are great examples of why Node is so much better than the competition web services. None of those are blocking operations in Node. They're asynchronous. While other servers waste resources spinning off separate threads, Node fires off an sự kiện-driven asynchronous operation and keeps taking more requests in the meantime. The practical upshot is that porting web services from PHP or Ruby can deliver between 2x and 10x improvements in simultaneous connections and typically 30% - 60% improvements in average response times. Lots of big companies are doing web Node projects just for these reasons, including Adobe, Paypal, eBay, Walmart, Yahoo. , Groupon, Uber, etc

      Eric Elliott

      These are great examples of why Node is so much better than the competition web services. None of those are blocking operations in Node. They're asynchronous. While other servers waste resources spinning off separate threads, Node fires off an sự kiện-driven asynchronous operation and keeps taking more requests in the meantime. The practical upshot is that porting web services from PHP or Ruby can deliver between 2x and 10x improvements in simultaneous connections and typically 30% - 60% improvements in average response times. Lots of big companies are doing web Node projects just for these reasons, including Adobe, Paypal, eBay, Walmart, Yahoo. , Groupon, Uber, etc

      jenit shah

      very nice article and very clear thought regarding node. js where to use and where not

      jenit shah

      very nice article and very clear thought regarding node. js where to use and where not

      CowsRule

      Every major application development platform has already had support for HTML5 for the past several years, including websockets for bi-directional communication. Add to this the strong types, multi-threading and the tons of other stuff that languages such as Java have to offer and I seriously question why anyone would waste their time using this

      CowsRule

      Every major application development platform has already had support for HTML5 for the past several years, including websockets for bi-directional communication. Add to this the strong types, multi-threading and the tons of other stuff that languages such as Java have to offer and I seriously question why anyone would waste their time using this

      robertcooke

      Just want to mention that node is not the only server side option for javascript especially since oracle put the nashorn javascript engine on the jdk. Now you can also use all the jvm goodness from javascript we are using vert. x as the async server and nashorn to use javascript. You can see some code samples in this module https. //github. com/core9/module-nashorn the project site is core9. io

      robertcooke

      Just want to mention that node is not the only server side option for javascript especially since oracle put the nashorn javascript engine on the jdk. Now you can also use all the jvm goodness from javascript we are using vert. x as the async server and nashorn to use javascript. You can see some code samples in this module https. //github. com/core9/module-nashorn the project site is core9. io

      Anonymous

      This is an amazing overview . Thank you

      Anonymous

      This is an amazing overview . Thank you

      Vishnu Tekale

      Very well written. Thanks for sharing

      Vishnu Tekale

      Very well written. Thanks for sharing

      Gleb Bahmutov

      Why Node is different - using bar as analogy . //bahmutov. calepin. co/why-node-is-different. html

      Gleb Bahmutov

      Why Node is different - using bar as analogy . //bahmutov. calepin. co/why-node-is-different. html

      FluckerSputter

      Just to let you know you have "support support" in How it works under-the-hood is pretty interesting. Compared to traditional web-serving techniques where each connection (request) spawns a new thread, taking up system RAM and eventually maxing-out the amount of RAM available, Node. js hoạt động và sinh hoạt giải trí trên một luồng đơn, sử dụng những cuộc gọi I/O không chặn, được cho phép nó tương hỗ hàng trăm nghìn link đồng thời (được tổ chức trong vòng lặp sự kiện)

      FluckerSputter

      Just to let you know you have "support support" in How it works under-the-hood is pretty interesting. Compared to traditional web-serving techniques where each connection (request) spawns a new thread, taking up system RAM and eventually maxing-out the amount of RAM available, Node. js hoạt động và sinh hoạt giải trí trên một luồng đơn, sử dụng những cuộc gọi I/O không chặn, được cho phép nó tương hỗ hàng trăm nghìn link đồng thời (được tổ chức trong vòng lặp sự kiện)

      piloh23

      Nút. js sẽ không bao giờ thay thế Rails để trở thành web framework số một

      piloh23

      Nút. js sẽ không bao giờ thay thế Rails để trở thành web framework số một

      Alifa Nurani Putri

      Xin chào, Nút liệu có phải là lựa chọn tốt nhất để truyền phát và tải lên video không?

      Alifa Nurani Putri

      Xin chào, Nút liệu có phải là lựa chọn tốt nhất để truyền phát và tải lên video không?

      SleightDifference

      Tại sao PHP không được đề cập để tương tác với cơ sở tài liệu quan hệ?

      SleightDifference

      Tại sao PHP không được đề cập để tương tác với cơ sở tài liệu quan hệ?

      Clain Dsilva

      Cảm ơn bạn đã dành thời gian lý giải về Node. js. Tôi thực sự gặp trở ngại vất vả trong việc hiểu nó từ trang web của tớ cũng như Wikipedia. Bài viết tốt. Giữ nó lên

      Clain Dsilva

      Cảm ơn bạn đã dành thời gian lý giải về Node. js. Tôi thực sự gặp trở ngại vất vả trong việc hiểu nó từ trang web của tớ cũng như Wikipedia. Bài viết tốt. Giữ nó lên

      Cézar Luiz

      Còn https này thì sao. //github. com/felixge/nút-mysql? . Thanks

      Cézar Luiz

      Còn https này thì sao. //github. com/felixge/nút-mysql? . Thanks

      Marcelo Lima

      Thank you for this article. Cleared a lot of questions I had about Node internals

      Marcelo Lima

      Thank you for this article. Cleared a lot of questions I had about Node internals

      Navid

      Awesome Article

      Navid

      Awesome Article

      Abdelhakim

      https. //www. udemy. com/nodejs-tutorial-from-scratch-by-examples/?couponCode=NewOffer 1. Lifetime access to 24 lectures 2. Over 120 mins of high quality content. 2. Join to a community of over 2687 students learning together. 4. Course information and regular updates 5. Learn node. js and mongoDB from scratch by examples. 6. Course information and regular updates. 7. Discussion forum, which we encourage you to make use of -- both to pose questions about the material to the course instructor and to exchange ideas with your classmates. số 8. High quality course support

      Abdelhakim

      https. //www. udemy. com/nodejs-tutorial-from-scratch-by-examples/?couponCode=NewOffer 1. Lifetime access to 24 lectures 2. Over 120 mins of high quality content. 2. Join to a community of over 2687 students learning together. 4. Course information and regular updates 5. Learn node. js and mongoDB from scratch by examples. 6. Course information and regular updates. 7. Discussion forum, which we encourage you to make use of -- both to pose questions about the material to the course instructor and to exchange ideas with your classmates. số 8. High quality course support

      rahul garg

      Theo sự hiểu biết của tôi với nội dung bài viết, nếu bạn gửi bất kỳ yêu cầu nào tới sever nút, nó sẽ thực sự xử lý trên một số trong những luồng nền (libuv. dll). Now I want to post some file through node server, why it block the node server while it will actually process on background thread and when done , only response will be returned by node thread ? Kindly suggest if I am missing some thing

      rahul garg

      Theo sự hiểu biết của tôi với nội dung bài viết, nếu bạn gửi bất kỳ yêu cầu nào tới sever nút, nó sẽ thực sự xử lý trên một số trong những luồng nền (libuv. dll). Now I want to post some file through node server, why it block the node server while it will actually process on background thread and when done , only response will be returned by node thread ? Kindly suggest if I am missing some thing

      siddesh

      Super Article

      siddesh

      Super Article

      fanck

      Isn't it possible to get the date of posting of your article? or all your posts for that matter. It is really disturbing to read technical posts without dates. thanks

      fanck

      Isn't it possible to get the date of posting of your article? or all your posts for that matter. It is really disturbing to read technical posts without dates. thanks

      Namo

      You mention Node. js tốt cho ứng dụng trò chuyện vì nó không tốn nhiều CPU. I can't think of too many use cases that don't require much CPU. For example, could be built with Node? It seems there's a lot of computation required just to generate your feed. Node. js uses certainly can't be so narrow

      Namo

      You mention Node. js tốt cho ứng dụng trò chuyện vì nó không tốn nhiều CPU. I can't think of too many use cases that don't require much CPU. For example, could be built with Node? It seems there's a lot of computation required just to generate your feed. Node. js uses certainly can't be so narrow

      Ian Kaplan

      Bài báo tuyệt vời. Thanks. Có một trò đùa cũ. you're not a paranoid if they're really out to get you. Đó là thái độ nên có khi nói đến bảo mật thông tin ứng dụng Web. One thing that bothers me about Node. js is that I have no insight into how secure it is. When an environment like Grails, where I have Java/Groovy running on Tomcat I have some confidence in Tomcat security, if for no other reason than the fact that Tomcat has been around a long time and has evolved. This isn't true with Node. js. I was also looking the Node. js libraries. At least for the file access, it appears to be nothing more than a thin layer over the POSIX file system calls. I like the Java or even the C++ file abstractions more. The main argument that I see for Node. js (made in this post) is that it has really lightweight threads and that you can have JavaScrip everywhere. This last issue is an attraction for those who only know JavaScript. As far as the light weight threads, this is not so much a language issue as a platform support issue. It should be possible to support this kind of thread model in another language

      Ian Kaplan

      Bài báo tuyệt vời. Thanks. Có một trò đùa cũ. you're not a paranoid if they're really out to get you. Đó là thái độ nên có khi nói đến bảo mật thông tin ứng dụng Web. One thing that bothers me about Node. js is that I have no insight into how secure it is. When an environment like Grails, where I have Java/Groovy running on Tomcat I have some confidence in Tomcat security, if for no other reason than the fact that Tomcat has been around a long time and has evolved. This isn't true with Node. js. I was also looking the Node. js libraries. At least for the file access, it appears to be nothing more than a thin layer over the POSIX file system calls. I like the Java or even the C++ file abstractions more. The main argument that I see for Node. js (made in this post) is that it has really lightweight threads and that you can have JavaScrip everywhere. This last issue is an attraction for those who only know JavaScript. As far as the light weight threads, this is not so much a language issue as a platform support issue. It should be possible to support this kind of thread model in another language

      Huge Web

      Nhà thiết kế Toptal đã thiết kế cho họ

      Huge Web

      Nhà thiết kế Toptal đã thiết kế cho họ

      Scott

      Bài báo tuyệt vời. cảm ơn vì những thông tin

      Scott

      Bài báo tuyệt vời. cảm ơn vì những thông tin

      daimmo

      I agree. I guessed it was around "a year ago" because of most of Disqus comments. This is taken from their meta tags anyway. 2013-08-13

      daimmo

      I agree. I guessed it was around "a year ago" because of most of Disqus comments. This is taken from their meta tags anyway. 2013-08-13

      Adnan King

      nice

      Adnan King

      nice

      Ethan Garofolo

      Node. js isn't a web framework. It's a packed V8 runtime with some core libraries attached. Node is more like mri in the Ruby world than Rails

      Ethan Garofolo

      Node. js isn't a web framework. It's a packed V8 runtime with some core libraries attached. Node is more like mri in the Ruby world than Rails

      Guest

      Node. js is more like Rack, but not the same. MRI is just a language implementation

      Guest

      Node. js is more like Rack, but not the same. MRI is just a language implementation

      Lambda Pool

      the problem is that mongodb, its too risky using a database who can't be migrated never

      Lambda Pool

      the problem is that mongodb, its too risky using a database who can't be migrated never

      Lambda Pool

      well its true, ORM is a bad practice after all

      Lambda Pool

      well its true, ORM is a bad practice after all

      Lambda Pool

      yes but it does in a very non efficiently way

      Lambda Pool

      yes but it does in a very non efficiently way

      Lambda Pool

      the database engine itself will be ever more sophisticated than any ORM library home made by someone else

      Lambda Pool

      the database engine itself will be ever more sophisticated than any ORM library home made by someone else

      John Bailo

      It's ameezing how asynchronous the web still is. Indeed, like a telephone answering machine, its utility lies there

      John Bailo

      It's ameezing how asynchronous the web still is. Indeed, like a telephone answering machine, its utility lies there

      Jayaraj Poroor

      I agree - I'm not a fan of ORMs either. ORM is a classic example of leaky abstraction

      Jayaraj Poroor

      I agree - I'm not a fan of ORMs either. ORM is a classic example of leaky abstraction

      Jayaraj Poroor

      Regarding using Node. js with relational databases. Shelloid (. //shelloid. org) là một sever ứng dụng mã nguồn mở cho Node. js that we developed to simplify lot of programmer tasks. e. g. , You can declare named SQL queries as annotations and a function by that name automatically gets added to the DB object for you to use

      Jayaraj Poroor

      Regarding using Node. js with relational databases. Shelloid (. //shelloid. org) là một sever ứng dụng mã nguồn mở cho Node. js that we developed to simplify lot of programmer tasks. e. g. , You can declare named SQL queries as annotations and a function by that name automatically gets added to the DB object for you to use

      M

      I think you do not understand the reason for or characteristics of ORM's very well. ORM's not only isolate data concerns, they provide testability and greater flexibility than traditional SQL clients. ORM's also provide in memory access in place of inefficient joins, so they can actually be far more efficient than SQL in real world scenarios. Plus, given the choice of performing complex set operations in a limited procedural set language like SQL or complex in memory operations using a far richer, more expressive and maintainable language, the richer language wins if you ever expect to maintain or extend the application

      M

      I think you do not understand the reason for or characteristics of ORM's very well. ORM's not only isolate data concerns, they provide testability and greater flexibility than traditional SQL clients. ORM's also provide in memory access in place of inefficient joins, so they can actually be far more efficient than SQL in real world scenarios. Plus, given the choice of performing complex set operations in a limited procedural set language like SQL or complex in memory operations using a far richer, more expressive and maintainable language, the richer language wins if you ever expect to maintain or extend the application

      M

      You don't know what you are talking about. If you are writing a non-trivial applications and not using an ORM than I'm sure there will be many developers both today and in the future that will be cursing your name as they wade through ridiculous rafts of SQL. Testability? I guess that's just for trivial applications. When I see ridiculous comments like this coming from node. js fanboi's it makes me suspect that they'd be singing a different tune if node. js had decent RDBMS capabilities

      M

      You don't know what you are talking about. If you are writing a non-trivial applications and not using an ORM than I'm sure there will be many developers both today and in the future that will be cursing your name as they wade through ridiculous rafts of SQL. Testability? I guess that's just for trivial applications. When I see ridiculous comments like this coming from node. js fanboi's it makes me suspect that they'd be singing a different tune if node. js had decent RDBMS capabilities

      Lambda Pool

      you just overate ORM such as most OO fanboys does

      Lambda Pool

      you just overate ORM such as most OO fanboys does

      Lambda Pool

      your comment is ridiculous too, ORM is not a everyone's accepted pattern

      Lambda Pool

      your comment is ridiculous too, ORM is not a everyone's accepted pattern

      M

      The irony is that lambda's (aka, anonymous methods) are the basis of both javascript and the preferred technique for C#'s multiple implementation of the same callback pattern, albeit with full type safety. In fact node's major characteristics (2-way, lightweight, asynchronous has effectively been implemented in C# as "SignalR", and there are several language features which are both asynchronous and natively multithreaded, (unlike node. js). Now I could understand if your experience with ORM's was limited to Hibernate (absolutely awful, one of the worst implementations of a major concept I've ever had the displeasure to work with) or even EF, which least is fairly powerful and expressive due to LINQ, if data nanny overkill. But a micro-ORM like Dapper gives you all the flexibility and power of direct SQL with the benefits of rich data manipulation via objects, and is fast, very fast. And I'm sorry, but OOP is a well proven, very effective design strategy if you know what you are doing, i. e. , you are a pro. I see three major problems with the node. js approach that no one seems to have a good answer for. So you start with the premise that there are such inefficiencies in waiting for IO that there is a huge potential there. So yeah, you've got great concurrency, right until you get to the first blocking library, a database, a file server, etc, which is practically every major piece of functionality written. So it's just hurry up and wait for 10,000 connections instead of 100, ok that's something, but where does it get you? So then you start rewriting all those services asynchronously, but that's just a snake eating its own tail, because that's hurry up and wait too. Because in the end every database on earth ultimately comes to a magnetic arm skipping across a disk or reading solid state memory, and that's assuming you're on the same machine, as opposed to distributing data across a pool of far slower network connections. Then you have the single threaded issue. There is probably no more misused language than Javascript because the barriers of entry are so low. And while early adopters might understand a bad practice when they see one, most javascript programmers simply have no idea what they are doing. Thirdly, Javascript is not exactly a particularly fast language, so the advice seems to be don't do compute intensive tasks. Where does that get you? So you end up with an elegant solution to one category of issues, but you're trapped there, with no way out of the non-compute intensive, hurry up and wait ghetto

      M

      The irony is that lambda's (aka, anonymous methods) are the basis of both javascript and the preferred technique for C#'s multiple implementation of the same callback pattern, albeit with full type safety. In fact node's major characteristics (2-way, lightweight, asynchronous has effectively been implemented in C# as "SignalR", and there are several language features which are both asynchronous and natively multithreaded, (unlike node. js). Now I could understand if your experience with ORM's was limited to Hibernate (absolutely awful, one of the worst implementations of a major concept I've ever had the displeasure to work with) or even EF, which least is fairly powerful and expressive due to LINQ, if data nanny overkill. But a micro-ORM like Dapper gives you all the flexibility and power of direct SQL with the benefits of rich data manipulation via objects, and is fast, very fast. And I'm sorry, but OOP is a well proven, very effective design strategy if you know what you are doing, i. e. , you are a pro. I see three major problems with the node. js approach that no one seems to have a good answer for. So you start with the premise that there are such inefficiencies in waiting for IO that there is a huge potential there. So yeah, you've got great concurrency, right until you get to the first blocking library, a database, a file server, etc, which is practically every major piece of functionality written. So it's just hurry up and wait for 10,000 connections instead of 100, ok that's something, but where does it get you? So then you start rewriting all those services asynchronously, but that's just a snake eating its own tail, because that's hurry up and wait too. Because in the end every database on earth ultimately comes to a magnetic arm skipping across a disk or reading solid state memory, and that's assuming you're on the same machine, as opposed to distributing data across a pool of far slower network connections. Then you have the single threaded issue. There is probably no more misused language than Javascript because the barriers of entry are so low. And while early adopters might understand a bad practice when they see one, most javascript programmers simply have no idea what they are doing. Thirdly, Javascript is not exactly a particularly fast language, so the advice seems to be don't do compute intensive tasks. Where does that get you? So you end up with an elegant solution to one category of issues, but you're trapped there, with no way out of the non-compute intensive, hurry up and wait ghetto

      M

      Wow, that is one seriously ignorant statement. Uploading files to webservers is *THE* stated rational of node. js's inventor for why he wanted a non-blocking library. So when you fanboi's break out of the single threaded, slow dynamic world of cut and paste code with zero type safety, multithreading, and only one trick pony (lambdas) to match . Net's multiple asynchronous capablities, (all so that you can get 10x more users to hurry up and wait for IO), then you can lecture us about "sophistication". The . Net framework has a vastly more advanced feature set than any language you can name, period, and IIS, properly configured, can beat the piss out of Apache and can readily match nginx as a reverse proxy or for static content. In the end you've got several problems which are intractable. 1. Javascript is slow, and your technology of choice is single-threaded, so intensive compute tasks are off the table. 2. Javascript debugging and testing blows in comparison with any typed language. Pro's use extensive testing, not fly by the pants 'hey it works'. 3. The 'everything is modular' approach is not an architecture, it's an invitation to chaos, like Perl or PHP. 4. Concurrency doesn't buy you crap if all you are doing is waiting for some other IO bound process, which is pretty much everything worth doing with computers. 5. Chất lượng và kinh nghiệm tay nghề của nhiều lập trình viên javascript (không phải nút. js programmers necessarily, but it's popularity will bring them) is remarkably poor, as demonstrated by comments in which fanboi's prove that they have no idea how other systems that actually don't ignore any computing problem they can't solve work

      M

      Wow, that is one seriously ignorant statement. Uploading files to webservers is *THE* stated rational of node. js's inventor for why he wanted a non-blocking library. So when you fanboi's break out of the single threaded, slow dynamic world of cut and paste code with zero type safety, multithreading, and only one trick pony (lambdas) to match . Net's multiple asynchronous capablities, (all so that you can get 10x more users to hurry up and wait for IO), then you can lecture us about "sophistication". The . Net framework has a vastly more advanced feature set than any language you can name, period, and IIS, properly configured, can beat the piss out of Apache and can readily match nginx as a reverse proxy or for static content. In the end you've got several problems which are intractable. 1. Javascript is slow, and your technology of choice is single-threaded, so intensive compute tasks are off the table. 2. Javascript debugging and testing blows in comparison with any typed language. Pro's use extensive testing, not fly by the pants 'hey it works'. 3. The 'everything is modular' approach is not an architecture, it's an invitation to chaos, like Perl or PHP. 4. Concurrency doesn't buy you crap if all you are doing is waiting for some other IO bound process, which is pretty much everything worth doing with computers. 5. Chất lượng và kinh nghiệm tay nghề của nhiều lập trình viên javascript (không phải nút. js programmers necessarily, but it's popularity will bring them) is remarkably poor, as demonstrated by comments in which fanboi's prove that they have no idea how other systems that actually don't ignore any computing problem they can't solve work

      Lambda Pool

      ORM is just a work around for the problem of impedance mismatch, nothing else. Its not big giảm giá, about OO its a cross paradigm like AOP and its not really based in nothing else beyond encapsulation. Without procedural paradigm OO does nothing, every real skilled programmer already knows that

      Lambda Pool

      ORM is just a work around for the problem of impedance mismatch, nothing else. Its not big giảm giá, about OO its a cross paradigm like AOP and its not really based in nothing else beyond encapsulation. Without procedural paradigm OO does nothing, every real skilled programmer already knows that

      M

      Impedance mismatch involves all sorts of ramifications, especially in regards to maintainability, portability, extensibility and performance. To quote Ethan above (since my explanation obviously didn't take). ". it's a tool used to encapsulate database concerns, isolating them from the application. There are several benefits, but ultimately, it makes applications easier to test and maintain years down the road. " "about OO its a cross paradigm like AOP and its not really based in nothing else beyond encapsulation. Without procedural paradigm OO does nothing" Ok, I'll be sure to spread the word that we should stop fooling around with all this esoteric OOP stuff and get back to a language that lets us do everything vis-a-vis encapsulation. VB6. You'd think a Javascript programmer might want to mention inheritance, if not polymorphism, since javascript has a relatively unusual mechanism for it. prototypes

      M

      Impedance mismatch involves all sorts of ramifications, especially in regards to maintainability, portability, extensibility and performance. To quote Ethan above (since my explanation obviously didn't take). ". it's a tool used to encapsulate database concerns, isolating them from the application. There are several benefits, but ultimately, it makes applications easier to test and maintain years down the road. " "about OO its a cross paradigm like AOP and its not really based in nothing else beyond encapsulation. Without procedural paradigm OO does nothing" Ok, I'll be sure to spread the word that we should stop fooling around with all this esoteric OOP stuff and get back to a language that lets us do everything vis-a-vis encapsulation. VB6. You'd think a Javascript programmer might want to mention inheritance, if not polymorphism, since javascript has a relatively unusual mechanism for it. prototypes

      M

      A singleton is an instantiable (non-static) object with a private constructor so that only a single instance can be created. (Imagine an instance class with a static property exposing an instance of itself that depends upon a private instance constructor). It was actually implemented in Java before . Net existed. Perhaps what you are thinking of is a non-blocking Callback mechanism, which is handled in C# via delegates, events (multicast delegates) and the new async and await keywords that transform standard C# into a lambda to be executed compile time. It also handles multi-threaded asynchronous operations via it's Parallel extensions, which permit spreading load across multiple threads/cores as long as that work is not serial in nature. Also, I would encourage you to check out a micro-ORM like Dapper. Nó kém toàn diện hơn nhiều so với EF, nhưng nó linh hoạt hơn nhiều và không khiến khó dễ, cộng với nó hiệu suất cao hơn đáng kể so với Hibernate và EF (nhanh hơn khoảng chừng 5 lần để đọc)

      M

      A singleton is an instantiable (non-static) object with a private constructor so that only a single instance can be created. (Imagine an instance class with a static property exposing an instance of itself that depends upon a private instance constructor). It was actually implemented in Java before . Net existed. Perhaps what you are thinking of is a non-blocking Callback mechanism, which is handled in C# via delegates, events (multicast delegates) and the new async and await keywords that transform standard C# into a lambda to be executed compile time. It also handles multi-threaded asynchronous operations via it's Parallel extensions, which permit spreading load across multiple threads/cores as long as that work is not serial in nature. Also, I would encourage you to check out a micro-ORM like Dapper. Nó kém toàn diện hơn nhiều so với EF, nhưng nó linh hoạt hơn nhiều và không khiến khó dễ, cộng với nó hiệu suất cao hơn đáng kể so với Hibernate và EF (nhanh hơn khoảng chừng 5 lần để đọc)

      Qalandr

      Yes this article rocked tits. Esp tốt cho những người dân Croatia có ESL. ;) #nodeboy

      Qalandr

      Yes this article rocked tits. Esp tốt cho những người dân Croatia có ESL. ;) #nodeboy

      Ty Turner

      Chúng tôi đang tìm kiếm một Nút. js developer. Please see . //altaits. com/careers/search-jobs/ for details. Thank you

      Ty Turner

      Chúng tôi đang tìm kiếm một Nút. js developer. Please see . //altaits. com/careers/search-jobs/ for details. Thank you

      Vob Bobily

      Vì vậy, sau khi đọc nội dung bài viết của bạn, tôi vẫn chưa hiểu tại sao Node js muốn phát minh lại bánh xe. Tôi vẫn nghĩ nút js và lượt thích là tào lao

      Vob Bobily

      Vì vậy, sau khi đọc nội dung bài viết của bạn, tôi vẫn chưa hiểu tại sao Node js muốn phát minh lại bánh xe. Tôi vẫn nghĩ nút js và lượt thích là tào lao

      cintalauraramarimari

      A great introduction to find out what it is JavaScript and once the answer to from bagaimana tips mengatasi wanita frigid

      cintalauraramarimari

      A great introduction to find out what it is JavaScript and once the answer to from bagaimana tips mengatasi wanita frigid

      Đa-ni-ên

      Noob questions. Um, isn't the ease with which you can move request data (i. e. untrusted data) into database (where data is assumed to be trusted) a big hazard? How do you ensure that you never forget to inspect every piece of incoming data when it arrives, before you start trusting it? Generally, I would assume something as popular as Node. js would have thought of this, but I remember back when Rails had blanket model update. That changed real quick when Github's use of this "feature" was exploited (fortunately, by a whitehat). Also, of course, just because you add a conversion speed bump does not mean that people won't make mistakes, but least they're more likely to give it some thought, which probably means they're going to make less mistakes

      Đa-ni-ên

      Noob questions. Um, isn't the ease with which you can move request data (i. e. untrusted data) into database (where data is assumed to be trusted) a big hazard? How do you ensure that you never forget to inspect every piece of incoming data when it arrives, before you start trusting it? Generally, I would assume something as popular as Node. js would have thought of this, but I remember back when Rails had blanket model update. That changed real quick when Github's use of this "feature" was exploited (fortunately, by a whitehat). Also, of course, just because you add a conversion speed bump does not mean that people won't make mistakes, but least they're more likely to give it some thought, which probably means they're going to make less mistakes

      Q.

      I don't understand the angst against using an ORM. Were you in a proper environment where concerns were separated? The ones bashing ORM just sound like they don't know what they're doing or how to engineer proper software. Tại sao tôi lại muốn chuyển từ việc viết phần mềm bằng Java/C#/_whatever_ sang SQL, nơi khó phiên bản, kiểm tra đúng cách và rõ ràng hoàn toàn có thể gây tổn thương não nghiêm trọng? . Depending on the situation raw SQL might be best. it might be better to use a NoSQL store. maybe an ORM is fine. Usually, from my experience, I can tell you that an ORM is better for a lot of reasons, and they have been relayed by M. I spent the time to write my own libraries to abstract vendor specific implementations and you need to create your own mappings. You can easily spawn from a certain state or use existing data structures. It took time to write my libraries and it was not easy all to do it but it was well worth my time to do it since I can now reuse my libraries. Is it the BEST? I don't know. I like it but I certainly won't go around to arbitrary technical articles that have nothing to do about SQL and post something like "Yes this technology is good but stay away from raw SQL. " I just don't see a need to be bashing anything here, especially an ORM when the article is exclusively about JS and NodeJS

      Q.

      I don't understand the angst against using an ORM. Were you in a proper environment where concerns were separated? The ones bashing ORM just sound like they don't know what they're doing or how to engineer proper software. Tại sao tôi lại muốn chuyển từ việc viết phần mềm bằng Java/C#/_whatever_ sang SQL, nơi khó phiên bản, kiểm tra đúng cách và rõ ràng hoàn toàn có thể gây tổn thương não nghiêm trọng? . Depending on the situation raw SQL might be best. it might be better to use a NoSQL store. maybe an ORM is fine. Usually, from my experience, I can tell you that an ORM is better for a lot of reasons, and they have been relayed by M. I spent the time to write my own libraries to abstract vendor specific implementations and you need to create your own mappings. You can easily spawn from a certain state or use existing data structures. It took time to write my libraries and it was not easy all to do it but it was well worth my time to do it since I can now reuse my libraries. Is it the BEST? I don't know. I like it but I certainly won't go around to arbitrary technical articles that have nothing to do about SQL and post something like "Yes this technology is good but stay away from raw SQL. " I just don't see a need to be bashing anything here, especially an ORM when the article is exclusively about JS and NodeJS

      Michael

      Probably one of the main points of this article, that gives Node is supposed scalability, is the offloading to a Queue or Service Bus that leads to asynchronous processing. That is a well proven architectural pattern, available in many languages, is especially used in CQRS (Command Query Responsibility Segregation) with Event Sourcing, is very well suited to be used by technologies such . Net Reactive Extensions that provide considerably greater functionality and flexibility than Node. Asynchronous programming and handling its pitfalls has been around without Node for years, if you had knowledge of enterprise development. As for the hate against ORMs. you guys crticising it seem to be moving from front-end development into an area where you have no knowledge or expertise in OO, BDD, TDD or any other proven Enterprise level methodology. No concept of integration other than feeds. No experience of complex Workflow or scalable caching. This is one of the dangers - you know JavaScript, and a bit of SQL. So everything else is superfluous - until you need it, such as the attempts to bring an element of type checking to JavaScript. Seriously, each technology has its place, but there is no one size fits all approach. Appreciate the strengths of each technology, and use them where appropriate

      Michael

      Probably one of the main points of this article, that gives Node is supposed scalability, is the offloading to a Queue or Service Bus that leads to asynchronous processing. That is a well proven architectural pattern, available in many languages, is especially used in CQRS (Command Query Responsibility Segregation) with Event Sourcing, is very well suited to be used by technologies such . Net Reactive Extensions that provide considerably greater functionality and flexibility than Node. Asynchronous programming and handling its pitfalls has been around without Node for years, if you had knowledge of enterprise development. As for the hate against ORMs. you guys crticising it seem to be moving from front-end development into an area where you have no knowledge or expertise in OO, BDD, TDD or any other proven Enterprise level methodology. No concept of integration other than feeds. No experience of complex Workflow or scalable caching. This is one of the dangers - you know JavaScript, and a bit of SQL. So everything else is superfluous - until you need it, such as the attempts to bring an element of type checking to JavaScript. Seriously, each technology has its place, but there is no one size fits all approach. Appreciate the strengths of each technology, and use them where appropriate

      Reo

      Great introduction to node. js. Thanks, i samo naprjed

      Reo

      Great introduction to node. js. Thanks, i samo naprjed

      Richard Bellantoni

      Because they suck for a complex application. Sure if your scenario where you spent all this time trying to make the ORM work the way you need it to, you could have just put that same effort into writing the SQL properly and making sure it's organized etc and you would be further along in the project and have more control over the application. ORM's are great saving time on a small to medium scale project, but once you delve into more complex and larger applications, you're going to spend either A. ) Mất nhiều thời gian viết mã để làm cho ORM hoạt động và sinh hoạt giải trí theo cách bạn cần hoặc B. ) Just decide to write the SQL yourself because the time it takes to make the tool work how you need it just isn't worth it

      Richard Bellantoni

      Because they suck for a complex application. Sure if your scenario where you spent all this time trying to make the ORM work the way you need it to, you could have just put that same effort into writing the SQL properly and making sure it's organized etc and you would be further along in the project and have more control over the application. ORM's are great saving time on a small to medium scale project, but once you delve into more complex and larger applications, you're going to spend either A. ) Mất nhiều thời gian viết mã để làm cho ORM hoạt động và sinh hoạt giải trí theo cách bạn cần hoặc B. ) Just decide to write the SQL yourself because the time it takes to make the tool work how you need it just isn't worth it

      sinta maharani

      JavaScript is better than some of the other programming languages. therefore cara menghilangkan gatal keputihan better fit with JavaScript

      sinta maharani

      JavaScript is better than some of the other programming languages. therefore cara menghilangkan gatal keputihan better fit with JavaScript

      naseya10

      Great, informative article. Thanks for sharing this. Unlockpwd

      naseya10

      Great, informative article. Thanks for sharing this. Unlockpwd

      Eric Elliott

      Pot, meet kettle. Đó hoàn toàn có thể là những vấn đề nan giải nếu bất kỳ vấn đề nào trong số đó là sự việc thật. None of them are. 1. a) Ngày nay, JavaScript hoàn toàn là JIT và mang lại hiệu suất mã gốc gấp 1-2 lần (nhanh hơn bất kỳ ngôn từ động nào khác mà tôi biết). b) Không chặn theo mặc định hoàn toàn có thể mang lại những tăng cấp cải tiến về mức độ hiệu suất cao của mã - một cách minh bạch. 2. Hầu như tất cả những trình soạn thảo tân tiến đều tương hỗ suy luận kiểu cho JS. ESLint, Closure Compiler, and a number of other options offer sophisticated static analysis capabilities. TypeScript even offers a nice structural type system. 3. The opposite of modular is a tightly coupled monolith. That's a bad idea in ANY language. 4. "nếu tất cả những gì bạn đang làm là chờ đón một số trong những quy trình ràng buộc IO khác" - Không chặn theo mặc định nghĩa là bạn KHÔNG BAO GIỜ chờ đón một số trong những quy trình ràng buộc IO khác. That's why Node delivers such huge improvements on resource utilization. 5. 2006 được gọi là. They want their language-snob attitude back. The days when serious engineers considered JS to be a toy are long since over. JS powers sophisticated enterprise applications just about every fortune 500 today. Additional point. JS is the only language with fully native support for isomorphic code (meaning you reuse most of your application on both servers and clients). You can write JS ONCE, and it will power the server, the web browser, and mobile devices including iOS and Android. See React Native. https. // leanpub. com/learn-javascript-react-nodejs-es6/

      Eric Elliott

      Pot, meet kettle. Đó hoàn toàn có thể là những vấn đề nan giải nếu bất kỳ vấn đề nào trong số đó là sự việc thật. None of them are. 1. a) Ngày nay, JavaScript hoàn toàn là JIT và mang lại hiệu suất mã gốc gấp 1-2 lần (nhanh hơn bất kỳ ngôn từ động nào khác mà tôi biết). b) Không chặn theo mặc định hoàn toàn có thể mang lại những tăng cấp cải tiến về mức độ hiệu suất cao của mã - một cách minh bạch. 2. Hầu như tất cả những trình soạn thảo tân tiến đều tương hỗ suy luận kiểu cho JS. ESLint, Closure Compiler, and a number of other options offer sophisticated static analysis capabilities. TypeScript even offers a nice structural type system. 3. The opposite of modular is a tightly coupled monolith. That's a bad idea in ANY language. 4. "nếu tất cả những gì bạn đang làm là chờ đón một số trong những quy trình ràng buộc IO khác" - Không chặn theo mặc định nghĩa là bạn KHÔNG BAO GIỜ chờ đón một số trong những quy trình ràng buộc IO khác. That's why Node delivers such huge improvements on resource utilization. 5. 2006 được gọi là. They want their language-snob attitude back. The days when serious engineers considered JS to be a toy are long since over. JS powers sophisticated enterprise applications just about every fortune 500 today. Additional point. JS is the only language with fully native support for isomorphic code (meaning you reuse most of your application on both servers and clients). You can write JS ONCE, and it will power the server, the web browser, and mobile devices including iOS and Android. See React Native. https. // leanpub. com/learn-javascript-react-nodejs-es6/

      M

      1) 1-2x native code performance? Do the electrons run faster on node code? Not a good start. 2) Type inference is mapping variable declarations to types without explicit syntax, i. e. , a) nó yêu cầu nhiều chủng loại thực tế và b) trình biên dịch thực thi bảo vệ an toàn và đáng tin cậy loại, không phải trình sửa đổi. And you can dress it up any way you want, but there is no way to enforce sophisticated state analysis with slop-tastic dictionaries of whatever stored in strings & functional delegates. Also, Typescript is not Javascript, it is Javascript with a half-assed type system pasted on top. Even Google is abandoning Js for Typescript in Angular 2. 0 Why? Because Google has decided that an untyped system is insufficient for serious work. But is that type system anywhere near as sophisticated as a compiled language? Nope, not even close. 3) You are misunderstanding what I was characterizing as "modular design". The alternative is not monolithic code, but encapsulation, specialization via inheritance (or prototyping), polymorphism, and externalizing dependencies via IoC. The alternative is SOLID, i. e. , modern Object Orientation. 4) Your process may not be waiting, but your customers are waiting for the callback. My point is that being able to serve more requests doesn't do you any good if every served request then has to wait on yet another operation. In the end, somewhere somehow, you will eventually be going to a disk or waiting for IO, because that's where the information the customer wants lives. 5) Tôi không nói rằng JavaScript là ngôn từ đồ chơi, tôi đã nói rằng hầu hết những nhà phát triển JavaScript đều có ý tốt, cắt và dán nghiệp dư và họ sẽ xâm chiếm hàng ngũ nút. js khi nó trở nên phổ biến hơn. I'll take a strong type system over "full native support" (that's not native) for "isometric" code that can run on clients or servers [you say that like that's a good thing] any day. Wow, Js on android and iOS. I guess the days of Apple adding another strongly typed, native language for iOS are over Obviously you've never heard of Mono, the cross platform . Net that compiles and runs on every major OS, produces native runtimes for all three major mobile platforms, and runs on everything from beowulf clusters to wearable devices. This is why we don't respect you. You don't know or understand anything that came before, or anything outside of your javascript bubble. Bạn không xử lý và xử lý bất kỳ vấn đề nào không được xử lý và xử lý trước đây, nhưng bạn tin rằng mình có tất cả những câu vấn đáp. That seems to be a common theme with anyone whose education system stressed self-esteem over critical thinking

      M

      1) 1-2x native code performance? Do the electrons run faster on node code? Not a good start. 2) Type inference is mapping variable declarations to types without explicit syntax, i. e. , a) nó yêu cầu nhiều chủng loại thực tế và b) trình biên dịch thực thi bảo vệ an toàn và đáng tin cậy loại, không phải trình sửa đổi. And you can dress it up any way you want, but there is no way to enforce sophisticated state analysis with slop-tastic dictionaries of whatever stored in strings & functional delegates. Also, Typescript is not Javascript, it is Javascript with a half-assed type system pasted on top. Even Google is abandoning Js for Typescript in Angular 2. 0 Why? Because Google has decided that an untyped system is insufficient for serious work. But is that type system anywhere near as sophisticated as a compiled language? Nope, not even close. 3) You are misunderstanding what I was characterizing as "modular design". The alternative is not monolithic code, but encapsulation, specialization via inheritance (or prototyping), polymorphism, and externalizing dependencies via IoC. The alternative is SOLID, i. e. , modern Object Orientation. 4) Your process may not be waiting, but your customers are waiting for the callback. My point is that being able to serve more requests doesn't do you any good if every served request then has to wait on yet another operation. In the end, somewhere somehow, you will eventually be going to a disk or waiting for IO, because that's where the information the customer wants lives. 5) Tôi không nói rằng JavaScript là ngôn từ đồ chơi, tôi đã nói rằng hầu hết những nhà phát triển JavaScript đều có ý tốt, cắt và dán nghiệp dư và họ sẽ xâm chiếm hàng ngũ nút. js khi nó trở nên phổ biến hơn. I'll take a strong type system over "full native support" (that's not native) for "isometric" code that can run on clients or servers [you say that like that's a good thing] any day. Wow, Js on android and iOS. I guess the days of Apple adding another strongly typed, native language for iOS are over Obviously you've never heard of Mono, the cross platform . Net that compiles and runs on every major OS, produces native runtimes for all three major mobile platforms, and runs on everything from beowulf clusters to wearable devices. This is why we don't respect you. You don't know or understand anything that came before, or anything outside of your javascript bubble. Bạn không xử lý và xử lý bất kỳ vấn đề nào không được xử lý và xử lý trước đây, nhưng bạn tin rằng mình có tất cả những câu vấn đáp. That seems to be a common theme with anyone whose education system stressed self-esteem over critical thinking

      Eric Elliott

      This reply just strikes me as willful ignorance. 1. Có thật không? . Watch Brendan Eich's Fluent talks if you're interested in actually learning something. 2. I know what types and type inference are, and I know the benefits of static types. Tôi đã tham gia trò chơi này từ trước khi JavaScript được phát minh. TypeScript là một siêu bộ JavaScript biên dịch thành JS & được cho phép phân tích tĩnh tinh vi. It's structural type system is better than the type system Java had back when I was coding in Java, and it's much better (as in more reliable and flexible) than C and C++. 3. "encapsulation, specialization via inheritance (or prototyping), polymorphism, and externalizing dependencies via IoC" - these are all forms of modularity, and JavaScript modules provide viable alternatives to all of them - and in the case of class inheritance, it's far superior. See https. //medium. com/javascript-scene/the-two-pillars-of-javascript-ee6f3281e7f3 4. "your customers are waiting for the callback. " Fortunately, that's where the performance I talked about in point 1 shines. JS provides efficient utilization of I/O resources. Trên thực tế, xử lý tắc nghẽn I/O là toàn bộ nguyên do mà Node được phát minh. I've ported several large production projects from PHP and Ruby to Node, and seen dramatic reductions in response times, both average response times and response time ranges - and since a typical Node app utilizes a small fraction of the memory required for C# applications, your customer I/O competes less with the RAM paging you might experience with a compiled C# application. 5. "you say that like that's a good thing" I've seen objectively measurable increases in team velocity ranging from 40% - 60% improvements. Believe it or not, it's a fact, and being more able to adapt to changing needs and experiment more (particularly in the UI layer) delivers very real business value. Bạn nghĩ tại sao rất nhiều tổ chức doanh nghiệp đang áp dụng Node? . It's because they ran the tests themselves and figured out it's a huge win. "Obviously you've never heard of Mono, the cross platform . Net that compiles and runs on every major OS" Yeah, I have - what I haven't heard of is Mono delivering anywhere near the value that Node delivers in enterprise production. Có một nội dung bài viết tốt về điều đó? . Check out this awesome result in the top 3 of the SERP. . //www. quora. com/Why-isnt-C-with-Mono-popular-for-enterprise-applications-on-Linux-servers . but a quick Google search for Enterprise Node. js delivers quite a bit. Here are the top 3 search results I see. . //blog. risingstack. com/node-js-is-enterprise-ready/ https. //www. joyent. com/nodejs-support https. //www. centurylinkcloud. com/blog/post/node-js-is-taking-over-the-enterprise-whether-you-like-it-or-not/ There's really no contest here

      Eric Elliott

      This reply just strikes me as willful ignorance. 1. Có thật không? . Watch Brendan Eich's Fluent talks if you're interested in actually learning something. 2. I know what types and type inference are, and I know the benefits of static types. Tôi đã tham gia trò chơi này từ trước khi JavaScript được phát minh. TypeScript là một siêu bộ JavaScript biên dịch thành JS & được cho phép phân tích tĩnh tinh vi. It's structural type system is better than the type system Java had back when I was coding in Java, and it's much better (as in more reliable and flexible) than C and C++. 3. "encapsulation, specialization via inheritance (or prototyping), polymorphism, and externalizing dependencies via IoC" - these are all forms of modularity, and JavaScript modules provide viable alternatives to all of them - and in the case of class inheritance, it's far superior. See https. //medium. com/javascript-scene/the-two-pillars-of-javascript-ee6f3281e7f3 4. "your customers are waiting for the callback. " Fortunately, that's where the performance I talked about in point 1 shines. JS provides efficient utilization of I/O resources. Trên thực tế, xử lý tắc nghẽn I/O là toàn bộ nguyên do mà Node được phát minh. I've ported several large production projects from PHP and Ruby to Node, and seen dramatic reductions in response times, both average response times and response time ranges - and since a typical Node app utilizes a small fraction of the memory required for C# applications, your customer I/O competes less with the RAM paging you might experience with a compiled C# application. 5. "you say that like that's a good thing" I've seen objectively measurable increases in team velocity ranging from 40% - 60% improvements. Believe it or not, it's a fact, and being more able to adapt to changing needs and experiment more (particularly in the UI layer) delivers very real business value. Bạn nghĩ tại sao rất nhiều tổ chức doanh nghiệp đang áp dụng Node? . It's because they ran the tests themselves and figured out it's a huge win. "Obviously you've never heard of Mono, the cross platform . Net that compiles and runs on every major OS" Yeah, I have - what I haven't heard of is Mono delivering anywhere near the value that Node delivers in enterprise production. Có một nội dung bài viết tốt về điều đó? . Check out this awesome result in the top 3 of the SERP. . //www. quora. com/Why-isnt-C-with-Mono-popular-for-enterprise-applications-on-Linux-servers . but a quick Google search for Enterprise Node. js delivers quite a bit. Here are the top 3 search results I see. . //blog. risingstack. com/node-js-is-enterprise-ready/ https. //www. joyent. com/nodejs-support https. //www. centurylinkcloud. com/blog/post/node-js-is-taking-over-the-enterprise-whether-you-like-it-or-not/ There's really no contest here

      M

      1, vâng, tôi đang chế nhạo tuyên bố rõ ràng là tình cờ của bạn rằng JavaScript làm cho những điện tử chạy nhanh hơn hoặc thậm chí nhanh như bản địa, chính bới đó là bằng sáng chế vô nghĩa. Not only is that impossible, it ignores one of node. js' acknowledged weaknesses. It sucks on compute intensive operations, because it's single threaded, which means compute intensive operations block execution. duh. 2. Kiến thức về Java của bạn không đủ để bạn hiểu khối mạng lưới hệ thống loại có thẩm quyền là gì. Java's generics are a largely useless, johnny come lately me-too feature when compared against to C# generics because they suffer from run-time erasure, in other words, the generic type safety and reflection only works compile time, because run time, everything is cast to an object. So when you are going on about static analysis, you are effectively trying to claim it's as good as compile time + run time type reflection, which is very far from the truth. 3. meh. Việc chia nhỏ mọi thứ thành những hiệu suất cao riêng biệt cũng là một dạng mô-đun, nhưng nó kém hơn rất nhiều so với RẮN, đó là quan điểm của tôi ngay từ đầu. Và tuy nhiên thừa kế nhờ vào nguyên mẫu rất thú vị, nhưng nó khó tốt hơn thừa kế thực, được cho phép sắp xếp linh hoạt hơn nhiều. 4. Tôi không thấy việc tăng tốc ứng dụng Ruby hay cấu trúc lại một số trong những PHP nhảm nhí thành thứ gì đó nhanh hơn ấn tượng ra làm sao. Yêu cầu ngân sách bộ nhớ của bạn là vô địa thế căn cứ như nhau. Tôi hoàn toàn có thể chạy micro. Net trên đồng hồ hoặc trên thiết bị arduino. tôi hoàn toàn có thể viết. Net chạy rất tốt trên điện thoại yếu. Xem bộ nhớ mà chrome tiêu thụ cho một SPA hoặc thử chạy một ứng dụng javascript phức tạp trên Tablet rồi cho tôi biết JavaScript "nhẹ" ra làm sao. 5. Việc thiếu sự phân tách hợp lý những mối quan tâm (là nguyên nhân của hầu hết những vấn đề về kĩ năng bảo dưỡng) là vấn đề số một mà tôi gặp phải ở những người dân tiêu dùng có quy mô doanh nghiệp và tốc độ thao tác nhóm ấn tượng luôn là cách họ đạt được điều đó. Why do I think a number of organizations are choosing node? Because typically a mediocre, over-sized team of moderate competence f'd up the previously shiny new thing that was supposed to solve all their problems, so they want to believe the hype that the problem is not them, but their previous technology choices

      M

      1, vâng, tôi đang chế nhạo tuyên bố rõ ràng là tình cờ của bạn rằng JavaScript làm cho những điện tử chạy nhanh hơn hoặc thậm chí nhanh như bản địa, chính bới đó là bằng sáng chế vô nghĩa. Not only is that impossible, it ignores one of node. js' acknowledged weaknesses. It sucks on compute intensive operations, because it's single threaded, which means compute intensive operations block execution. duh. 2. Kiến thức về Java của bạn không đủ để bạn hiểu khối mạng lưới hệ thống loại có thẩm quyền là gì. Java's generics are a largely useless, johnny come lately me-too feature when compared against to C# generics because they suffer from run-time erasure, in other words, the generic type safety and reflection only works compile time, because run time, everything is cast to an object. So when you are going on about static analysis, you are effectively trying to claim it's as good as compile time + run time type reflection, which is very far from the truth. 3. meh. Việc chia nhỏ mọi thứ thành những hiệu suất cao riêng biệt cũng là một dạng mô-đun, nhưng nó kém hơn rất nhiều so với RẮN, đó là quan điểm của tôi ngay từ đầu. Và tuy nhiên thừa kế nhờ vào nguyên mẫu rất thú vị, nhưng nó khó tốt hơn thừa kế thực, được cho phép sắp xếp linh hoạt hơn nhiều. 4. Tôi không thấy việc tăng tốc ứng dụng Ruby hay cấu trúc lại một số trong những PHP nhảm nhí thành thứ gì đó nhanh hơn ấn tượng ra làm sao. Yêu cầu ngân sách bộ nhớ của bạn là vô địa thế căn cứ như nhau. Tôi hoàn toàn có thể chạy micro. Net trên đồng hồ hoặc trên thiết bị arduino. tôi hoàn toàn có thể viết. Net chạy rất tốt trên điện thoại yếu. Xem bộ nhớ mà chrome tiêu thụ cho một SPA hoặc thử chạy một ứng dụng javascript phức tạp trên Tablet rồi cho tôi biết JavaScript "nhẹ" ra làm sao. 5. Việc thiếu sự phân tách hợp lý những mối quan tâm (là nguyên nhân của hầu hết những vấn đề về kĩ năng bảo dưỡng) là vấn đề số một mà tôi gặp phải ở những người dân tiêu dùng có quy mô doanh nghiệp và tốc độ thao tác nhóm ấn tượng luôn là cách họ đạt được điều đó. Why do I think a number of organizations are choosing node? Because typically a mediocre, over-sized team of moderate competence f'd up the previously shiny new thing that was supposed to solve all their problems, so they want to believe the hype that the problem is not them, but their previous technology choices

      Eric Elliott

      1. I think you misunderstood my meaning. JS chạy CHẬM 1-2 lần so với ngôn từ bản địa -- hiệu năng tốt hơn nhiều so với bất kỳ ngôn từ động nào khác mà tôi biết. It's fast enough to run AAA trò chơi engines like Unreal Engine and Unity in stunning quality 60+ fps. 2. I actually think that a good native type tool would be a good addition to JavaScript, but only if they're user-definable structural types. Điều đó nói rằng, JavaScript tương hỗ phân tích tĩnh thông qua suy luận kiểu và có một số trong những phương pháp để đáp ứng gợi ý kiểu cho những công cụ dành riêng cho nhà phát triển. In addition, JavaScript also has an impressive array of runtime analysis tools. 3. "hardly better than real inheritance, which permits far more flexible arrangements. " Sai. https. //medium. com/javascript-scene/the-two-pillars-of-javascript-ee6f3281e7f3 4. My apologies. Tôi đã không biết về vi mô. Net. JavaScript also runs as-is on low-powered devices including Arduino, Tessel, and a number of others. Node works great on most of them. Nếu điều đó không đủ nhỏ, bạn hoàn toàn có thể tạo một trình biên dịch Node tùy chỉnh, vô hiệu những tính năng, thậm chí hoán đổi công cụ V8 cho một công cụ JS khác nếu bạn cần. Bạn cũng hoàn toàn có thể hạn chế sử dụng những thư viện JS nhỏ (trong đó có rất nhiều trên npm) để giữ cho cơ sở mã của bạn nhỏ gọn. 5. ". they want to believe the hype that the problem is not them, but their previous technology choices. " That might explain an experiment or two, but the Node takeover is much more than that. Chúng tôi đang nhanh gọn thay thế những ứng dụng bằng nhiều ngôn từ rất khác nhau bằng Node. Having worked a fortune 500 during the transition to Node, I can tell you our justifications. We did experimental ports to Node, found. 1. that the app was faster and more reliable, delivering huge wins in both average response time, and the number of requests we could serve with the same machine, and 2. The developers were more productive for a variety of reasons, including the fact that JavaScript specialists could more easily work on both sides of the stack without context switching, and a lot of code could be shared in both the server and the client. Those advantages have real, measurable influences on the company's bottom line. That's why Node is taking over both startups and enterprise companies

      Eric Elliott

      1. I think you misunderstood my meaning. JS chạy CHẬM 1-2 lần so với ngôn từ bản địa -- hiệu năng tốt hơn nhiều so với bất kỳ ngôn từ động nào khác mà tôi biết. It's fast enough to run AAA trò chơi engines like Unreal Engine and Unity in stunning quality 60+ fps. 2. I actually think that a good native type tool would be a good addition to JavaScript, but only if they're user-definable structural types. Điều đó nói rằng, JavaScript tương hỗ phân tích tĩnh thông qua suy luận kiểu và có một số trong những phương pháp để đáp ứng gợi ý kiểu cho những công cụ dành riêng cho nhà phát triển. In addition, JavaScript also has an impressive array of runtime analysis tools. 3. "hardly better than real inheritance, which permits far more flexible arrangements. " Sai. https. //medium. com/javascript-scene/the-two-pillars-of-javascript-ee6f3281e7f3 4. My apologies. Tôi đã không biết về vi mô. Net. JavaScript also runs as-is on low-powered devices including Arduino, Tessel, and a number of others. Node works great on most of them. Nếu điều đó không đủ nhỏ, bạn hoàn toàn có thể tạo một trình biên dịch Node tùy chỉnh, vô hiệu những tính năng, thậm chí hoán đổi công cụ V8 cho một công cụ JS khác nếu bạn cần. Bạn cũng hoàn toàn có thể hạn chế sử dụng những thư viện JS nhỏ (trong đó có rất nhiều trên npm) để giữ cho cơ sở mã của bạn nhỏ gọn. 5. ". they want to believe the hype that the problem is not them, but their previous technology choices. " That might explain an experiment or two, but the Node takeover is much more than that. Chúng tôi đang nhanh gọn thay thế những ứng dụng bằng nhiều ngôn từ rất khác nhau bằng Node. Having worked a fortune 500 during the transition to Node, I can tell you our justifications. We did experimental ports to Node, found. 1. that the app was faster and more reliable, delivering huge wins in both average response time, and the number of requests we could serve with the same machine, and 2. The developers were more productive for a variety of reasons, including the fact that JavaScript specialists could more easily work on both sides of the stack without context switching, and a lot of code could be shared in both the server and the client. Those advantages have real, measurable influences on the company's bottom line. That's why Node is taking over both startups and enterprise companies

      Kesava Velugubantla

      đặc biệt là với cạnh nó thực sự tiện dụng

      Kesava Velugubantla

      đặc biệt là với cạnh nó thực sự tiện dụng

      pawan kumar

      Cảm ơn Tamisalv Tôi đang tìm tài liệu tham khảo đọc nhanh để hiểu về nút. js và tại sao những dự án công trình bất Động sản hoàn toàn có thể sử dụng nó. Đọc điều này giúp tôi làm rõ hơn về những ưu điểm của công nghệ tiên tiến này và cả khi người ta hoàn toàn có thể sử dụng nó. Chúc mừng

      pawan kumar

      Cảm ơn Tamisalv Tôi đang tìm tài liệu tham khảo đọc nhanh để hiểu về nút. js và tại sao những dự án công trình bất Động sản hoàn toàn có thể sử dụng nó. Đọc điều này giúp tôi làm rõ hơn về những ưu điểm của công nghệ tiên tiến này và cả khi người ta hoàn toàn có thể sử dụng nó. Chúc mừng

      Jay

      "Sau hơn 20 năm web không trạng thái nhờ vào quy mô phản hồi yêu cầu không trạng thái, ở đầu cuối chúng tôi cũng luôn có thể có những ứng dụng web với link hai chiều, thời gian thực. " Kết quả là ngày này chúng tôi có những trang web mất nhiều thời gian tải hơn khi chúng tôi có tốc độ Internet theo thứ tự megabyte trên giây, so với trước đây khi tốc độ của chúng tôi theo thứ tự byte trên giây nhưng những trang web của chúng tôi đơn giản là HTML. Ngày nay, tất cả chúng ta có những trang web tải nửa chừng rồi tạm dừng, những trang web này gặp sự cố do lỗi mạng nhỏ nhất. e. gán lại địa chỉ IP động hoặc mất tín hiệu WiFi tạm thời buộc bạn phải tải lại toàn bộ trang, trong khi những trình duyệt được thiết kế để xử lý những lỗi đó một cách khôn khéo hoặc tiếp tục sau khi link mạng được Phục hồi, những tập lệnh Javascript có lỗi cũng không xử lý được những lỗi đó

      Jay

      "Sau hơn 20 năm web không trạng thái nhờ vào quy mô phản hồi yêu cầu không trạng thái, ở đầu cuối chúng tôi cũng luôn có thể có những ứng dụng web với link hai chiều, thời gian thực. " Kết quả là ngày này chúng tôi có những trang web mất nhiều thời gian tải hơn khi chúng tôi có tốc độ Internet theo thứ tự megabyte trên giây, so với trước đây khi tốc độ của chúng tôi theo thứ tự byte trên giây nhưng những trang web của chúng tôi đơn giản là HTML. Ngày nay, tất cả chúng ta có những trang web tải nửa chừng rồi tạm dừng, những trang web này gặp sự cố do lỗi mạng nhỏ nhất. e. gán lại địa chỉ IP động hoặc mất tín hiệu WiFi tạm thời buộc bạn phải tải lại toàn bộ trang, trong khi những trình duyệt được thiết kế để xử lý những lỗi đó một cách khôn khéo hoặc tiếp tục sau khi link mạng được Phục hồi, những tập lệnh Javascript có lỗi cũng không xử lý được những lỗi đó

      adroittech

      Tôi chỉ có một thắc mắc ở đây với tuyên bố của bạn. "Hệ thống kiểu cấu trúc của nó tốt hơn khối mạng lưới hệ thống kiểu mà Java đã có khi tôi viết mã bằng Java, và nó tốt hơn nhiều (về độ tin cậy và linh hoạt hơn) so với C và C++. "Tôi không thể lấy cái đó. Thế nào? . C ++ được gõ mạnh hoàn toàn có thể xử lý và xử lý mọi vấn đề, trong cả những lúc xây dựng nút js. Nút tỏa sáng ở i/o không chặn và đó là về nó, nó không thể làm gì khác. Có, bạn hoàn toàn có thể cắt mã nút và làm cho nó hoạt động và sinh hoạt giải trí trên những thiết bị siêu nhỏ nhưng liệu nó có hiệu suất cao và hợp lý không? . Nó không in như I/O không chặn là một chiếc gì đó mới, chúng tôi đã có điều đó trong nhiều công nghệ tiên tiến gồm có java,. Net, cơ bản, python và perl, cái này rất cũ. Lý do duy nhất khiến thứ này trở nên nổi tiếng là nó đã được cho phép hàng triệu nhà phát triển javascript giao diện người tiêu dùng, những người dân không hiểu con trỏ và nói xấu về C ++, viết mã sever, điều này đơn giản là quá sức, đó là nguyên do tại sao buzz. Và về "Nút nói riêng thực sự rất phù hợp để xử lý tính toán phân tán", tại sao người ta lại viết một tuyên bố như vậy? . nó không thể tính toán hiệu suất cao như C/C++/Java. Period. With all due respect, lets not bring C++ in picture here, there is simply no practical comparison all, or it will be very touchy

      adroittech

      Tôi chỉ có một thắc mắc ở đây với tuyên bố của bạn. "Hệ thống kiểu cấu trúc của nó tốt hơn khối mạng lưới hệ thống kiểu mà Java đã có khi tôi viết mã bằng Java, và nó tốt hơn nhiều (về độ tin cậy và linh hoạt hơn) so với C và C++. "Tôi không thể lấy cái đó. Thế nào? . C ++ được gõ mạnh hoàn toàn có thể xử lý và xử lý mọi vấn đề, trong cả những lúc xây dựng nút js. Nút tỏa sáng ở i/o không chặn và đó là về nó, nó không thể làm gì khác. Có, bạn hoàn toàn có thể cắt mã nút và làm cho nó hoạt động và sinh hoạt giải trí trên những thiết bị siêu nhỏ nhưng liệu nó có hiệu suất cao và hợp lý không? . Nó không in như I/O không chặn là một chiếc gì đó mới, chúng tôi đã có điều đó trong nhiều công nghệ tiên tiến gồm có java,. Net, cơ bản, python và perl, cái này rất cũ. Lý do duy nhất khiến thứ này trở nên nổi tiếng là nó đã được cho phép hàng triệu nhà phát triển javascript giao diện người tiêu dùng, những người dân không hiểu con trỏ và nói xấu về C ++, viết mã sever, điều này đơn giản là quá sức, đó là nguyên do tại sao buzz. Và về "Nút nói riêng thực sự rất phù hợp để xử lý tính toán phân tán", tại sao người ta lại viết một tuyên bố như vậy? . nó không thể tính toán hiệu suất cao như C/C++/Java. Period. With all due respect, lets not bring C++ in picture here, there is simply no practical comparison all, or it will be very touchy

      Eric Elliott

      You may be interested in this. https. //Trung bình. com/javascript-scene/what-is-webassembly-the-dawn-of-a-new-era-61256ec5a8f6

      Eric Elliott

      You may be interested in this. https. //Trung bình. com/javascript-scene/what-is-webassembly-the-dawn-of-a-new-era-61256ec5a8f6

      Ken Kopelson

      Trên thực tế, Javascript trong công cụ sever V8 CỰC nhanh. Tuyên bố rằng Javascript không nhanh đã lỗi thời. You combine Node with Chrome and you get a very fast environment. If you understand how Node works, it has an sự kiện loop that processes all code that is ready to run. So, you call a function that has a blocking database call inside and a callback when finished, it allows the the function to be called, which returns immediately allowing you to get on with other things while the database call is being processed. Vì vậy, bạn không "nhanh lên và chờ đón" như bạn nghĩ. You get on with other things, and once the database call finishes, execution will continue to the callback which is invoked after the database call returns. So, you get the same basic abilities as a multi-threaded environment without all the extra overhead incurred by thread-state swapping. Because you don't get "time slicing" you have to be careful that no piece of code takes too long to run, and if it does, you just break it up using packages like "async". I come from a long C, C++, Delphi, Java background, having mastered the multi-threaded paradigm, and I can state assuredly that the Node single-threaded async paradigm is super cool, fast, and highly scalable. NẾU BẠN BIẾT MÌNH ĐANG LÀM GÌ. Nhưng điều đó cũng tương tự đối với bất kỳ công nghệ tiên tiến nào khác. None of these technologies are for neophytes

      Ken Kopelson

      Trên thực tế, Javascript trong công cụ sever V8 CỰC nhanh. Tuyên bố rằng Javascript không nhanh đã lỗi thời. You combine Node with Chrome and you get a very fast environment. If you understand how Node works, it has an sự kiện loop that processes all code that is ready to run. So, you call a function that has a blocking database call inside and a callback when finished, it allows the the function to be called, which returns immediately allowing you to get on with other things while the database call is being processed. Vì vậy, bạn không "nhanh lên và chờ đón" như bạn nghĩ. You get on with other things, and once the database call finishes, execution will continue to the callback which is invoked after the database call returns. So, you get the same basic abilities as a multi-threaded environment without all the extra overhead incurred by thread-state swapping. Because you don't get "time slicing" you have to be careful that no piece of code takes too long to run, and if it does, you just break it up using packages like "async". I come from a long C, C++, Delphi, Java background, having mastered the multi-threaded paradigm, and I can state assuredly that the Node single-threaded async paradigm is super cool, fast, and highly scalable. NẾU BẠN BIẾT MÌNH ĐANG LÀM GÌ. Nhưng điều đó cũng tương tự đối với bất kỳ công nghệ tiên tiến nào khác. None of these technologies are for neophytes

      M

      Một ứng dụng phức tạp đúng là nơi những đối tượng Miền được điều chỉnh tốt và những khối mạng lưới hệ thống con được tách riêng phù hợp là thiết yếu nhất. Nếu bạn đang dành toàn bộ thời gian để nỗ lực làm cho ORM hoạt động và sinh hoạt giải trí, bạn nên tìm hiểu ORM đó tốt hơn hoặc kiếm một ORM khác. Tôi nhận định rằng cái trước tránh việc phải nói vì vậy nếu bạn vẫn đang chiến đấu với ORM của tớ thì đã đến lúc chọn một chiếc vừa hoạt động và sinh hoạt giải trí

      M

      Một ứng dụng phức tạp đúng là nơi những đối tượng Miền được điều chỉnh tốt và những khối mạng lưới hệ thống con được tách riêng phù hợp là thiết yếu nhất. Nếu bạn đang dành toàn bộ thời gian để nỗ lực làm cho ORM hoạt động và sinh hoạt giải trí, bạn nên tìm hiểu ORM đó tốt hơn hoặc kiếm một ORM khác. Tôi nhận định rằng cái trước tránh việc phải nói vì vậy nếu bạn vẫn đang chiến đấu với ORM của tớ thì đã đến lúc chọn một chiếc vừa hoạt động và sinh hoạt giải trí

      M

      Ngoại trừ nhận xét ở đầu cuối của bạn rằng những công nghệ tiên tiến này sẽ không dành riêng cho tân sinh viên, tôi nghĩ bạn đang bỏ qua hai đoạn cuối mà bạn đang phản hồi. Ngay khắp cơ thể sáng lập nút. js nói để tránh những hoạt động và sinh hoạt giải trí sinh hoạt nâng cao tính toán. Có, V8 tăng tốc javascript, nhưng điều đó không xử lý và xử lý được vấn đề về hoạt động và sinh hoạt giải trí tính toán nâng cao hoặc hoạt động và sinh hoạt giải trí phụ thuộc vào IO chặn một chuỗi. Sau đó, bạn trả lời nút đó. js không biến thành chặn và do đó hoàn toàn có thể đợi. Tuyệt, tôi hiểu rồi, chắc như đinh rồi, nhưng bạn còn mong đợi gì nữa? . js rõ ràng, (rất nhiều vì quyền lợi được tuyên bố là "một ngôn từ thực sự để cai trị tất cả"), chính bới nút luồng đơn của bạn. js vui vẻ chuyển sang một thứ khác cho tới lúc gọi lại. Vì vậy, nút. js hoạt động và sinh hoạt giải trí tốt miễn là bạn hoàn toàn có thể nhờ vào những quy trình khác xử lý khối lượng việc làm đang chặn (như chờ IO) hoặc một phiên bản khác của nút đơn luồng. js, điều đó chắc như đinh sẽ (nếu được viết "đúng chuẩn") sẽ chuyển hướng sang một quy trình khác. Và đó là vấn đề. có một tập hợp con số lượng giới hạn nội dung được thực hiện trong những chương trình hoàn toàn có thể được thực thi song song/không theo thứ tự và/hoặc không nhờ vào những hoạt động và sinh hoạt giải trí sinh hoạt chặn. Đa luồng phức tạp hơn và có một số trong những ngân sách hoạt động và sinh hoạt giải trí mọi khi có quy đổi ngữ cảnh, nhưng điều đó nghĩa là hoàn toàn có thể ném nhiều lõi hơn vào những đơn vị việc làm hoàn toàn có thể song song hóa và thậm chí những hoạt động và sinh hoạt giải trí sinh hoạt rời rạc hoàn toàn có thể được xử lý bởi những luồng rất khác nhau. Trong một "nút. js xử lý và xử lý mọi thứ", bạn đang nhờ vào thứ gì đó không được viết trong nút. js hoặc chờ nút đơn luồng của bạn. js để hoàn thành xong tất cả những thứ phải hoàn thành xong, bằng phương pháp này hay cách khác

      M

      Ngoại trừ nhận xét ở đầu cuối của bạn rằng những công nghệ tiên tiến này sẽ không dành riêng cho tân sinh viên, tôi nghĩ bạn đang bỏ qua hai đoạn cuối mà bạn đang phản hồi. Ngay khắp cơ thể sáng lập nút. js nói để tránh những hoạt động và sinh hoạt giải trí sinh hoạt nâng cao tính toán. Có, V8 tăng tốc javascript, nhưng điều đó không xử lý và xử lý được vấn đề về hoạt động và sinh hoạt giải trí tính toán nâng cao hoặc hoạt động và sinh hoạt giải trí phụ thuộc vào IO chặn một chuỗi. Sau đó, bạn trả lời nút đó. js không biến thành chặn và do đó hoàn toàn có thể đợi. Tuyệt, tôi hiểu rồi, chắc như đinh rồi, nhưng bạn còn mong đợi gì nữa? . js rõ ràng, (rất nhiều vì quyền lợi được tuyên bố là "một ngôn từ thực sự để cai trị tất cả"), chính bới nút luồng đơn của bạn. js vui vẻ chuyển sang một thứ khác cho tới lúc gọi lại. Vì vậy, nút. js hoạt động và sinh hoạt giải trí tốt miễn là bạn hoàn toàn có thể nhờ vào những quy trình khác xử lý khối lượng việc làm đang chặn (như chờ IO) hoặc một phiên bản khác của nút đơn luồng. js, điều đó chắc như đinh sẽ (nếu được viết "đúng chuẩn") sẽ chuyển hướng sang một quy trình khác. Và đó là vấn đề. có một tập hợp con số lượng giới hạn nội dung được thực hiện trong những chương trình hoàn toàn có thể được thực thi song song/không theo thứ tự và/hoặc không nhờ vào những hoạt động và sinh hoạt giải trí sinh hoạt chặn. Đa luồng phức tạp hơn và có một số trong những ngân sách hoạt động và sinh hoạt giải trí mọi khi có quy đổi ngữ cảnh, nhưng điều đó nghĩa là hoàn toàn có thể ném nhiều lõi hơn vào những đơn vị việc làm hoàn toàn có thể song song hóa và thậm chí những hoạt động và sinh hoạt giải trí sinh hoạt rời rạc hoàn toàn có thể được xử lý bởi những luồng rất khác nhau. Trong một "nút. js xử lý và xử lý mọi thứ", bạn đang nhờ vào thứ gì đó không được viết trong nút. js hoặc chờ nút đơn luồng của bạn. js để hoàn thành xong tất cả những thứ phải hoàn thành xong, bằng phương pháp này hay cách khác

      Ken Kopelson

      Bạn biết gì? . Rõ ràng là bạn chưa bao giờ xây dựng bất kể thứ gì tráng lệ trong Node. js. Vâng, tôi có, và tôi hoàn toàn có thể nói rằng với bạn rằng nó hoạt động và sinh hoạt giải trí rất tốt nếu bạn thực sự lập trình nó một cách đúng chuẩn. Điều đó nghĩa là bạn sử dụng những thứ như hàng đợi việc làm, bạn sử dụng phân cụm mà Node đáp ứng, bạn đảm nói rằng bạn làm mọi thứ với lời gọi lại và lời hứa hẹn, bạn sử dụng "async" và "setImmediate" để chia sẻ bộ xử lý đúng cách giữa mã đang chờ và mã hoàn toàn có thể . Ví dụ: tôi đã viết một thuật toán sắp xếp heap "không đồng bộ" hoạt động và sinh hoạt giải trí rất tốt, sắp xếp những list lớn trong lúc không chặn trong bất kỳ khoảng chừng thời gian đáng kể nào. Tôi cũng luôn có thể có một thuật toán heuristic 5000 dòng khá phức tạp mà tôi đã chia ra để những vòng lặp chính được thực thi bằng phương pháp sử dụng những cấu trúc không đồng bộ. Sau đó, tôi đã thực hiện những lệnh này từ hàng đợi việc làm mang tên là "Kue" được cho phép sử dụng hiệu suất cao tất cả những lõi, không còn luồng, thời gian phản hồi giao diện người tiêu dùng tuyệt vời và những việc làm tính toán phức tạp được thực hiện trong nền bằng phương pháp sử dụng tất cả sức mạnh bộ xử lý có sẵn. Điều này TẤT CẢ được thực hiện bằng javascript với hiệu suất tuyệt vời trong cả những tác vụ sử dụng nhiều CPU và phản hồi những yêu cầu tài liệu từ giao diện người tiêu dùng. Nói cách khác, giao diện người tiêu dùng siêu nhạy và quá trình xử lý nền (tính toán heuristic phức tạp) được thực hiện nhanh gọn và rất nhạy. Tất cả điều này được thực hiện với một ngôn từ duy nhất cho tất cả phụ trợ và giao diện người tiêu dùng, đây là một vấn đề lớn khi nói đến kiến ​​trúc khối mạng lưới hệ thống

      Ken Kopelson

      Bạn biết gì? . Rõ ràng là bạn chưa bao giờ xây dựng bất kể thứ gì tráng lệ trong Node. js. Vâng, tôi có, và tôi hoàn toàn có thể nói rằng với bạn rằng nó hoạt động và sinh hoạt giải trí rất tốt nếu bạn thực sự lập trình nó một cách đúng chuẩn. Điều đó nghĩa là bạn sử dụng những thứ như hàng đợi việc làm, bạn sử dụng phân cụm mà Node đáp ứng, bạn đảm nói rằng bạn làm mọi thứ với lời gọi lại và lời hứa hẹn, bạn sử dụng "async" và "setImmediate" để chia sẻ bộ xử lý đúng cách giữa mã đang chờ và mã hoàn toàn có thể . Ví dụ: tôi đã viết một thuật toán sắp xếp heap "không đồng bộ" hoạt động và sinh hoạt giải trí rất tốt, sắp xếp những list lớn trong lúc không chặn trong bất kỳ khoảng chừng thời gian đáng kể nào. Tôi cũng luôn có thể có một thuật toán heuristic 5000 dòng khá phức tạp mà tôi đã chia ra để những vòng lặp chính được thực thi bằng phương pháp sử dụng những cấu trúc không đồng bộ. Sau đó, tôi đã thực hiện những lệnh này từ hàng đợi việc làm mang tên là "Kue" được cho phép sử dụng hiệu suất cao tất cả những lõi, không còn luồng, thời gian phản hồi giao diện người tiêu dùng tuyệt vời và những việc làm tính toán phức tạp được thực hiện trong nền bằng phương pháp sử dụng tất cả sức mạnh bộ xử lý có sẵn. Điều này TẤT CẢ được thực hiện bằng javascript với hiệu suất tuyệt vời trong cả những tác vụ sử dụng nhiều CPU và phản hồi những yêu cầu tài liệu từ giao diện người tiêu dùng. Nói cách khác, giao diện người tiêu dùng siêu nhạy và quá trình xử lý nền (tính toán heuristic phức tạp) được thực hiện nhanh gọn và rất nhạy. Tất cả điều này được thực hiện với một ngôn từ duy nhất cho tất cả phụ trợ và giao diện người tiêu dùng, đây là một vấn đề lớn khi nói đến kiến ​​trúc khối mạng lưới hệ thống

      Jacob Ross

      Tại sao chúng không dành riêng cho "neophytes"?

      Jacob Ross

      Tại sao chúng không dành riêng cho "neophytes"?

      Jacob Ross

      tôi đồng ý. Hầu hết những lần tôi nghĩ ORM không đủ cho những truy vấn phức tạp, tôi viết ra SQL thô, sau đó phát hiện ra ORM có một "ứng dụng cho điều đó". Tôi thích sử dụng ORM nhất hoàn toàn có thể, nhưng tôi sẽ không dành quá nhiều thời gian để làm cho nó hoạt động và sinh hoạt giải trí với mình, nếu không, như M đã nói, tôi sẽ tìm một ORM khác

      Jacob Ross

      tôi đồng ý. Hầu hết những lần tôi nghĩ ORM không đủ cho những truy vấn phức tạp, tôi viết ra SQL thô, sau đó phát hiện ra ORM có một "ứng dụng cho điều đó". Tôi thích sử dụng ORM nhất hoàn toàn có thể, nhưng tôi sẽ không dành quá nhiều thời gian để làm cho nó hoạt động và sinh hoạt giải trí với mình, nếu không, như M đã nói, tôi sẽ tìm một ORM khác

      JF80

      Nghe in như những từ trong "Michael" mà tôi biết. ;) Tôi đồng ý với tuyên bố ở đầu cuối của bạn. "mỗi công nghệ tiên tiến có vị trí của nó". Nhưng tại sao bạn lại nhận định rằng tất cả những nhà phát triển Node đều là nhà phát triển front-end không còn kiến ​​thức về back-end?

      JF80

      Nghe in như những từ trong "Michael" mà tôi biết. ;) Tôi đồng ý với tuyên bố ở đầu cuối của bạn. "mỗi công nghệ tiên tiến có vị trí của nó". Nhưng tại sao bạn lại nhận định rằng tất cả những nhà phát triển Node đều là nhà phát triển front-end không còn kiến ​​thức về back-end?

      đấtT

      Javascript là một lựa chọn ngôn từ kém để phát triển doanh nghiệp/phức hợp. Nó lộn xộn, khó đọc, khó tổ chức, không tương hỗ toàn bộ những quy mô OO giúp tiết kiệm nhiều mã lặp lại và đáp ứng sự trừu tượng hoàn toàn có thể đọc được, đa phần gây ra lỗi thời gian chạy, không AOP, không theo quy ước, không phản ánh, . Chúng tôi bị mắc kẹt với nó trong trình duyệt và thành thật mà nói, đó chỉ là quán tính và tương hỗ thừa kế nghĩa là nó vẫn được sử dụng ở đó. Lẽ ra nó phải đi theo con phố của khủng long thời tiền sử 10 năm trước. Động lực chính để tránh xa những ngôn từ ngữ cảnh là chúng là cơn ác mộng bảo dưỡng và dẫn đến những ứng dụng đầy bùn có lỗi liên tục không thể theo dõi được. Mới chỉ 10 năm ngắn ngủi Tính từ lúc lúc chúng tôi thở phào nhẹ nhõm khi sự phát triển tráng lệ không hề là một ngôn từ ngữ cảnh và ở đây chúng tôi đang làm lại điều đó mà không thích học hỏi từ quá khứ, tin chắc chắn là đây là "mới và tiên tiến", đúng hơn là . Nó sẽ kết thúc in như lần trước, bị buôn chuyện với sự ghê tởm như asp cổ xưa và perl cgi. Tôi chỉ hoàn toàn có thể kết luận rằng những nhà phát triển ủng hộ nó giờ đây chỉ là không xuất hiện để tận mắt tận mắt chứng kiến ​​​​sự sụp đổ của lần ở đầu cuối này. Mọi thế hệ nhà phát triển mới đều tin chắc chắn là họ đã mày mò ra "sự thật", những người dân trong tất cả chúng ta, những người dân đã tận mắt tận mắt chứng kiến ​​chu kỳ luân hồi đau đớn này chỉ hoàn toàn có thể ngồi lại và lắc đầu không thể tin được. Thật rủi ro, bạn không thể dạy kinh nghiệm tay nghề, đó là vấn đề bạn phải học một cách trở ngại vất vả. Chắc chắn nếu bạn là một người nghiệp dư và không biết gì khác thì bằng mọi cách, nhưng bất kỳ ai đang nỗ lực làm một việc làm chuyên nghiệp nên phải để yên vấn đề này và ngừng đưa ra những lựa chọn công nghệ tiên tiến theo chủ nghĩa dân túy mà không xem xét kết quả. Nếu bạn không thể tự mình đánh giá những hạn chế lâu dài của một công nghệ tiên tiến thì bạn tránh việc thao tác trong nghành phát triển. Các nhà phát triển cần ngừng trẻ con như vậy, hành vi như một lũ fan boy si mê, đây là một việc làm tráng lệ, không phải trò chơi

      đấtT

      Javascript là một lựa chọn ngôn từ kém để phát triển doanh nghiệp/phức hợp. Nó lộn xộn, khó đọc, khó tổ chức, không tương hỗ toàn bộ những quy mô OO giúp tiết kiệm nhiều mã lặp lại và đáp ứng sự trừu tượng hoàn toàn có thể đọc được, đa phần gây ra lỗi thời gian chạy, không AOP, không theo quy ước, không phản ánh, . Chúng tôi bị mắc kẹt với nó trong trình duyệt và thành thật mà nói, đó chỉ là quán tính và tương hỗ thừa kế nghĩa là nó vẫn được sử dụng ở đó. Lẽ ra nó phải đi theo con phố của khủng long thời tiền sử 10 năm trước. Động lực chính để tránh xa những ngôn từ ngữ cảnh là chúng là cơn ác mộng bảo dưỡng và dẫn đến những ứng dụng đầy bùn có lỗi liên tục không thể theo dõi được. Mới chỉ 10 năm ngắn ngủi Tính từ lúc lúc chúng tôi thở phào nhẹ nhõm khi sự phát triển tráng lệ không hề là một ngôn từ ngữ cảnh và ở đây chúng tôi đang làm lại điều đó mà không thích học hỏi từ quá khứ, tin chắc chắn là đây là "mới và tiên tiến", đúng hơn là . Nó sẽ kết thúc in như lần trước, bị buôn chuyện với sự ghê tởm như asp cổ xưa và perl cgi. Tôi chỉ hoàn toàn có thể kết luận rằng những nhà phát triển ủng hộ nó giờ đây chỉ là không xuất hiện để tận mắt tận mắt chứng kiến ​​​​sự sụp đổ của lần ở đầu cuối này. Mọi thế hệ nhà phát triển mới đều tin chắc chắn là họ đã mày mò ra "sự thật", những người dân trong tất cả chúng ta, những người dân đã tận mắt tận mắt chứng kiến ​​chu kỳ luân hồi đau đớn này chỉ hoàn toàn có thể ngồi lại và lắc đầu không thể tin được. Thật rủi ro, bạn không thể dạy kinh nghiệm tay nghề, đó là vấn đề bạn phải học một cách trở ngại vất vả. Chắc chắn nếu bạn là một người nghiệp dư và không biết gì khác thì bằng mọi cách, nhưng bất kỳ ai đang nỗ lực làm một việc làm chuyên nghiệp nên phải để yên vấn đề này và ngừng đưa ra những lựa chọn công nghệ tiên tiến theo chủ nghĩa dân túy mà không xem xét kết quả. Nếu bạn không thể tự mình đánh giá những hạn chế lâu dài của một công nghệ tiên tiến thì bạn tránh việc thao tác trong nghành phát triển. Các nhà phát triển cần ngừng trẻ con như vậy, hành vi như một lũ fan boy si mê, đây là một việc làm tráng lệ, không phải trò chơi

      adroittech

      Chúa ơi. Eric. Bạn có thật không? . NÓ Ở TRÊN PLAIN C/C++. http_parcer là thư viện C++. libuv là một thư viện C++ khác và quan trọng nhất trong xương sống của nodejs, làm cho nodejs không đồng bộ, hướng sự kiện và không chặn. Bản thân Javascript là một khung hình không còn linh hồn và sự sống. JAVASCRIPT chỉ là một ngữ cảnh mà bạn sử dụng để viết ngữ cảnh logic của tớ. Một ngày nào đó nếu smeoene port lua với libs này, anh ấy sẽ không cần Javascript để viết mã. tương tự cho python, v.v. Nhưng thực tế cơ bản vẫn không thay đổi. NÓ LÀ mã C++ tạo nên nodejs, không phải javascript quá nhanh. trên thực tế, javascript chậm nhất trong tất cả những ngôn từ ngữ cảnh. Vì vậy, đừng tự tâng bốc bản thân khi tin rằng chỉ có java-script là tuyệt vời còn những thứ khác thì tệ hại. Và đừng xúc phạm C/C++ nếu bạn không còn kiến ​​thức về nó. Vì vậy, một lần nữa, tôi mong bạn rút lại lời nói của tớ. "Hệ thống kiểu Javascript tốt hơn C++". (Javascript không còn khối mạng lưới hệ thống kiểu. và nếu bạn vẫn tin rằng nó có, thì bạn đang ở trong một nghành rất sai lầm, hãy xây dựng một số trong những giàn giáo) Ngoài ra, những công ty này sẽ không chọn nodejs vì nguyên do bạn đã đề cập. Điều này hoàn toàn có thể ở hầu hết những ngôn từ. Lý do tại sao những công ty chọn nodejs là vì họ có sẵn những lập trình viên javascript, hàng triệu và không thể làm mã c ++/java, để làm phía sever vì nó rẻ hơn. Một nguyên do khác -> hệ sinh thái của nó. Một nguyên do khác -> Việc tiến hành kiểm tra tải trong nodejs thuận tiện và đơn giản hơn nhiều so với những tập lệnh khác. Liên kết bạn đã đề cập là việc làm dự tính sẽ được khởi đầu. Tại sao bạn không đề nghị họ viết trình biên dịch hợp ngữ web này trong nodejs chứ không phải c/C++/assembly vì theo bạn điều đó tốt hơn. Thôi nào anh bạn, làm thế nào bạn hoàn toàn có thể so sánh Nodejs (Công nghệ) với C++ (ngôn từ), chúng không cùng đẳng cấp. C++ làm cho nút hoàn toàn có thể, không phải ngược lại

      adroittech

      Chúa ơi. Eric. Bạn có thật không? . NÓ Ở TRÊN PLAIN C/C++. http_parcer là thư viện C++. libuv là một thư viện C++ khác và quan trọng nhất trong xương sống của nodejs, làm cho nodejs không đồng bộ, hướng sự kiện và không chặn. Bản thân Javascript là một khung hình không còn linh hồn và sự sống. JAVASCRIPT chỉ là một ngữ cảnh mà bạn sử dụng để viết ngữ cảnh logic của tớ. Một ngày nào đó nếu smeoene port lua với libs này, anh ấy sẽ không cần Javascript để viết mã. tương tự cho python, v.v. Nhưng thực tế cơ bản vẫn không thay đổi. NÓ LÀ mã C++ tạo nên nodejs, không phải javascript quá nhanh. trên thực tế, javascript chậm nhất trong tất cả những ngôn từ ngữ cảnh. Vì vậy, đừng tự tâng bốc bản thân khi tin rằng chỉ có java-script là tuyệt vời còn những thứ khác thì tệ hại. Và đừng xúc phạm C/C++ nếu bạn không còn kiến ​​thức về nó. Vì vậy, một lần nữa, tôi mong bạn rút lại lời nói của tớ. "Hệ thống kiểu Javascript tốt hơn C++". (Javascript không còn khối mạng lưới hệ thống kiểu. và nếu bạn vẫn tin rằng nó có, thì bạn đang ở trong một nghành rất sai lầm, hãy xây dựng một số trong những giàn giáo) Ngoài ra, những công ty này sẽ không chọn nodejs vì nguyên do bạn đã đề cập. Điều này hoàn toàn có thể ở hầu hết những ngôn từ. Lý do tại sao những công ty chọn nodejs là vì họ có sẵn những lập trình viên javascript, hàng triệu và không thể làm mã c ++/java, để làm phía sever vì nó rẻ hơn. Một nguyên do khác -> hệ sinh thái của nó. Một nguyên do khác -> Việc tiến hành kiểm tra tải trong nodejs thuận tiện và đơn giản hơn nhiều so với những tập lệnh khác. Liên kết bạn đã đề cập là việc làm dự tính sẽ được khởi đầu. Tại sao bạn không đề nghị họ viết trình biên dịch hợp ngữ web này trong nodejs chứ không phải c/C++/assembly vì theo bạn điều đó tốt hơn. Thôi nào anh bạn, làm thế nào bạn hoàn toàn có thể so sánh Nodejs (Công nghệ) với C++ (ngôn từ), chúng không cùng đẳng cấp. C++ làm cho nút hoàn toàn có thể, không phải ngược lại

      oberona

      "Động lực chính để tránh xa những ngôn từ ngữ cảnh là chúng là cơn ác mộng bảo dưỡng và dẫn đến những ứng dụng đầy bùn" - bạn hoàn toàn có thể làm rõ ý của tớ bằng ngôn từ ngữ cảnh không và "những nhà phát triển tráng lệ" đã chuyển sang ngôn từ thay thế nào trong hơn mười năm qua . On the contrary, Python is my go-to language precisely for its maintainability. Những lời chỉ trích của bạn về js là đúng, nhưng tôi không thể thấy cách chúng áp dụng trên toàn bộ vũ trụ ngôn từ ngữ cảnh

      oberona

      "Động lực chính để tránh xa những ngôn từ ngữ cảnh là chúng là cơn ác mộng bảo dưỡng và dẫn đến những ứng dụng đầy bùn" - bạn hoàn toàn có thể làm rõ ý của tớ bằng ngôn từ ngữ cảnh không và "những nhà phát triển tráng lệ" đã chuyển sang ngôn từ thay thế nào trong hơn mười năm qua . On the contrary, Python is my go-to language precisely for its maintainability. Những lời chỉ trích của bạn về js là đúng, nhưng tôi không thể thấy cách chúng áp dụng trên toàn bộ vũ trụ ngôn từ ngữ cảnh

      đấtT

      Well I define scripting languages as runtime compilation languages, but there is a lot of overlap these days. I prefer the reassurance of compile time verification of least coding accuracy but that is not the only factor. Mức độ xâm lấn sâu vào hoạt động và sinh hoạt giải trí bên trong của trình biên dịch có xu hướng bị những ngôn từ biên dịch ngày này thể hiện được cho phép tạo ra một loạt những cấu trúc và mẫu thiết kế được cho phép lập trình trở nên "thông minh" hơn, tôi chỉ không thấy mức độ này . It is a severe limitation for serious enterprise development. ORMs are an ugly approach to data access on relational databases, but you would probably have to be a database developer to realise why. Data design and Program design have different constraints, ORMs do either an injustice or have to be modified so much that they provide no productivity. Có nhiều vấn đề ví dụ như bảo mật thông tin, cách ly, hoạt động và sinh hoạt giải trí nguyên tử mà ORM bị hỏng và hãy nhớ rằng cơ sở tài liệu là một khối mạng lưới hệ thống sống và hoàn toàn có thể yêu cầu thay đổi giữa mỗi lần phát hành mã như một vấn đề tất nhiên. ORM là một công cụ cùn nếu bạn muốn hiệu suất thực sự từ cơ sở tài liệu của tớ và muốn tính đồng thời cao mà không biến thành khóa. Its a detailed subject I could probably write a book on it, so sorry if this isn't conclusive enough for you. Can't say much about Python other than I have heard good things in general. Tôi là đầu kia của thị trường trên. Net, I crucify the open source guys next door in productivity and my defect level is about 1% of theirs. I think you need a large system before it makes significant differences, as you need to invest in framework and substrate to get the main benefits back, its "mass coding" that is the enemy here. When you have over a 100,000 code files you need a higher level of maintainability as it is simply beyond human capability to do it file by file (and certainly beyond maintenance budgets). Bằng cách tạo những dịch vụ cốt lõi sử dụng mã dưới dạng nội dung, bạn hoàn toàn có thể đạt được mức rất chất lượng trong khi vẫn giữ mọi thứ rõ ràng và đảm bảo việc phát hành ở mức nhỏ và có tiềm năng thay vì giảm toàn bộ khối mạng lưới hệ thống. Mỗi cái đều có của riêng chúng, nhưng nếu bạn là một Chuyên Viên CNTT, bạn hẳn đã thấy hàng triệu khối mạng lưới hệ thống nhờ vào tập lệnh đang hoạt động và sinh hoạt giải trí trong những doanh nghiệp vì không còn ai hoàn toàn có thể tìm thấy bất kể thứ gì hoặc hiểu phương pháp hoạt động và sinh hoạt giải trí của nó. Đó là một lời phàn nàn phổ biến mà tôi nghĩ nó tránh việc phải biện minh

      đấtT

      Well I define scripting languages as runtime compilation languages, but there is a lot of overlap these days. I prefer the reassurance of compile time verification of least coding accuracy but that is not the only factor. Mức độ xâm lấn sâu vào hoạt động và sinh hoạt giải trí bên trong của trình biên dịch có xu hướng bị những ngôn từ biên dịch ngày này thể hiện được cho phép tạo ra một loạt những cấu trúc và mẫu thiết kế được cho phép lập trình trở nên "thông minh" hơn, tôi chỉ không thấy mức độ này . It is a severe limitation for serious enterprise development. ORMs are an ugly approach to data access on relational databases, but you would probably have to be a database developer to realise why. Data design and Program design have different constraints, ORMs do either an injustice or have to be modified so much that they provide no productivity. Có nhiều vấn đề ví dụ như bảo mật thông tin, cách ly, hoạt động và sinh hoạt giải trí nguyên tử mà ORM bị hỏng và hãy nhớ rằng cơ sở tài liệu là một khối mạng lưới hệ thống sống và hoàn toàn có thể yêu cầu thay đổi giữa mỗi lần phát hành mã như một vấn đề tất nhiên. ORM là một công cụ cùn nếu bạn muốn hiệu suất thực sự từ cơ sở tài liệu của tớ và muốn tính đồng thời cao mà không biến thành khóa. Its a detailed subject I could probably write a book on it, so sorry if this isn't conclusive enough for you. Can't say much about Python other than I have heard good things in general. Tôi là đầu kia của thị trường trên. Net, I crucify the open source guys next door in productivity and my defect level is about 1% of theirs. I think you need a large system before it makes significant differences, as you need to invest in framework and substrate to get the main benefits back, its "mass coding" that is the enemy here. When you have over a 100,000 code files you need a higher level of maintainability as it is simply beyond human capability to do it file by file (and certainly beyond maintenance budgets). Bằng cách tạo những dịch vụ cốt lõi sử dụng mã dưới dạng nội dung, bạn hoàn toàn có thể đạt được mức rất chất lượng trong khi vẫn giữ mọi thứ rõ ràng và đảm bảo việc phát hành ở mức nhỏ và có tiềm năng thay vì giảm toàn bộ khối mạng lưới hệ thống. Mỗi cái đều có của riêng chúng, nhưng nếu bạn là một Chuyên Viên CNTT, bạn hẳn đã thấy hàng triệu khối mạng lưới hệ thống nhờ vào tập lệnh đang hoạt động và sinh hoạt giải trí trong những doanh nghiệp vì không còn ai hoàn toàn có thể tìm thấy bất kể thứ gì hoặc hiểu phương pháp hoạt động và sinh hoạt giải trí của nó. Đó là một lời phàn nàn phổ biến mà tôi nghĩ nó tránh việc phải biện minh

      đấtT

      P. S. I think "serious developers" have migrated to either Java, C# or back to C++ (along with their associated web techs etc). I wasn't really intending to be derogatory but these three probably account for 90% of all commercial development atm. C# wins out on the commercial front for me solely on Microsoft's considerable ongoing investment and new found modernist approach. C ++ không hiệu suất cao lắm và Java thực sự khởi đầu trông hơi lỗi thời. Tôi vẫn thao tác ở cả ba và họ hoàn thành xong việc làm, từng người đều có vị trí của tớ

      đấtT

      P. S. I think "serious developers" have migrated to either Java, C# or back to C++ (along with their associated web techs etc). I wasn't really intending to be derogatory but these three probably account for 90% of all commercial development atm. C# wins out on the commercial front for me solely on Microsoft's considerable ongoing investment and new found modernist approach. C ++ không hiệu suất cao lắm và Java thực sự khởi đầu trông hơi lỗi thời. Tôi vẫn thao tác ở cả ba và họ hoàn thành xong việc làm, từng người đều có vị trí của tớ

      đấtT

      P. P. S. "Python is my go-to language precisely for its maintainability". What do you consider maintainability? It is often not what people think it is (or is not as simple as they think). Nó gồm có ngân sách thay đổi và đó là ngân sách chính của doanh nghiệp cho một dự án công trình bất Động sản sinh hoạt. Ví dụ. Tôi có một dịch vụ với 1000 phương thức công khai minh bạch và doanh nghiệp yêu cầu tôi hủy ưu tiên tất cả những cuộc gọi kéo dãn hơn thế nữa 2 giây. Nếu tôi phải sửa đổi bất kỳ mã nào trong 1000 lệnh gọi đó thì mã của tôi hoàn toàn có thể bảo dưỡng kém nghiêm trọng. Những gì tôi nên làm là thay đổi một mã trong đường dẫn chất nền dịch vụ của tớ. I should not even be modifying the substrate I should be probably writing a statistics module and a de-prioritise module for that substrate loaded in a separate dll that can be loaded dynamically. Now my testing is isolated to just this dll (reverse harness testing) and when ready for release I can add this dll and maybe make one small config change, that's it, no regression testing and no risk to existing code, so no production bugs in the service methods. So many typical code bases would require all 1000 methods to be altered or least marked for an AOP operation. Enterprise design requires upfront anticipation of future "crazy" business requests. I find with most scripting languages and even with Java that finding insertion angles later on is nearly impossible. Even if I have a complete mare in C# I can emit the code directly into the methods using reflection, I have never seen this level of access on a scripting language and even if it was there it would be dangerous code to emit into runtime compiled operations (because I am literally changing the operations content so I would need to test the result of each). This is just one example I could probably come up with 100s. I'm a technical architect (framework and substrate) so it is my place to "save" my devs from backing themselves into a corner. Nếu tôi làm tốt, tôi hoàn toàn có thể giảm công sức của con người viết mã và thử nghiệm xuống 1% cho khối mạng lưới hệ thống "mã hóa hàng loạt". There is a whole other level of development that most devs will never see or appreciate, this means they are never equipped to make the most appropriate technology choices

      đấtT

      P. P. S. "Python is my go-to language precisely for its maintainability". What do you consider maintainability? It is often not what people think it is (or is not as simple as they think). Nó gồm có ngân sách thay đổi và đó là ngân sách chính của doanh nghiệp cho một dự án công trình bất Động sản sinh hoạt. Ví dụ. Tôi có một dịch vụ với 1000 phương thức công khai minh bạch và doanh nghiệp yêu cầu tôi hủy ưu tiên tất cả những cuộc gọi kéo dãn hơn thế nữa 2 giây. Nếu tôi phải sửa đổi bất kỳ mã nào trong 1000 lệnh gọi đó thì mã của tôi hoàn toàn có thể bảo dưỡng kém nghiêm trọng. Những gì tôi nên làm là thay đổi một mã trong đường dẫn chất nền dịch vụ của tớ. I should not even be modifying the substrate I should be probably writing a statistics module and a de-prioritise module for that substrate loaded in a separate dll that can be loaded dynamically. Now my testing is isolated to just this dll (reverse harness testing) and when ready for release I can add this dll and maybe make one small config change, that's it, no regression testing and no risk to existing code, so no production bugs in the service methods. So many typical code bases would require all 1000 methods to be altered or least marked for an AOP operation. Enterprise design requires upfront anticipation of future "crazy" business requests. I find with most scripting languages and even with Java that finding insertion angles later on is nearly impossible. Even if I have a complete mare in C# I can emit the code directly into the methods using reflection, I have never seen this level of access on a scripting language and even if it was there it would be dangerous code to emit into runtime compiled operations (because I am literally changing the operations content so I would need to test the result of each). This is just one example I could probably come up with 100s. I'm a technical architect (framework and substrate) so it is my place to "save" my devs from backing themselves into a corner. Nếu tôi làm tốt, tôi hoàn toàn có thể giảm công sức của con người viết mã và thử nghiệm xuống 1% cho khối mạng lưới hệ thống "mã hóa hàng loạt". There is a whole other level of development that most devs will never see or appreciate, this means they are never equipped to make the most appropriate technology choices

      Josh Morgan

      Interesting article, I've got quite a bit of experience in other realms but I'm somewhat new to Node. js. Có vài điều tôi muốn làm sáng tỏ. Flash cũng luôn không đồng bộ, nó chỉ mô phỏng những luồng in như âm thanh in như nút thực hiện bằng phương pháp sử dụng hàng đợi sự kiện. Tuy nhiên, tôi tin rằng thật là thiếu hiểu biết về kỹ thuật khi tuyên bố rằng việc tin tưởng quản lý luồng vào ngôn từ thế hệ thứ 3 hoặc thứ 4 sẽ tốt hơn là tin tưởng vào JRE được điều chỉnh tốt hoặc hệ điều hành được tối ưu hóa cho chipset đa lõi của nó. Làm thế nào đúng chuẩn để bạn nghĩ rằng chủ đề thao tác ở Lever thấp hơn tuy nhiên sao? . Cũng là một sai lầm khi nói rằng một "sự kiện" mới không thêm bộ nhớ hoặc chu kỳ luân hồi đồng hồ được đưa vào ngăn xếp chỉ vì những sự kiện đã nói được quản lý bởi một ngôn từ ngữ cảnh được diễn giải thay vì C++ được biên dịch, tối ưu hóa. Tôi dám cá với bữa trưa của tớ rằng một ứng dụng web đa luồng được viết tốt bằng C hoặc C++ sẽ thổi bay bất kỳ nút nào. js hiệu suất khôn ngoan và thậm chí không cần truy cập vào sever và kiến ​​trúc bộ xử lý đa lõi hiện tại của chúng. Nếu bạn có sever 4 nhân hoặc 8 nhân chạy một luồng nút đơn. bạn chỉ bắn vào một pít-tông (khá mỉa mai khi Google gọi động cơ của tớ là "V8" khi xem xét thực tế như vậy). Một điều khác cần nhận ra là trong khi Flash (hoặc thậm chí cả Java applet) chạy trong thời gian chạy của riêng chúng, thì nút cũng vậy -- nó chỉ bị ẩn đối với người tiêu dùng. Đó chẳng qua là động thái marketing thương mại "tốt" (có lẽ rằng là thù địch?) từ phía Google. Hãy trung thực ở đây, nếu tất cả những trình duyệt đều được setup tự động Flash trên chúng và Apple thực sự tương hỗ Flash trên thiết bị di động của tớ, thì nút có lẽ rằng sẽ không tồn tại ngày này. Tôi có những lo ngại khác về bảo mật thông tin. Nó có loại bảo vệ nào chống lại ngữ cảnh chéo trang và những cuộc tấn công khác? . ). Không có chú ý nào về bảo mật thông tin hoặc loại link mà hiên chạy cửa số trình duyệt của tôi đang mở ra, chỉ phù phù phù hợp với hoạt động và sinh hoạt giải trí marketing thương mại P2P của nó. phe hacker của tôi hoàn toàn có thể có một ngày thực sự hay với những loại "tính năng" đó. I doubt that kind of stuff has been tested much either which means there's a lot of room for bugs, and where there's a lot of room for bugs there's a lot of room for vulnerabilities. Nhưng này, ít nhất toàn bộ ngăn xếp của bạn đều ở cùng một ngôn từ. Means you can hire less experienced developers for less money, right? ;)

      Josh Morgan

      Interesting article, I've got quite a bit of experience in other realms but I'm somewhat new to Node. js. Có vài điều tôi muốn làm sáng tỏ. Flash cũng luôn không đồng bộ, nó chỉ mô phỏng những luồng in như âm thanh in như nút thực hiện bằng phương pháp sử dụng hàng đợi sự kiện. Tuy nhiên, tôi tin rằng thật là thiếu hiểu biết về kỹ thuật khi tuyên bố rằng việc tin tưởng quản lý luồng vào ngôn từ thế hệ thứ 3 hoặc thứ 4 sẽ tốt hơn là tin tưởng vào JRE được điều chỉnh tốt hoặc hệ điều hành được tối ưu hóa cho chipset đa lõi của nó. Làm thế nào đúng chuẩn để bạn nghĩ rằng chủ đề thao tác ở Lever thấp hơn tuy nhiên sao? . Cũng là một sai lầm khi nói rằng một "sự kiện" mới không thêm bộ nhớ hoặc chu kỳ luân hồi đồng hồ được đưa vào ngăn xếp chỉ vì những sự kiện đã nói được quản lý bởi một ngôn từ ngữ cảnh được diễn giải thay vì C++ được biên dịch, tối ưu hóa. Tôi dám cá với bữa trưa của tớ rằng một ứng dụng web đa luồng được viết tốt bằng C hoặc C++ sẽ thổi bay bất kỳ nút nào. js hiệu suất khôn ngoan và thậm chí không cần truy cập vào sever và kiến ​​trúc bộ xử lý đa lõi hiện tại của chúng. Nếu bạn có sever 4 nhân hoặc 8 nhân chạy một luồng nút đơn. bạn chỉ bắn vào một pít-tông (khá mỉa mai khi Google gọi động cơ của tớ là "V8" khi xem xét thực tế như vậy). Một điều khác cần nhận ra là trong khi Flash (hoặc thậm chí cả Java applet) chạy trong thời gian chạy của riêng chúng, thì nút cũng vậy -- nó chỉ bị ẩn đối với người tiêu dùng. Đó chẳng qua là động thái marketing thương mại "tốt" (có lẽ rằng là thù địch?) từ phía Google. Hãy trung thực ở đây, nếu tất cả những trình duyệt đều được setup tự động Flash trên chúng và Apple thực sự tương hỗ Flash trên thiết bị di động của tớ, thì nút có lẽ rằng sẽ không tồn tại ngày này. Tôi có những lo ngại khác về bảo mật thông tin. Nó có loại bảo vệ nào chống lại ngữ cảnh chéo trang và những cuộc tấn công khác? . ). Không có chú ý nào về bảo mật thông tin hoặc loại link mà hiên chạy cửa số trình duyệt của tôi đang mở ra, chỉ phù phù phù hợp với hoạt động và sinh hoạt giải trí marketing thương mại P2P của nó. phe hacker của tôi hoàn toàn có thể có một ngày thực sự hay với những loại "tính năng" đó. I doubt that kind of stuff has been tested much either which means there's a lot of room for bugs, and where there's a lot of room for bugs there's a lot of room for vulnerabilities. Nhưng này, ít nhất toàn bộ ngăn xếp của bạn đều ở cùng một ngôn từ. Means you can hire less experienced developers for less money, right? ;)

      iwebworld

      Good Article for Node JS, you can learn Node JS online in . //iwebworld. thông tin hoặc gửi email [email protected] com

      iwebworld

      Good Article for Node JS, you can learn Node JS online in . //iwebworld. thông tin hoặc gửi email [email protected] com

      Avinash Shah

      Bạn hoàn toàn có thể vô hiệu tất cả những cạm bẫy của JS bằng phương pháp sử dụng siêu bộ của nó hay còn gọi là TypeScript

      Avinash Shah

      Bạn hoàn toàn có thể vô hiệu tất cả những cạm bẫy của JS bằng phương pháp sử dụng siêu bộ của nó hay còn gọi là TypeScript

      đi trốn

      Tl;dr Sử dụng nút để xử lý nặng IO và ủy quyền xử lý nâng cao CPU cho một cụm nút công nhân chuyên được dùng (cơ sở tài liệu cũ, xử lý phương tiện, v.v.). Đây không hẳn là thông tin mới. Tôi đã đề cập lại chủ đề này vào năm '12. . //programmers. thanh toán giao dịch thanh toán Cp. com/a/179499/1256 Lý tưởng nhất là những sever HTTP và API hầu như không trạng thái (không gồm có quản lý phiên) và dùng một lần. Chúng chỉ là một đường dẫn hiệu suất cao chuyển tài liệu thô thành những màn biểu diễn tiêu hao. Bằng cách đó, những sever thuận tiện và đơn giản đáp ứng/hủy một cách linh hoạt để đáp ứng tính chất đột biến của nhu yếu. Tôi không chắc tại sao rất nhiều người phản hồi lại tranh cãi kịch liệt ủng hộ kiến ​​trúc sever đa mục tiêu hoàn toàn có thể mở rộng theo chiều dọc. Về bản chất, tỷ lệ dọc sẽ luôn có số lượng giới hạn trên được xác định bởi dung tích phần cứng. Bất kể mã hiệu suất cao ra làm sao. Viết lên tường. Bạn hoàn toàn có thể chi cả đống tiền cho phần cứng và mất ngủ khi để thắc mắc về tính hợp lệ của đánh giá rủi ro (hay còn gọi là WAG) của bạn. Vào cuối ngày, sắt kẽm kim loại trần là một tài sản cố định và thắt chặt. Trường hợp tốt nhất, nó đáp ứng nhu yếu dự kiến ​​và biện minh cho ngân sách. Trường hợp xấu nhất, nó có mức giá cao hơn giá trị của nó hoặc thiếu kĩ năng đáp ứng nhu yếu. Ngoài ra, bạn hoàn toàn có thể sử dụng điện toán phân tán và tự động hóa hạ tầng để phát triển/thu hẹp tương ứng với nhu yếu. Đối với những người dân đang chiến đấu trong những trận chiến tôn giáo về ngôn từ nào là tốt nhất, nút. C#. java. Ai quan tâm. Cả 3 đều được cho phép lập trình 'kiểu hiệu suất cao'. Cả 3, tương hỗ xử lý không đồng bộ (nguyên bản hoặc thông qua tiện ích mở rộng). Tất cả 3 hoàn toàn có thể được quản lý thông qua đáp ứng. Cả 3 đều hoàn toàn hợp lệ để xây dựng hạ tầng phân phối. Việc chọn sử dụng công cụ nào phụ thuộc vào chất lượng của những công cụ, liệu công cụ đó đã có được sử dụng để mở rộng hạ tầng hiện có hay là không và nhận thức của người tiêu dùng. Xây dựng bất kể thứ gì bạn giỏi xây dựng. Nếu bạn thực sự giỏi; . BTW, cảm ơn tác giả. Thật tuyệt khi thấy ai đó viết một nội dung bài viết toàn diện (và đa phần là khách quan) về chủ đề này

      đi trốn

      Tl;dr Sử dụng nút để xử lý nặng IO và ủy quyền xử lý nâng cao CPU cho một cụm nút công nhân chuyên được dùng (cơ sở tài liệu cũ, xử lý phương tiện, v.v.). Đây không hẳn là thông tin mới. Tôi đã đề cập lại chủ đề này vào năm '12. . //programmers. thanh toán giao dịch thanh toán Cp. com/a/179499/1256 Lý tưởng nhất là những sever HTTP và API hầu như không trạng thái (không gồm có quản lý phiên) và dùng một lần. Chúng chỉ là một đường dẫn hiệu suất cao chuyển tài liệu thô thành những màn biểu diễn tiêu hao. Bằng cách đó, những sever thuận tiện và đơn giản đáp ứng/hủy một cách linh hoạt để đáp ứng tính chất đột biến của nhu yếu. Tôi không chắc tại sao rất nhiều người phản hồi lại tranh cãi kịch liệt ủng hộ kiến ​​trúc sever đa mục tiêu hoàn toàn có thể mở rộng theo chiều dọc. Về bản chất, tỷ lệ dọc sẽ luôn có số lượng giới hạn trên được xác định bởi dung tích phần cứng. Bất kể mã hiệu suất cao ra làm sao. Viết lên tường. Bạn hoàn toàn có thể chi cả đống tiền cho phần cứng và mất ngủ khi để thắc mắc về tính hợp lệ của đánh giá rủi ro (hay còn gọi là WAG) của bạn. Vào cuối ngày, sắt kẽm kim loại trần là một tài sản cố định và thắt chặt. Trường hợp tốt nhất, nó đáp ứng nhu yếu dự kiến ​​và biện minh cho ngân sách. Trường hợp xấu nhất, nó có mức giá cao hơn giá trị của nó hoặc thiếu kĩ năng đáp ứng nhu yếu. Ngoài ra, bạn hoàn toàn có thể sử dụng điện toán phân tán và tự động hóa hạ tầng để phát triển/thu hẹp tương ứng với nhu yếu. Đối với những người dân đang chiến đấu trong những trận chiến tôn giáo về ngôn từ nào là tốt nhất, nút. C#. java. Ai quan tâm. Cả 3 đều được cho phép lập trình 'kiểu hiệu suất cao'. Cả 3, tương hỗ xử lý không đồng bộ (nguyên bản hoặc thông qua tiện ích mở rộng). Tất cả 3 hoàn toàn có thể được quản lý thông qua đáp ứng. Cả 3 đều hoàn toàn hợp lệ để xây dựng hạ tầng phân phối. Việc chọn sử dụng công cụ nào phụ thuộc vào chất lượng của những công cụ, liệu công cụ đó đã có được sử dụng để mở rộng hạ tầng hiện có hay là không và nhận thức của người tiêu dùng. Xây dựng bất kể thứ gì bạn giỏi xây dựng. Nếu bạn thực sự giỏi; . BTW, cảm ơn tác giả. Thật tuyệt khi thấy ai đó viết một nội dung bài viết toàn diện (và đa phần là khách quan) về chủ đề này

      đi trốn

      Có, cả hai ngôn từ đều tương hỗ mở rộng theo chiều ngang với hạ tầng quản lý tin nhắn không đồng bộ. CQRS không là gì ngoài một mẫu triển khai API. CRUD là trường hợp sử dụng điển hình (đúng như vậy) nhưng Node không tự động giàn giáo 1. 1 ánh xạ giữa DB và CRUD (xem Rails/laravel/Django để biết điều đó). Nút hoàn toàn không phải là một khung, nó chỉ là một sever HTTP. Bạn hoàn toàn có thể tận dụng những khung (ví dụ Express) để làm cho môi trường tự nhiên thiên nhiên sống đời thường thuận tiện và đơn giản hơn bằng phương pháp đáp ứng những giá trị mặc định lành mạnh và cấu trúc tốt hơn nhưng bạn vẫn phải chỉ định những tuyến API của tớ theo cách thủ công. . Tiện ích mở rộng phản ứng ròng đã được chuyển sang JS. https. //www. npmjs. com/package/rx Trên thực tế, trong cả LINQ cũng khá được chuyển sang JS (vâng, tráng lệ đấy). . //linqjs. mật mã. com/ "Bất kỳ ứng dụng nào hoàn toàn có thể được viết bằng Javascript, sẽ được viết bằng Javascript" - Định luật Atwood ORM chỉ là một vấn đề vì chúng yêu cầu thêm một lớp trừu tượng từ tài liệu cơ bản. Nếu (đọc lúc nào) những quy mô tài liệu cần thay đổi để thích ứng với nhu yếu marketing thương mại, cả ORM và lược đồ cơ sở tài liệu sẽ cần phải update và kiểm tra để phản ánh những thay đổi. Đó thực sự không phải là vấn đề lớn nếu có một kế hoạch update tốt. Đối với phần còn sót lại của nhận xét của bạn, bạn sẽ làm tốt nếu thỉnh thoảng bước ra khỏi vùng bảo vệ an toàn và đáng tin cậy của tớ để xem cách phát triển JS thực sự hoạt động và sinh hoạt giải trí. 1. Các lớp JS hiện được tương hỗ thông qua ES6 (đồng thời, phía máy khách có sẵn thông qua polyfill). Các nguyên mẫu thực sự không khác nhiều so với những lớp về mặt đóng gói (ngoại trừ chúng linh hoạt hơn rất nhiều). Kiểm tra kiểu tĩnh thời gian biên dịch thậm chí còn được tương hỗ thông qua TypeScript/Dart nếu đó là thứ làm nổi thuyền của bạn, thì đó không phải là mặc định. 2. TDD/BDD không phải là một tính năng dành riêng cho những ngôn từ được gõ tĩnh. Có rất nhiều khung thử nghiệm tuyệt vời có sẵn trong JS (cả phía sever/phía máy khách). Chọn sở thích của bạn, thử nghiệm đơn vị (Mocha), thử nghiệm đơn vị theo hành vi (Chai), thử nghiệm api (SuperTest) và thử nghiệm tích hợp liên tục (TravisCI và nhiều thử nghiệm khác) đều được sử dụng rộng rãi trong hiệp hội. JSUnit (JS tương đương với JUnit/NUnit) thậm chí có sẵn nếu bạn bỏ lỡ kiểm tra đơn vị trong Java/. BỌC LƯỚI. Nếu bất kể điều gì, thử nghiệm là một yêu cầu cơ bản của bất kỳ ứng dụng JS không tầm thường nào được đưa vào sản xuất vì bạn không còn trình kiểm tra loại thời gian biên dịch để tương hỗ bạn. 3. Quy trình thao tác phức tạp? . Thực thi kiểu, linting, tạo tài liệu, giàn giáo, triển khai bằng một cú nhấp chuột, dịch ngôn từ, gói, xây dựng phân phối, quản lý gói/phụ thuộc, quản lý phát hành, v.v. 4. . co rúm lại. nếu bạn chỉ nhờ vào khối mạng lưới hệ thống kiểm tra kiểu tĩnh thời gian biên dịch để xác thực đầu vào của người tiêu dùng, thì bạn đang làm sai. Xây dựng một lớp tài liệu bằng bất kỳ ngôn từ nào đều yêu cầu những ràng buộc ở trên và ngoài những gì mà nhiều chủng loại mặc định đáp ứng. Vì vậy, dù bằng phương pháp nào, bạn sẽ phải mở rộng những quy mô tài liệu của tớ bằng những kiểm tra xác thực tùy chỉnh. Phần thú vị về việc xử lý xác thực trong JS là bạn hoàn toàn có thể sử dụng cùng một quy trình để kiểm tra đầu vào của người tiêu dùng trên cả phía máy khách/sever. Ít trùng lặp nỗ lực hơn FTW. Trái ngược với những gì bạn nghĩ. Javascript thực sự là cách tiếp cận 'một kích thước phù phù phù hợp với tất cả' nếu bạn thích sử dụng nó như vậy. Nghiêm túc mà nói, bạn thậm chí hoàn toàn có thể biên dịch C/C++ trực tiếp sang javascript bằng asm. js. Điều đó nghĩa là bạn phải sử dụng nó? . Bất kỳ nhà phát triển nào có một chút ít ý thức sẽ không còn lỗi với bạn khi chọn C #, đó là một ngôn từ tuyệt vời. Tôi có kinh nghiệm tay nghề viết mã bằng nhiều ngôn từ, gồm có xây dựng những ứng dụng máy tính để bàn không tầm thường bằng C#. Được lựa chọn, tôi muốn sử dụng Javascript hơn. Sự pha trộn của những ràng buộc lỏng lẻo hơn và những phong cách hiệu suất cao/mệnh lệnh/nguyên mẫu được cho phép mức độ sáng tạo mà tôi trước đó chưa từng trải nghiệm trong bất kỳ ngôn từ nào khác. Các công cụ tuyệt vời, khối mạng lưới hệ thống mô-đun tuyệt vời và bản thân ngôn từ đang trở nên tốt hơn đáng kể với mỗi bản update

      đi trốn

      Có, cả hai ngôn từ đều tương hỗ mở rộng theo chiều ngang với hạ tầng quản lý tin nhắn không đồng bộ. CQRS không là gì ngoài một mẫu triển khai API. CRUD là trường hợp sử dụng điển hình (đúng như vậy) nhưng Node không tự động giàn giáo 1. 1 ánh xạ giữa DB và CRUD (xem Rails/laravel/Django để biết điều đó). Nút hoàn toàn không phải là một khung, nó chỉ là một sever HTTP. Bạn hoàn toàn có thể tận dụng những khung (ví dụ Express) để làm cho môi trường tự nhiên thiên nhiên sống đời thường thuận tiện và đơn giản hơn bằng phương pháp đáp ứng những giá trị mặc định lành mạnh và cấu trúc tốt hơn nhưng bạn vẫn phải chỉ định những tuyến API của tớ theo cách thủ công. . Tiện ích mở rộng phản ứng ròng đã được chuyển sang JS. https. //www. npmjs. com/package/rx Trên thực tế, trong cả LINQ cũng khá được chuyển sang JS (vâng, tráng lệ đấy). . //linqjs. mật mã. com/ "Bất kỳ ứng dụng nào hoàn toàn có thể được viết bằng Javascript, sẽ được viết bằng Javascript" - Định luật Atwood ORM chỉ là một vấn đề vì chúng yêu cầu thêm một lớp trừu tượng từ tài liệu cơ bản. Nếu (đọc lúc nào) những quy mô tài liệu cần thay đổi để thích ứng với nhu yếu marketing thương mại, cả ORM và lược đồ cơ sở tài liệu sẽ cần phải update và kiểm tra để phản ánh những thay đổi. Đó thực sự không phải là vấn đề lớn nếu có một kế hoạch update tốt. Đối với phần còn sót lại của nhận xét của bạn, bạn sẽ làm tốt nếu thỉnh thoảng bước ra khỏi vùng bảo vệ an toàn và đáng tin cậy của tớ để xem cách phát triển JS thực sự hoạt động và sinh hoạt giải trí. 1. Các lớp JS hiện được tương hỗ thông qua ES6 (đồng thời, phía máy khách có sẵn thông qua polyfill). Các nguyên mẫu thực sự không khác nhiều so với những lớp về mặt đóng gói (ngoại trừ chúng linh hoạt hơn rất nhiều). Kiểm tra kiểu tĩnh thời gian biên dịch thậm chí còn được tương hỗ thông qua TypeScript/Dart nếu đó là thứ làm nổi thuyền của bạn, thì đó không phải là mặc định. 2. TDD/BDD không phải là một tính năng dành riêng cho những ngôn từ được gõ tĩnh. Có rất nhiều khung thử nghiệm tuyệt vời có sẵn trong JS (cả phía sever/phía máy khách). Chọn sở thích của bạn, thử nghiệm đơn vị (Mocha), thử nghiệm đơn vị theo hành vi (Chai), thử nghiệm api (SuperTest) và thử nghiệm tích hợp liên tục (TravisCI và nhiều thử nghiệm khác) đều được sử dụng rộng rãi trong hiệp hội. JSUnit (JS tương đương với JUnit/NUnit) thậm chí có sẵn nếu bạn bỏ lỡ kiểm tra đơn vị trong Java/. BỌC LƯỚI. Nếu bất kể điều gì, thử nghiệm là một yêu cầu cơ bản của bất kỳ ứng dụng JS không tầm thường nào được đưa vào sản xuất vì bạn không còn trình kiểm tra loại thời gian biên dịch để tương hỗ bạn. 3. Quy trình thao tác phức tạp? . Thực thi kiểu, linting, tạo tài liệu, giàn giáo, triển khai bằng một cú nhấp chuột, dịch ngôn từ, gói, xây dựng phân phối, quản lý gói/phụ thuộc, quản lý phát hành, v.v. 4. . co rúm lại. nếu bạn chỉ nhờ vào khối mạng lưới hệ thống kiểm tra kiểu tĩnh thời gian biên dịch để xác thực đầu vào của người tiêu dùng, thì bạn đang làm sai. Xây dựng một lớp tài liệu bằng bất kỳ ngôn từ nào đều yêu cầu những ràng buộc ở trên và ngoài những gì mà nhiều chủng loại mặc định đáp ứng. Vì vậy, dù bằng phương pháp nào, bạn sẽ phải mở rộng những quy mô tài liệu của tớ bằng những kiểm tra xác thực tùy chỉnh. Phần thú vị về việc xử lý xác thực trong JS là bạn hoàn toàn có thể sử dụng cùng một quy trình để kiểm tra đầu vào của người tiêu dùng trên cả phía máy khách/sever. Ít trùng lặp nỗ lực hơn FTW. Trái ngược với những gì bạn nghĩ. Javascript thực sự là cách tiếp cận 'một kích thước phù phù phù hợp với tất cả' nếu bạn thích sử dụng nó như vậy. Nghiêm túc mà nói, bạn thậm chí hoàn toàn có thể biên dịch C/C++ trực tiếp sang javascript bằng asm. js. Điều đó nghĩa là bạn phải sử dụng nó? . Bất kỳ nhà phát triển nào có một chút ít ý thức sẽ không còn lỗi với bạn khi chọn C #, đó là một ngôn từ tuyệt vời. Tôi có kinh nghiệm tay nghề viết mã bằng nhiều ngôn từ, gồm có xây dựng những ứng dụng máy tính để bàn không tầm thường bằng C#. Được lựa chọn, tôi muốn sử dụng Javascript hơn. Sự pha trộn của những ràng buộc lỏng lẻo hơn và những phong cách hiệu suất cao/mệnh lệnh/nguyên mẫu được cho phép mức độ sáng tạo mà tôi trước đó chưa từng trải nghiệm trong bất kỳ ngôn từ nào khác. Các công cụ tuyệt vời, khối mạng lưới hệ thống mô-đun tuyệt vời và bản thân ngôn từ đang trở nên tốt hơn đáng kể với mỗi bản update

      đi trốn

      Tải tệp lên. . //howtonode. org/really-simple-file-uploads "Tất cả những hoạt động và sinh hoạt giải trí sinh hoạt I/O được xử lý bởi Node. js đang sử dụng nhiều luồng nội bộ; . " . // stackoverflow. com/a/22981768/290340 Libuv sử dụng nhóm luồng để xử lý những hoạt động và sinh hoạt giải trí sinh hoạt I/O (tệp, ổ cắm, v.v.) theo cách không đồng bộ. Trong số đó hầu hết những ngôn từ bị chặn theo mặc định trong những hoạt động và sinh hoạt giải trí sinh hoạt I/O nặng của CPU, thì Node không. Nó chỉ kích hoạt một sự kiện khi thao tác I/O hoàn thành xong trên worker thread. Thư mục hoạt động và sinh hoạt giải trí. https. //github. com/gheeres/node-activedirectory https. //github. com/auth0/hộ chiếu-windowsauth

      đi trốn

      Tải tệp lên. . //howtonode. org/really-simple-file-uploads "Tất cả những hoạt động và sinh hoạt giải trí sinh hoạt I/O được xử lý bởi Node. js đang sử dụng nhiều luồng nội bộ; . " . // stackoverflow. com/a/22981768/290340 Libuv sử dụng nhóm luồng để xử lý những hoạt động và sinh hoạt giải trí sinh hoạt I/O (tệp, ổ cắm, v.v.) theo cách không đồng bộ. Trong số đó hầu hết những ngôn từ bị chặn theo mặc định trong những hoạt động và sinh hoạt giải trí sinh hoạt I/O nặng của CPU, thì Node không. Nó chỉ kích hoạt một sự kiện khi thao tác I/O hoàn thành xong trên worker thread. Thư mục hoạt động và sinh hoạt giải trí. https. //github. com/gheeres/node-activedirectory https. //github. com/auth0/hộ chiếu-windowsauth

      đi trốn

      Điểm khác lạ là Node mặc định là không đồng bộ Vì vậy, số lượng nhà phát triển thực hiện lập trình không đồng bộ bằng những ngôn từ khác là thiểu số nên họ không được đại diện nhiều. "Tôi không thể đưa ra bất kỳ nguyên do chính đáng nào để sử dụng nó ở phía sever có lợi cho những ngôn từ có sẵn khác. " Không nói dối đâu, lúc đầu sử dụng Node là. Thách thức để nói ít nhất. Làm quen với async-by-default không phải là một quá trình quy đổi thuận tiện và đơn giản. Phần hay của Node là, trọng tâm chính của nền tảng là xây dựng sever/máy khách để hệ sinh thái có rất nhiều công cụ mạnh mẽ và tự tin để làm bất kể điều gì liên quan đến phát triển web. ". có thư viện, công cụ và tài nguyên tiêu chuẩn tốt hơn. "Tôi không chắc điều gì đã cho bạn ấn tượng đó. Nó không sử dụng cách tiếp cận thư viện lớp cơ sở nguyên khối-mọi thứ-và-nhà bếp-bồn rửa. Bản thân lõi rất nhỏ nhưng đó là một quyền lợi vì nó nhẹ hơn nhiều khi triển khai. Nó cũng gồm có một trình quản lý gói rất mạnh mẽ và tự tin, đầy đủ tính năng theo mặc định, do đó bạn sẽ phải thêm những phụ thuộc mà dự án công trình bất Động sản của bạn cần. NPM (Trình quản lý gói nút) có hơn 200 nghìn gói và đang tiếp tục tăng. Vì phần lớn những mô-đun được phát triển độc lập với lõi, chúng lặp lại và cải tổ nhanh hơn nhiều so với những thư viện lõi tương đương trong những ngôn từ khác. Các phụ thuộc được quản lý cục bộ trên cơ sở từng dự án công trình bất Động sản trong gói. tập tin json. Thông thường, việc tác giả mô-đun yêu cầu gói của tớ phải được setup trên toàn cầu là một hình thức tồi. Việc setup những gói cục bộ sẽ ngăn xung đột phiên bản ở Lever toàn cầu và đảm nói rằng -- khi bạn setup một gói -- mọi thứ thiết yếu để sử dụng mô-đun đều được gồm có. Thoạt nhìn, nó có vẻ như không hiệu suất cao vì nhiều phụ thuộc hoàn toàn có thể có những bản sao của cùng một phụ thuộc phụ (hoặc phụ phụ thuộc, v.v.) nhưng so với ngân sách gồm có một thư viện tiêu chuẩn lớn, dung tích tàng trữ là không đáng kể. Quy trình thao tác để thiết lập một dự án công trình bất Động sản là. - sao chép nguồn - chạy 'npm install' NPM sẽ tự động tải xuống và setup tất cả những phụ thuộc (gồm có sub-deps, sub-sub-deps, v.v.). Vì những phụ thuộc (và những phiên bản rõ ràng của chúng) được xác định rõ ràng trong thông số kỹ thuật, nên bạn không cần kiểm tra chúng trong trấn áp nguồn. Ngoài ra, với ES6 (gồm có trình tải mô-đun ES6 mới) sắp được phát hành, một JSPM mới (Trình quản lý gói JavaScript) đã được tạo để quản lý những phụ thuộc javascript phía máy khách. Nhập mô-đun trong trình duyệt ở đầu cuối đã được chính thức hóa trong thông số ngôn từ, vì vậy Bower và nhiều tiêu chuẩn giả tải mô-đun (ví dụ: AMD, CommonJS, UMD) sẽ biến mất

      đi trốn

      Điểm khác lạ là Node mặc định là không đồng bộ Vì vậy, số lượng nhà phát triển thực hiện lập trình không đồng bộ bằng những ngôn từ khác là thiểu số nên họ không được đại diện nhiều. "Tôi không thể đưa ra bất kỳ nguyên do chính đáng nào để sử dụng nó ở phía sever có lợi cho những ngôn từ có sẵn khác. " Không nói dối đâu, lúc đầu sử dụng Node là. Thách thức để nói ít nhất. Làm quen với async-by-default không phải là một quá trình quy đổi thuận tiện và đơn giản. Phần hay của Node là, trọng tâm chính của nền tảng là xây dựng sever/máy khách để hệ sinh thái có rất nhiều công cụ mạnh mẽ và tự tin để làm bất kể điều gì liên quan đến phát triển web. ". có thư viện, công cụ và tài nguyên tiêu chuẩn tốt hơn. "Tôi không chắc điều gì đã cho bạn ấn tượng đó. Nó không sử dụng cách tiếp cận thư viện lớp cơ sở nguyên khối-mọi thứ-và-nhà bếp-bồn rửa. Bản thân lõi rất nhỏ nhưng đó là một quyền lợi vì nó nhẹ hơn nhiều khi triển khai. Nó cũng gồm có một trình quản lý gói rất mạnh mẽ và tự tin, đầy đủ tính năng theo mặc định, do đó bạn sẽ phải thêm những phụ thuộc mà dự án công trình bất Động sản của bạn cần. NPM (Trình quản lý gói nút) có hơn 200 nghìn gói và đang tiếp tục tăng. Vì phần lớn những mô-đun được phát triển độc lập với lõi, chúng lặp lại và cải tổ nhanh hơn nhiều so với những thư viện lõi tương đương trong những ngôn từ khác. Các phụ thuộc được quản lý cục bộ trên cơ sở từng dự án công trình bất Động sản trong gói. tập tin json. Thông thường, việc tác giả mô-đun yêu cầu gói của tớ phải được setup trên toàn cầu là một hình thức tồi. Việc setup những gói cục bộ sẽ ngăn xung đột phiên bản ở Lever toàn cầu và đảm nói rằng -- khi bạn setup một gói -- mọi thứ thiết yếu để sử dụng mô-đun đều được gồm có. Thoạt nhìn, nó có vẻ như không hiệu suất cao vì nhiều phụ thuộc hoàn toàn có thể có những bản sao của cùng một phụ thuộc phụ (hoặc phụ phụ thuộc, v.v.) nhưng so với ngân sách gồm có một thư viện tiêu chuẩn lớn, dung tích tàng trữ là không đáng kể. Quy trình thao tác để thiết lập một dự án công trình bất Động sản là. - sao chép nguồn - chạy 'npm install' NPM sẽ tự động tải xuống và setup tất cả những phụ thuộc (gồm có sub-deps, sub-sub-deps, v.v.). Vì những phụ thuộc (và những phiên bản rõ ràng của chúng) được xác định rõ ràng trong thông số kỹ thuật, nên bạn không cần kiểm tra chúng trong trấn áp nguồn. Ngoài ra, với ES6 (gồm có trình tải mô-đun ES6 mới) sắp được phát hành, một JSPM mới (Trình quản lý gói JavaScript) đã được tạo để quản lý những phụ thuộc javascript phía máy khách. Nhập mô-đun trong trình duyệt ở đầu cuối đã được chính thức hóa trong thông số ngôn từ, vì vậy Bower và nhiều tiêu chuẩn giả tải mô-đun (ví dụ: AMD, CommonJS, UMD) sẽ biến mất

      đấtT

      Như đã nói ở trên, những ngôn từ OO tân tiến có rất nhiều tùy chọn để chính thức hóa và trấn áp mã của bạn cũng như những giải pháp mà những ngôn từ ngữ cảnh không còn. Đó chỉ là sự việc thật đơn giản, không còn sự kìm kẹp nào hoàn toàn có thể thay đổi được điều đó. Quan điểm của tôi là có rất nhiều nhà phát triển chọn công nghệ tiên tiến theo mức phổ biến hơn là sự việc phù hợp, đó là vấn đề khiến họ hâm mộ những chàng trai. Công cụ phù hợp cho việc làm phù hợp, áp dụng trong mọi thanh toán giao dịch thanh toán ngoại trừ phát triển phần mềm. Nhưng đó có lẽ rằng là vì hầu hết những nhà phát triển không phải là "Người thợ" thực thụ, mà là "Người tự làm" được tôn vinh hơn. Ngành công nghiệp đầy những người dân nghiệp dư, những người dân thậm chí không biết đủ để biết rằng họ không biết gì. Họ nghĩ chính bới họ hoàn toàn có thể viết câu lệnh if và vòng lặp while nên họ giỏi. công nghệ tiên tiến

      đấtT

      Như đã nói ở trên, những ngôn từ OO tân tiến có rất nhiều tùy chọn để chính thức hóa và trấn áp mã của bạn cũng như những giải pháp mà những ngôn từ ngữ cảnh không còn. Đó chỉ là sự việc thật đơn giản, không còn sự kìm kẹp nào hoàn toàn có thể thay đổi được điều đó. Quan điểm của tôi là có rất nhiều nhà phát triển chọn công nghệ tiên tiến theo mức phổ biến hơn là sự việc phù hợp, đó là vấn đề khiến họ hâm mộ những chàng trai. Công cụ phù hợp cho việc làm phù hợp, áp dụng trong mọi thanh toán giao dịch thanh toán ngoại trừ phát triển phần mềm. Nhưng đó có lẽ rằng là vì hầu hết những nhà phát triển không phải là "Người thợ" thực thụ, mà là "Người tự làm" được tôn vinh hơn. Ngành công nghiệp đầy những người dân nghiệp dư, những người dân thậm chí không biết đủ để biết rằng họ không biết gì. Họ nghĩ chính bới họ hoàn toàn có thể viết câu lệnh if và vòng lặp while nên họ giỏi. công nghệ tiên tiến

      đi trốn

      Các hoạt động và sinh hoạt giải trí I/O cấp khối mạng lưới hệ thống (ví dụ như tệp, ổ cắm) trong Nút được xử lý bởi libuv sử dụng nhóm luồng nền. Sự khác lạ là, luồng chính hoàn toàn có thể kích hoạt và quên trách nhiệm đối với luồng nền và luồng nền sẽ thông báo cho luồng chính (thông qua kích hoạt một sự kiện) khi thao tác hoàn tất. Ngay cả với xử lý luồng nền, thực hiện nhiều thao tác I/O cũng không mở rộng tốt. Đối với những tác vụ sử dụng nhiều CPU trong thời gian dài (mã hóa hình ảnh/phim cũ), việc giảm tải những tác vụ cho những nút worker vẫn được ưu tiên hơn. Trong hầu hết những ngôn từ, những thao tác I/O được xử lý theo cách đồng bộ, vì vậy nếu chúng yêu cầu được thực hiện trên luồng chính, chúng sẽ chặn thực thi cho tới lúc hoàn thành xong. Lý do bạn không thấy một khoảng chừng dừng đáng để ý quan tâm trong giao diện người tiêu dùng khi điều này xảy ra là vì giao diện người tiêu dùng không đồng bộ/nhờ vào sự kiện và chạy trên một chuỗi tách biệt với ngữ cảnh chính

      đi trốn

      Các hoạt động và sinh hoạt giải trí I/O cấp khối mạng lưới hệ thống (ví dụ như tệp, ổ cắm) trong Nút được xử lý bởi libuv sử dụng nhóm luồng nền. Sự khác lạ là, luồng chính hoàn toàn có thể kích hoạt và quên trách nhiệm đối với luồng nền và luồng nền sẽ thông báo cho luồng chính (thông qua kích hoạt một sự kiện) khi thao tác hoàn tất. Ngay cả với xử lý luồng nền, thực hiện nhiều thao tác I/O cũng không mở rộng tốt. Đối với những tác vụ sử dụng nhiều CPU trong thời gian dài (mã hóa hình ảnh/phim cũ), việc giảm tải những tác vụ cho những nút worker vẫn được ưu tiên hơn. Trong hầu hết những ngôn từ, những thao tác I/O được xử lý theo cách đồng bộ, vì vậy nếu chúng yêu cầu được thực hiện trên luồng chính, chúng sẽ chặn thực thi cho tới lúc hoàn thành xong. Lý do bạn không thấy một khoảng chừng dừng đáng để ý quan tâm trong giao diện người tiêu dùng khi điều này xảy ra là vì giao diện người tiêu dùng không đồng bộ/nhờ vào sự kiện và chạy trên một chuỗi tách biệt với ngữ cảnh chính

      đi trốn

      Không có gì ngăn cản bạn hiển thị API dưới dạng microservice. WebKit chỉ được cho phép bạn chạy ứng dụng khách JS gốc. Tôi hoàn toàn có thể sai nhưng theo những gì tôi hiểu, không in như trình duyệt, ứng dụng khách webkit không được hộp cát nghiêm ngặt để bạn hoàn toàn có thể thực hiện những cuộc gọi khối mạng lưới hệ thống (ví dụ: mở/lưu tệp mà không cần người tiêu dùng nhập)

      đi trốn

      Không có gì ngăn cản bạn hiển thị API dưới dạng microservice. WebKit chỉ được cho phép bạn chạy ứng dụng khách JS gốc. Tôi hoàn toàn có thể sai nhưng theo những gì tôi hiểu, không in như trình duyệt, ứng dụng khách webkit không được hộp cát nghiêm ngặt để bạn hoàn toàn có thể thực hiện những cuộc gọi khối mạng lưới hệ thống (ví dụ: mở/lưu tệp mà không cần người tiêu dùng nhập)

      đấtT

      Tôi nghĩ rằng bạn đã đưa ra quan điểm của tớ cho tôi, nói ra những điều vô nghĩa thiếu suy nghĩ, vô nghĩa về cảm xúc, với rất ít sự thật, từ một tâm trí quá cuồng tín về một thứ mà nó thậm chí không thể nhìn thấy những thất bại của nó. Có vẻ như bạn đã đưa ra một vài giả định hợp lý về những gì tôi biết và không biết, tôi đã làm Javascript được 20 năm, tôi biết những hạn chế của nó, tôi hoàn toàn có thể thao tác hiệu suất cao với hơn 30 ngôn từ, tôi sử dụng những gì phù hợp, . Bạn cần trưởng thành hoặc tìm một ngành mới để thao tác. Những người như bạn là vấn đề với Phát triển phần mềm, không biết gì về những người dân thậm chí không thể tạo ra một trường hợp cho một công nghệ tiên tiến, chứ đừng nói đến việc sử dụng một công nghệ tiên tiến. Vui lòng tránh xa bàn phím và giúp sức phần còn sót lại của chúng tôi

      đấtT

      Tôi nghĩ rằng bạn đã đưa ra quan điểm của tớ cho tôi, nói ra những điều vô nghĩa thiếu suy nghĩ, vô nghĩa về cảm xúc, với rất ít sự thật, từ một tâm trí quá cuồng tín về một thứ mà nó thậm chí không thể nhìn thấy những thất bại của nó. Có vẻ như bạn đã đưa ra một vài giả định hợp lý về những gì tôi biết và không biết, tôi đã làm Javascript được 20 năm, tôi biết những hạn chế của nó, tôi hoàn toàn có thể thao tác hiệu suất cao với hơn 30 ngôn từ, tôi sử dụng những gì phù hợp, . Bạn cần trưởng thành hoặc tìm một ngành mới để thao tác. Những người như bạn là vấn đề với Phát triển phần mềm, không biết gì về những người dân thậm chí không thể tạo ra một trường hợp cho một công nghệ tiên tiến, chứ đừng nói đến việc sử dụng một công nghệ tiên tiến. Vui lòng tránh xa bàn phím và giúp sức phần còn sót lại của chúng tôi

      đi trốn

      Bạn có sử dụng trấn áp phiên bản với quy trình thao tác tiêu chuẩn (quy trình thao tác Gitflow cũ) nơi những nhà phát triển thực hiện những thay đổi trên những nhánh tính năng và mã được xem xét ngang hàng trước khi được hợp nhất không? . Tất cả những ví dụ có sẵn trực tuyến đều bị hỏng quá nhiều nên tôi đã theo dõi quá trình phát triển dự án công trình bất Động sản trên Github. Tỷ lệ mà những nhà phát triển cốt lõi đang đạt được trên cơ sở mã thực sự đáng để ý quan tâm. Điều tuyệt vời hơn thế nữa là mọi PR đều được kiểm tra đơn vị và kiểm tra tích hợp liên tục đủ tốt để mọi bản phát hành được đảm bảo hoạt động và sinh hoạt giải trí đầy đủ (theo như họ đã triển khai cho tới nay)

      đi trốn

      Bạn có sử dụng trấn áp phiên bản với quy trình thao tác tiêu chuẩn (quy trình thao tác Gitflow cũ) nơi những nhà phát triển thực hiện những thay đổi trên những nhánh tính năng và mã được xem xét ngang hàng trước khi được hợp nhất không? . Tất cả những ví dụ có sẵn trực tuyến đều bị hỏng quá nhiều nên tôi đã theo dõi quá trình phát triển dự án công trình bất Động sản trên Github. Tỷ lệ mà những nhà phát triển cốt lõi đang đạt được trên cơ sở mã thực sự đáng để ý quan tâm. Điều tuyệt vời hơn thế nữa là mọi PR đều được kiểm tra đơn vị và kiểm tra tích hợp liên tục đủ tốt để mọi bản phát hành được đảm bảo hoạt động và sinh hoạt giải trí đầy đủ (theo như họ đã triển khai cho tới nay)

      đi trốn

      Làm theo những gì Tracker1 đang nói. Linting tương đương với việc kiểm tra thời gian biên dịch trong JS. Tôi thậm chí còn sử dụng tiện ích mở rộng Sublime hiển thị lỗi kẻ nói dối trực tiếp trong trình soạn thảo khi tôi đang viết mã. Nếu bạn muốn kiểm tra ngặt nghèo hơn, bạn hoàn toàn có thể thêm trình kiểm tra kiểu, ví dụ như 'bán tiêu chuẩn', đảm bảo kiểu mã trên cơ sở toàn dự án công trình bất Động sản. Điều đó nghĩa là dấu cách không phải tab, thụt lề 2 dấu cách, hàm nhất quán, dấu ngoặc nhọn, v.v. Kiểm tra kiểu tốt cho những lỗi hình thức bề ngoài (biến chưa khởi tạo cũ, nhánh chết, giá trị không hợp lệ) nhưng ở đầu cuối bạn sẽ phải xác minh mã không còn lỗi logic thông qua kiểm tra đơn vị, kiểm tra tích hợp liên tục, kiểm tra api

      đi trốn

      Làm theo những gì Tracker1 đang nói. Linting tương đương với việc kiểm tra thời gian biên dịch trong JS. Tôi thậm chí còn sử dụng tiện ích mở rộng Sublime hiển thị lỗi kẻ nói dối trực tiếp trong trình soạn thảo khi tôi đang viết mã. Nếu bạn muốn kiểm tra ngặt nghèo hơn, bạn hoàn toàn có thể thêm trình kiểm tra kiểu, ví dụ như 'bán tiêu chuẩn', đảm bảo kiểu mã trên cơ sở toàn dự án công trình bất Động sản. Điều đó nghĩa là dấu cách không phải tab, thụt lề 2 dấu cách, hàm nhất quán, dấu ngoặc nhọn, v.v. Kiểm tra kiểu tốt cho những lỗi hình thức bề ngoài (biến chưa khởi tạo cũ, nhánh chết, giá trị không hợp lệ) nhưng ở đầu cuối bạn sẽ phải xác minh mã không còn lỗi logic thông qua kiểm tra đơn vị, kiểm tra tích hợp liên tục, kiểm tra api

      đi trốn

      Nút sử dụng I/O nhờ vào sự kiện không đồng bộ thông qua libuv (gồm có một nhóm luồng dành riêng cho những yêu cầu I/O). Luồng chính hoàn toàn không biến thành chặn trong quá trình hoạt động và sinh hoạt giải trí I/O. Nó hoạt động và sinh hoạt giải trí in như cách cụm ngoại trừ nó được tích hợp vào Node. Kiểm tra một trong những bài thuyết trình trên libuv để biết thêm rõ ràng

      đi trốn

      Nút sử dụng I/O nhờ vào sự kiện không đồng bộ thông qua libuv (gồm có một nhóm luồng dành riêng cho những yêu cầu I/O). Luồng chính hoàn toàn không biến thành chặn trong quá trình hoạt động và sinh hoạt giải trí I/O. Nó hoạt động và sinh hoạt giải trí in như cách cụm ngoại trừ nó được tích hợp vào Node. Kiểm tra một trong những bài thuyết trình trên libuv để biết thêm rõ ràng

      đi trốn

      Hiệu suất khôn ngoan, PayPal dường như nghĩ những điều tốt về Node . //đồng ghi chú. blogspot. com/2013/12/paypals-node js-vs-java-benchmark. html Để bảo mật thông tin, mô-đun 'cors' hoàn toàn có thể cắm vào Express và hoàn toàn có thể được sử dụng cho tất cả những nội dung trấn áp CORS thông thường. Mô-đun 'mũ bảo hiểm' -- cũng hoàn toàn có thể cắm vào Express -- hiển thị một bộ nhỏ những tính năng để bảo vệ chống lại những người dân tiêu dùng độc hại gồm có bảo vệ tập lệnh chéo trang tương hỗ update. Tôi không chắc mình có gọi một nhà phát triển Fullstack JS là 'thiếu kinh nghiệm tay nghề' hay là không. Có một sự hiểu biết vững chắc về nhiều nghành trong một hệ sinh thái phát triển không ngừng nghỉ phát triển thật rất khó chịu. bạn biết đấy, "10 năm kinh nghiệm tay nghề so với 1 năm kinh nghiệm tay nghề 10 lần"

      đi trốn

      Hiệu suất khôn ngoan, PayPal dường như nghĩ những điều tốt về Node . //đồng ghi chú. blogspot. com/2013/12/paypals-node js-vs-java-benchmark. html Để bảo mật thông tin, mô-đun 'cors' hoàn toàn có thể cắm vào Express và hoàn toàn có thể được sử dụng cho tất cả những nội dung trấn áp CORS thông thường. Mô-đun 'mũ bảo hiểm' -- cũng hoàn toàn có thể cắm vào Express -- hiển thị một bộ nhỏ những tính năng để bảo vệ chống lại những người dân tiêu dùng độc hại gồm có bảo vệ tập lệnh chéo trang tương hỗ update. Tôi không chắc mình có gọi một nhà phát triển Fullstack JS là 'thiếu kinh nghiệm tay nghề' hay là không. Có một sự hiểu biết vững chắc về nhiều nghành trong một hệ sinh thái phát triển không ngừng nghỉ phát triển thật rất khó chịu. bạn biết đấy, "10 năm kinh nghiệm tay nghề so với 1 năm kinh nghiệm tay nghề 10 lần"

      Josh Morgan

      Nút. js thậm chí đã không tồn tại được 10 năm (thật buồn cười khi tôi đã thấy những bài đăng việc làm thực sự yêu cầu 10 năm kinh nghiệm tay nghề với nó). Tôi hiểu rằng việc theo kịp sự phát triển của công nghệ tiên tiến là một thách thức và sau 20 năm nữa, tôi hoàn toàn có thể nói rằng với bạn rằng vào thời điểm bạn hoàn toàn cảm thấy thoải mái với bất kỳ "full stack" nào thì nó sẽ ít liên quan hơn vì công nghệ tiên tiến luôn phát triển. Sẽ không còn gì thay đổi được điều đó, đó chỉ là cách mọi thứ vận hành. Tuy nhiên, bạn không thể thực sự có bánh của bạn và ăn nó ở đó. Công nghệ mới ít được thử nghiệm hơn và do đó kém bảo vệ an toàn và đáng tin cậy hơn, nhưng công nghệ tiên tiến cũ hơn không còn nhiều tính năng. Luôn luôn có một sự đánh đổi ở đó. Bất cứ ai tuyên bố khác đang bán cho bạn thứ gì đó

      Josh Morgan

      Nút. js thậm chí đã không tồn tại được 10 năm (thật buồn cười khi tôi đã thấy những bài đăng việc làm thực sự yêu cầu 10 năm kinh nghiệm tay nghề với nó). Tôi hiểu rằng việc theo kịp sự phát triển của công nghệ tiên tiến là một thách thức và sau 20 năm nữa, tôi hoàn toàn có thể nói rằng với bạn rằng vào thời điểm bạn hoàn toàn cảm thấy thoải mái với bất kỳ "full stack" nào thì nó sẽ ít liên quan hơn vì công nghệ tiên tiến luôn phát triển. Sẽ không còn gì thay đổi được điều đó, đó chỉ là cách mọi thứ vận hành. Tuy nhiên, bạn không thể thực sự có bánh của bạn và ăn nó ở đó. Công nghệ mới ít được thử nghiệm hơn và do đó kém bảo vệ an toàn và đáng tin cậy hơn, nhưng công nghệ tiên tiến cũ hơn không còn nhiều tính năng. Luôn luôn có một sự đánh đổi ở đó. Bất cứ ai tuyên bố khác đang bán cho bạn thứ gì đó

      Anil Verma

      Tôi được bán trên Node. JS (nếu ứng dụng của bạn đang xây dựng những ứng dụng mạng hoàn toàn có thể mở rộng cao), Node. JS là con phố để đi vào năm 2015. Không có thắc mắc tại sao rất nhiều công ty mới thành lập và những tập đoàn lớn đang áp dụng nó. C ++, Java, Ruby và Python có vị trí của chúng trong những nghành tương ứng. Các công ty và sản phẩm mới sẽ được xây dựng trên nhiều ngôn từ. Tôi Dự kiến việc áp dụng ROR sẽ vẫn cao trong trong năm tới để xây dựng những ứng dụng web (đơn giản vì những nhà phát triển ROR thuận tiện và đơn giản có sẵn và thời gian đưa ra thị trường quá ngắn). Bài báo xuất sắc tuy nhiên Tomislav

      Anil Verma

      Tôi được bán trên Node. JS (nếu ứng dụng của bạn đang xây dựng những ứng dụng mạng hoàn toàn có thể mở rộng cao), Node. JS là con phố để đi vào năm 2015. Không có thắc mắc tại sao rất nhiều công ty mới thành lập và những tập đoàn lớn đang áp dụng nó. C ++, Java, Ruby và Python có vị trí của chúng trong những nghành tương ứng. Các công ty và sản phẩm mới sẽ được xây dựng trên nhiều ngôn từ. Tôi Dự kiến việc áp dụng ROR sẽ vẫn cao trong trong năm tới để xây dựng những ứng dụng web (đơn giản vì những nhà phát triển ROR thuận tiện và đơn giản có sẵn và thời gian đưa ra thị trường quá ngắn). Bài báo xuất sắc tuy nhiên Tomislav

      Daniel Jawna

      rất đúng. Công việc của tôi là bảo dưỡng những ứng dụng cũ, thường là truy cập SQL Server dB's + ms hoặc giao diện người tiêu dùng php. Những thứ này thường được làm bởi "cháu trai giỏi máy tính". Không có khóa ngoại, nhưng hiệu suất cao ngày + giờ tùy chỉnh. nội dung bài viết của bạn là tâm trạng của tôi đúng chuẩn

      Daniel Jawna

      rất đúng. Công việc của tôi là bảo dưỡng những ứng dụng cũ, thường là truy cập SQL Server dB's + ms hoặc giao diện người tiêu dùng php. Những thứ này thường được làm bởi "cháu trai giỏi máy tính". Không có khóa ngoại, nhưng hiệu suất cao ngày + giờ tùy chỉnh. nội dung bài viết của bạn là tâm trạng của tôi đúng chuẩn

      JPoet

      Tôi thấy Java rất kém hiệu suất cao và rất tốn kém đối với nhiều việc làm tẻ nhạt ở mức độ thấp. C ++ dành riêng cho những lập trình viên hoàn toàn có thể xử lý truy cập/con trỏ bộ nhớ. Hầu hết những lập trình viên của công ty không thể. Ngày trước, bạn có PL/1 và C cho kỹ sư phần mềm và COBOL cho lập trình viên công nghệ tiên tiến thông tin

      JPoet

      Tôi thấy Java rất kém hiệu suất cao và rất tốn kém đối với nhiều việc làm tẻ nhạt ở mức độ thấp. C ++ dành riêng cho những lập trình viên hoàn toàn có thể xử lý truy cập/con trỏ bộ nhớ. Hầu hết những lập trình viên của công ty không thể. Ngày trước, bạn có PL/1 và C cho kỹ sư phần mềm và COBOL cho lập trình viên công nghệ tiên tiến thông tin

      joselie castañeda

      cảm ơn. điều này rất hữu ích vì tôi sẽ tạo một ứng dụng doanh nghiệp tính toán nặng. tôi nghĩ tôi sẽ thử nút. js trên ứng dụng khác. giờ đây, tôi sẽ sử dụng ruby ​​​​trên đường ray

      joselie castañeda

      cảm ơn. điều này rất hữu ích vì tôi sẽ tạo một ứng dụng doanh nghiệp tính toán nặng. tôi nghĩ tôi sẽ thử nút. js trên ứng dụng khác. giờ đây, tôi sẽ sử dụng ruby ​​​​trên đường ray

      Túlio Spuri

      Khi bài báo này được viết?

      Túlio Spuri

      Khi bài báo này được viết?

      vũ khí

      Bài báo tuyệt vời

      vũ khí

      Bài báo tuyệt vời

      Olivier

      Cảm ơn vì nội dung bài viết này, tôi nghĩ rằng lập luận về cùng một ngôn từ cho front và dev là vấn đề tồi tệ nhất mà tôi hoàn toàn có thể nghe hoặc đọc. Có tổ chức và mã hóa tốt với js là những điều kinh khủng hơn xuất hiện trong một nhóm. Tôi thao tác từ năm ngoái trong dự án công trình bất Động sản phụ trợ và đôi khi điều này sẽ được mã hóa với khung trưởng thành như django, mất quá nhiều thời gian để hiểu hàng trăm lỗi. Nơi mongodb cảm thấy thoáng mát? . Tôi thực sự nghĩ rằng nút js là một trò đùa lớn và không hay lắm. The package manager give us some cool package to patch and hide the bad side of node but there is nothing to do about the callback hell. Cuối cùng, mã trông in như một hộp cát to hơn tôi không thích mở tệp để gỡ lỗi hoặc thêm một số trong những dòng mã. Vì vậy, kết luận của tôi là dành riêng cho ứng dụng nhỏ tại sao không nhưng đối với dự án công trình bất Động sản lớn và phát triển không sử dụng cũng như nodejs và mongodb. Trân trọng

      Olivier

      Cảm ơn vì nội dung bài viết này, tôi nghĩ rằng lập luận về cùng một ngôn từ cho front và dev là vấn đề tồi tệ nhất mà tôi hoàn toàn có thể nghe hoặc đọc. Có tổ chức và mã hóa tốt với js là những điều kinh khủng hơn xuất hiện trong một nhóm. Tôi thao tác từ năm ngoái trong dự án công trình bất Động sản phụ trợ và đôi khi điều này sẽ được mã hóa với khung trưởng thành như django, mất quá nhiều thời gian để hiểu hàng trăm lỗi. Nơi mongodb cảm thấy thoáng mát? . Tôi thực sự nghĩ rằng nút js là một trò đùa lớn và không hay lắm. The package manager give us some cool package to patch and hide the bad side of node but there is nothing to do about the callback hell. Cuối cùng, mã trông in như một hộp cát to hơn tôi không thích mở tệp để gỡ lỗi hoặc thêm một số trong những dòng mã. Vì vậy, kết luận của tôi là dành riêng cho ứng dụng nhỏ tại sao không nhưng đối với dự án công trình bất Động sản lớn và phát triển không sử dụng cũng như nodejs và mongodb. Trân trọng

      khoa học tự nhiên

      Đây là một nhận xét khá thiếu thông tin vì ES6 vẫn hoạt động và sinh hoạt giải trí tốt như một năm trước. Bên cạnh OO từ ES6, còn tồn tại TypeScript tương hỗ update thêm OO cấp doanh nghiệp hơn và hoàn toàn có thể thực thi kiểu gõ tĩnh cho JavaScript. Thích. NET được biên dịch thành clr thô, TypeScript cũng hoàn toàn có thể được "phiên mã" thành Javascript thô. Hiện tại, NodeJS được cho phép thực hiện gần như thể tất cả những điều này với việc sử dụng tài nguyên sever thậm chí còn tốt hơn và không biến thành khóa hệ điều hành. Hãy nghĩ đến việc cắt giảm hơn 2000% ngân sách hạ tầng của bạn vì bạn thực sự tránh việc phải mở rộng quy mô theo chiều dọc hoặc trả tiền cho những ngân sách đó. NET trên mỗi nút quy mô. Ngay cả khi bạn đang đi theo con phố Mono, lol. Tôi sẽ để bạn tự nghiên cứu và phân tích cách so sánh đó. Các công ty công nghệ tiên tiến tài chính như Paypal biết một hoặc hai điều về tải cũng đang vui vẻ làm những điều tuyệt vời với nút, vì vậy tôi thực sự nghi ngờ nhận xét này của bạn xuất phát từ kiến ​​thức về những gì hệ sinh thái NodeJS thực sự đáp ứng cho sản phẩm táo bạo được xây dựng . Ngoài ra, bất kể bạn hoàn toàn có thể có ý kiến ​​thành viên nào về ORM, thực tế hợp lý của tất cả là ORMS sử dụng nhiều tài nguyên bộ nhớ hơn mức thiết yếu để chạy phụ trợ. Họ cũng đánh vào nguồn tài liệu của bạn nhiều hơn nữa mức thiết yếu. Bạn đã và đang nói điều gì đó liên quan đến bộ nhớ đệm và ORM mà tôi đoán bạn đang đề cập đến bộ nhớ đệm cấp ORM (e. g. Bộ nhớ đệm L1/2 trong chính sách Ngủ đông). Tôi kỳ vọng bạn hiểu rằng bạn KHÔNG THỰC SỰ CẦN ORM để thực hiện bộ nhớ đệm cho bạn. Bạn hoàn toàn có thể làm điều này bằng phương pháp sử dụng những công cụ tách rời hiệu suất cao và đẹp mắt. và tại đó linh hoạt hơn. Điều quan trọng cần ghi nhớ là trong cả giờ đây, vẫn có người bảo vệ Fortran là công cụ thực sự duy nhất để xây dựng phần mềm. Mọi thứ di tán khá nhanh trong ngành này. Niềm tự hào là vấn đề dễ hiểu, nhưng lời khuyên của tôi dành riêng cho bạn là hãy tham gia vào ít nhất 1 thế giới công nghệ tiên tiến mới nhiều nhất là vài năm một lần. Bạn sẽ ở lại sở hữu liên quan và cảm ơn tôi sau

      khoa học tự nhiên

      Đây là một nhận xét khá thiếu thông tin vì ES6 vẫn hoạt động và sinh hoạt giải trí tốt như một năm trước. Bên cạnh OO từ ES6, còn tồn tại TypeScript tương hỗ update thêm OO cấp doanh nghiệp hơn và hoàn toàn có thể thực thi kiểu gõ tĩnh cho JavaScript. Thích. NET được biên dịch thành clr thô, TypeScript cũng hoàn toàn có thể được "phiên mã" thành Javascript thô. Hiện tại, NodeJS được cho phép thực hiện gần như thể tất cả những điều này với việc sử dụng tài nguyên sever thậm chí còn tốt hơn và không biến thành khóa hệ điều hành. Hãy nghĩ đến việc cắt giảm hơn 2000% ngân sách hạ tầng của bạn vì bạn thực sự tránh việc phải mở rộng quy mô theo chiều dọc hoặc trả tiền cho những ngân sách đó. NET trên mỗi nút quy mô. Ngay cả khi bạn đang đi theo con phố Mono, lol. Tôi sẽ để bạn tự nghiên cứu và phân tích cách so sánh đó. Các công ty công nghệ tiên tiến tài chính như Paypal biết một hoặc hai điều về tải cũng đang vui vẻ làm những điều tuyệt vời với nút, vì vậy tôi thực sự nghi ngờ nhận xét này của bạn xuất phát từ kiến ​​thức về những gì hệ sinh thái NodeJS thực sự đáp ứng cho sản phẩm táo bạo được xây dựng . Ngoài ra, bất kể bạn hoàn toàn có thể có ý kiến ​​thành viên nào về ORM, thực tế hợp lý của tất cả là ORMS sử dụng nhiều tài nguyên bộ nhớ hơn mức thiết yếu để chạy phụ trợ. Họ cũng đánh vào nguồn tài liệu của bạn nhiều hơn nữa mức thiết yếu. Bạn đã và đang nói điều gì đó liên quan đến bộ nhớ đệm và ORM mà tôi đoán bạn đang đề cập đến bộ nhớ đệm cấp ORM (e. g. Bộ nhớ đệm L1/2 trong chính sách Ngủ đông). Tôi kỳ vọng bạn hiểu rằng bạn KHÔNG THỰC SỰ CẦN ORM để thực hiện bộ nhớ đệm cho bạn. Bạn hoàn toàn có thể làm điều này bằng phương pháp sử dụng những công cụ tách rời hiệu suất cao và đẹp mắt. và tại đó linh hoạt hơn. Điều quan trọng cần ghi nhớ là trong cả giờ đây, vẫn có người bảo vệ Fortran là công cụ thực sự duy nhất để xây dựng phần mềm. Mọi thứ di tán khá nhanh trong ngành này. Niềm tự hào là vấn đề dễ hiểu, nhưng lời khuyên của tôi dành riêng cho bạn là hãy tham gia vào ít nhất 1 thế giới công nghệ tiên tiến mới nhiều nhất là vài năm một lần. Bạn sẽ ở lại sở hữu liên quan và cảm ơn tôi sau

      sửa đổi và biên tập

      Tôi thực sự muốn hoàn toàn có thể dùng thử Node. js nhưng thật khó để đã có được một chiếc gì đó đang chạy. Cài đặt một ứng dụng "đơn giản" luôn dẫn đến một list những việc bạn cần làm, setup toàn cầu (không phải lúc nào thì cũng hoàn toàn có thể), sửa đổi tệp, nỗ lực tìm hiểu ý nghĩa của những nhà phát triển chết tiệt trong hướng dẫn ít ỏi của tớ. Nó sẽ nhanh gọn trở nên tồi tệ nếu bạn làm sai một điều nhỏ nhất. Nếu nó tuyệt vời như vậy, tại sao không còn ai tìm ra cách tạo những trình setup đơn giản với thứ này?

      sửa đổi và biên tập

      Tôi thực sự muốn hoàn toàn có thể dùng thử Node. js nhưng thật khó để đã có được một chiếc gì đó đang chạy. Cài đặt một ứng dụng "đơn giản" luôn dẫn đến một list những việc bạn cần làm, setup toàn cầu (không phải lúc nào thì cũng hoàn toàn có thể), sửa đổi tệp, nỗ lực tìm hiểu ý nghĩa của những nhà phát triển chết tiệt trong hướng dẫn ít ỏi của tớ. Nó sẽ nhanh gọn trở nên tồi tệ nếu bạn làm sai một điều nhỏ nhất. Nếu nó tuyệt vời như vậy, tại sao không còn ai tìm ra cách tạo những trình setup đơn giản với thứ này?

      Alexis Menest

      Nền tảng blog ma https. //github. com/TryGhost/Ghost/blob/master/package. json

      Alexis Menest

      Nền tảng blog ma https. //github. com/TryGhost/Ghost/blob/master/package. json

      David

      Vâng, thật tuyệt nếu có một buổi hẹn hò. Tôi nhận định rằng họ không hiển thị nó vì họ biết mọi người dân có thành kiến ​​ra làm sao đối với thông tin mới - nhưng sẽ không còn ý nghĩa gì nếu che giấu nó trong một bài báo về công nghệ tiên tiến đang phát triển nhanh gọn

      David

      Vâng, thật tuyệt nếu có một buổi hẹn hò. Tôi nhận định rằng họ không hiển thị nó vì họ biết mọi người dân có thành kiến ​​ra làm sao đối với thông tin mới - nhưng sẽ không còn ý nghĩa gì nếu che giấu nó trong một bài báo về công nghệ tiên tiến đang phát triển nhanh gọn

      Samuel_Ogden

      Nút sẽ là một ý tưởng tồi cho một chiếc gì đó như 9gag. com thì sao?

      Samuel_Ogden

      Nút sẽ là một ý tưởng tồi cho một chiếc gì đó như 9gag. com thì sao?

      chaitanya

      Này Tomislav, Bài báo tuyệt vời. Tôi muốn biết rằng nếu giả sử tôi muốn nhận đầu ra phần cứng bên phía ngoài trong ứng dụng của tớ, e. g, máy quét hoặc chữ ký điện tử (nếu người tiêu dùng đang thực hiện chữ ký điện tử hoặc nhận bản sao được quét từ máy quét), thì tôi hoàn toàn có thể truy cập trực tiếp vào ứng dụng của tớ không?

      chaitanya

      Này Tomislav, Bài báo tuyệt vời. Tôi muốn biết rằng nếu giả sử tôi muốn nhận đầu ra phần cứng bên phía ngoài trong ứng dụng của tớ, e. g, máy quét hoặc chữ ký điện tử (nếu người tiêu dùng đang thực hiện chữ ký điện tử hoặc nhận bản sao được quét từ máy quét), thì tôi hoàn toàn có thể truy cập trực tiếp vào ứng dụng của tớ không?

      Misha R

      TypeScript là trình bao bọc cú pháp trên JavaScript tiêu chuẩn và biên dịch thành JavaScript tiêu chuẩn. Nó được phát minh để làm cho mã hoàn toàn có thể bảo dưỡng được và được cho phép nó được sử dụng in như một ngôn từ lập trình thực sự. Cho rằng bạn phải sử dụng JS khi thích hợp, nó làm cho việc viết nó trở nên quen thuộc hơn với những lập trình viên thực thụ và làm cho nó hoàn toàn có thể bảo dưỡng được. Điều đó nói rằng, mọi thứ JS và Node đều phù phù phù hợp với những ứng dụng web mỏng dính, nhẹ cần phải kết phù phù hợp với nhau một cách nhanh gọn và hiệu suất cao, cho những thứ như ASP. NET, JSP, Ruby, v.v. hơi quá mức thiết yếu. Believing that one can not use the new magic Node for everything just because one guy can write front and back end is amateurish

      Misha R

      TypeScript là trình bao bọc cú pháp trên JavaScript tiêu chuẩn và biên dịch thành JavaScript tiêu chuẩn. Nó được phát minh để làm cho mã hoàn toàn có thể bảo dưỡng được và được cho phép nó được sử dụng in như một ngôn từ lập trình thực sự. Cho rằng bạn phải sử dụng JS khi thích hợp, nó làm cho việc viết nó trở nên quen thuộc hơn với những lập trình viên thực thụ và làm cho nó hoàn toàn có thể bảo dưỡng được. Điều đó nói rằng, mọi thứ JS và Node đều phù phù phù hợp với những ứng dụng web mỏng dính, nhẹ cần phải kết phù phù hợp với nhau một cách nhanh gọn và hiệu suất cao, cho những thứ như ASP. NET, JSP, Ruby, v.v. hơi quá mức thiết yếu. Believing that one can not use the new magic Node for everything just because one guy can write front and back end is amateurish

      ellisgl

      Đóng gói một ngôn từ bằng một ngôn từ khác mà bạn phải dịch sẽ thêm ngân sách. Ngoài ra có những thứ không dịch được, chỉ là trong môi trường tự nhiên thiên nhiên sống đời thường thực, dịch Một trong những ngôn từ, bạn mất một chiếc gì đó. Trong trường hợp này, bạn mất tốc độ (phải dịch từ cái này sang cái khác) và tối ưu hóa, vì nguyên do một. ORM không làm tất cả. Ban đầu, tôi dành riêng cho ORM, sau đó tôi tìm hiểu sâu về nó và bạn kết thúc với câu "Tôi làm điều này ra làm sao?", "Ồ, bạn không thể thuận tiện và đơn giản, bạn phải thực hiện 10 truy vấn khác", hoặc bạn kết thúc . ORM đơn giản là "Chọn blah blah từ bảng trong đó x = y". Yếu tố đổi thưởng nhỏ duy nhất của một số trong những ORM là chúng sẽ quy đổi ngôn từ của chúng sang bất kỳ DB nào. Nhưng nếu bạn được trả tiền để thao tác trên một ứng dụng cấp doanh nghiệp, thì bạn chỉ đang xử lý 1 - 3 cơ sở tài liệu, được sử dụng cho những thứ riêng biệt. Nếu bạn có 500 nhân viên cấp dưới và 10.000 người tiêu dùng, ORM hoàn toàn có thể bị tắc nghẽn

      ellisgl

      Đóng gói một ngôn từ bằng một ngôn từ khác mà bạn phải dịch sẽ thêm ngân sách. Ngoài ra có những thứ không dịch được, chỉ là trong môi trường tự nhiên thiên nhiên sống đời thường thực, dịch Một trong những ngôn từ, bạn mất một chiếc gì đó. Trong trường hợp này, bạn mất tốc độ (phải dịch từ cái này sang cái khác) và tối ưu hóa, vì nguyên do một. ORM không làm tất cả. Ban đầu, tôi dành riêng cho ORM, sau đó tôi tìm hiểu sâu về nó và bạn kết thúc với câu "Tôi làm điều này ra làm sao?", "Ồ, bạn không thể thuận tiện và đơn giản, bạn phải thực hiện 10 truy vấn khác", hoặc bạn kết thúc . ORM đơn giản là "Chọn blah blah từ bảng trong đó x = y". Yếu tố đổi thưởng nhỏ duy nhất của một số trong những ORM là chúng sẽ quy đổi ngôn từ của chúng sang bất kỳ DB nào. Nhưng nếu bạn được trả tiền để thao tác trên một ứng dụng cấp doanh nghiệp, thì bạn chỉ đang xử lý 1 - 3 cơ sở tài liệu, được sử dụng cho những thứ riêng biệt. Nếu bạn có 500 nhân viên cấp dưới và 10.000 người tiêu dùng, ORM hoàn toàn có thể bị tắc nghẽn

      quả cầu Nils

      Này, có thư viện/công cụ nào bạn đã sử dụng để tạo đồ họa không?

      quả cầu Nils

      Này, có thư viện/công cụ nào bạn đã sử dụng để tạo đồ họa không?

      Praveen kumar Pamani

      Cảm ơn bạn vì nội dung bài viết này, tôi sẽ đề xuất nội dung bài viết này nếu mọi người muốn biết nút là gì và tất cả chúng ta hoàn toàn có thể làm gì với nodejs

      Praveen kumar Pamani

      Cảm ơn bạn vì nội dung bài viết này, tôi sẽ đề xuất nội dung bài viết này nếu mọi người muốn biết nút là gì và tất cả chúng ta hoàn toàn có thể làm gì với nodejs

      dohkoo

      Bài viết hay, cảm ơn vì cái nhìn tổng quan. . //www. steshadoku. com

      dohkoo

      Bài viết hay, cảm ơn vì cái nhìn tổng quan. . //www. steshadoku. com

      subkuchsell. com

      cảm ơn vì nội dung bài viết tuyệt vời thực sự rất hữu ích để hiểu nút. js subkuchsell. com

      subkuchsell. com

      cảm ơn vì nội dung bài viết tuyệt vời thực sự rất hữu ích để hiểu nút. js subkuchsell. com

      Tomislav Capan

      Vâng, đây là sự việc thật, nội dung bài viết được tác giả và xuất bản vào tháng 8 năm 2013. (xin lỗi vì đã xác nhận muộn như vậy, chưa thấy điều này sớm hơn)

      Tomislav Capan

      Vâng, đây là sự việc thật, nội dung bài viết được tác giả và xuất bản vào tháng 8 năm 2013. (xin lỗi vì đã xác nhận muộn như vậy, chưa thấy điều này sớm hơn)

      người chơi gôn484

      Trong vũ trụ nào Mongodb hoàn toàn có thể được gọi là DB đối tượng? . Đó là DB hướng tài liệu không phải DB hướng đối tượng. Tôi chỉ không thích bất kỳ đứa trẻ nào bị nhầm lẫn

      người chơi gôn484

      Trong vũ trụ nào Mongodb hoàn toàn có thể được gọi là DB đối tượng? . Đó là DB hướng tài liệu không phải DB hướng đối tượng. Tôi chỉ không thích bất kỳ đứa trẻ nào bị nhầm lẫn

      người chơi gôn484

      Chúng tôi đã chuyển sang một ngôn từ cho phụ trợ và giao diện người tiêu dùng nhưng chúng tôi quyết định giữ lại ngôn từ chạy nhanh như chớp trong thời gian chạy và có loại bảo vệ an toàn và đáng tin cậy cũng như tương hỗ những ORM tiêu chuẩn với tính năng tải chậm, v.v. , Chúng tôi không thích vứt bỏ tất cả những thứ đó, đó là vấn đề bạn phải làm khi sử dụng giải pháp JS trên phần phụ trợ của tớ. Java trên phần phụ trợ là vấn đề không cần bàn cãi (miễn là bạn không thật kỹ sư và làm phức tạp quá mức ứng dụng của tớ với bộ nhớ và CPU đang làm hết sạch Spring). Chìa khóa để sử dụng Java cho giao diện người tiêu dùng là sử dụng một khung công tác thao tác Java thực hiện tất cả JS cho bạn - vì vậy bạn hoàn toàn có thể sống trong một thế giới không phải xử lý JS và gắn bó với mã được biên dịch, bảo vệ an toàn và đáng tin cậy về kiểu chữ, phù phù phù hợp với doanh nghiệp. Giải pháp này cũng hoàn toàn có thể mở rộng - J2SE đã tương hỗ phân cụm trong gần hai thập kỷ nay. Một khung giao diện người tiêu dùng Java như vậy đáp ứng tất cả những nhu yếu JS của chúng tôi và đáp ứng cho chúng tôi tất cả tính năng 'update một phần' với quy mô điều khiển sự kiện AJAX với tùy chọn websockets là Wicket

      người chơi gôn484

      Chúng tôi đã chuyển sang một ngôn từ cho phụ trợ và giao diện người tiêu dùng nhưng chúng tôi quyết định giữ lại ngôn từ chạy nhanh như chớp trong thời gian chạy và có loại bảo vệ an toàn và đáng tin cậy cũng như tương hỗ những ORM tiêu chuẩn với tính năng tải chậm, v.v. , Chúng tôi không thích vứt bỏ tất cả những thứ đó, đó là vấn đề bạn phải làm khi sử dụng giải pháp JS trên phần phụ trợ của tớ. Java trên phần phụ trợ là vấn đề không cần bàn cãi (miễn là bạn không thật kỹ sư và làm phức tạp quá mức ứng dụng của tớ với bộ nhớ và CPU đang làm hết sạch Spring). Chìa khóa để sử dụng Java cho giao diện người tiêu dùng là sử dụng một khung công tác thao tác Java thực hiện tất cả JS cho bạn - vì vậy bạn hoàn toàn có thể sống trong một thế giới không phải xử lý JS và gắn bó với mã được biên dịch, bảo vệ an toàn và đáng tin cậy về kiểu chữ, phù phù phù hợp với doanh nghiệp. Giải pháp này cũng hoàn toàn có thể mở rộng - J2SE đã tương hỗ phân cụm trong gần hai thập kỷ nay. Một khung giao diện người tiêu dùng Java như vậy đáp ứng tất cả những nhu yếu JS của chúng tôi và đáp ứng cho chúng tôi tất cả tính năng 'update một phần' với quy mô điều khiển sự kiện AJAX với tùy chọn websockets là Wicket

      Rumana Amin

      Xin chào Tomislav, nội dung bài viết của bạn rất hay và nhiều thông tin. Nó đã giúp tôi rất nhiều để hiểu về Node. js và nó sử dụng

      Rumana Amin

      Xin chào Tomislav, nội dung bài viết của bạn rất hay và nhiều thông tin. Nó đã giúp tôi rất nhiều để hiểu về Node. js và nó sử dụng

      đại bàng trận chiến tranh

      Câu trả lời đơn giản là không sử dụng Node. js cho điều đó. Bạn đang thiếu phần nào trong đó? . thuận tiện và đơn giản. Thực hiện một câu lệnh THAM GIA lớn trên một triệu hàng trên RDBS? . Bác sĩ phẫu thuật không thao tác với cưa máy. Các lập trình viên cũng tránh việc

      đại bàng trận chiến tranh

      Câu trả lời đơn giản là không sử dụng Node. js cho điều đó. Bạn đang thiếu phần nào trong đó? . thuận tiện và đơn giản. Thực hiện một câu lệnh THAM GIA lớn trên một triệu hàng trên RDBS? . Bác sĩ phẫu thuật không thao tác với cưa máy. Các lập trình viên cũng tránh việc

      người chơi gôn484

      Bạn đánh giá thấp ORM vì hầu hết những người dân chưa bao giờ xây dựng khối mạng lưới hệ thống OO với ORM hiệu suất cao tốt mà đá làm được (và bởi ORM 'tốt', tôi KHÔNG đề cập đến ORM mà hầu hết mọi người nghĩ đến khi sử dụng, Hibernate. )

      người chơi gôn484

      Bạn đánh giá thấp ORM vì hầu hết những người dân chưa bao giờ xây dựng khối mạng lưới hệ thống OO với ORM hiệu suất cao tốt mà đá làm được (và bởi ORM 'tốt', tôi KHÔNG đề cập đến ORM mà hầu hết mọi người nghĩ đến khi sử dụng, Hibernate. )

      người chơi gôn484

      Tôi đồng ý - nội dung bài viết này và những nhận xét liên quan của những chàng trai hâm mộ JS xác nhận nỗi sợ hãi của tôi rằng hầu hết những ứng dụng JavaScript phải có những quy mô miền thiếu máu (https. //martinfowler. com/bliki/AnemiaDomainModel. html) khá tầm thường và hầu như ít biểu thức hơn - tất cả việc làm sẽ được thực hiện trong logic trách nhiệm tách rời (không được đóng gói và chắc như đinh không đa hình)

      người chơi gôn484

      Tôi đồng ý - nội dung bài viết này và những nhận xét liên quan của những chàng trai hâm mộ JS xác nhận nỗi sợ hãi của tôi rằng hầu hết những ứng dụng JavaScript phải có những quy mô miền thiếu máu (https. //martinfowler. com/bliki/AnemiaDomainModel. html) khá tầm thường và hầu như ít biểu thức hơn - tất cả việc làm sẽ được thực hiện trong logic trách nhiệm tách rời (không được đóng gói và chắc như đinh không đa hình)

      người chơi gôn484

      Tôi đoán trải nghiệm của bạn với 'ORM' chỉ số lượng giới hạn ở Hibernate. Tôi đã có một trải nghiệm tương tự cho tới lúc tôi nghĩ rằng phải có những ORM tốt hơn ngoài kia - hãy nhìn xung quanh - những ORM khác tồn tại

      người chơi gôn484

      Tôi đoán trải nghiệm của bạn với 'ORM' chỉ số lượng giới hạn ở Hibernate. Tôi đã có một trải nghiệm tương tự cho tới lúc tôi nghĩ rằng phải có những ORM tốt hơn ngoài kia - hãy nhìn xung quanh - những ORM khác tồn tại

      người chơi gôn484

      Điểm hay Adin - Tôi sắp làm những cái giống nhau. Liên quan đến tuyên bố của bài báo rằng những khung truyền thống "sinh ra một luồng mới cho từng link (yêu cầu)". Vì vậy, rất sai. Chắc hẳn đã khiến nhiều người tức giận khi thấy một lỗi như vậy mà a) tác giả biết rõ ràng là sai và kiên trì với quan điểm hoặc b) chưa bao giờ sử dụng bất kỳ khung phụ trợ nào khác và vì vậy không sở hữu và nhận ra rằng tôi đã sai. Sự phối hợp của link với yêu cầu cũng rất thú vị. Kiến thức của anh ấy không mở rộng để hiểu khái niệm link "keep lives". Một link không còn quan hệ 1-1 với những yêu cầu như anh ấy đề xuất. Loại quan điểm sai lệch, méo mó này về mức độ thông minh, trưởng thành, phát triển cao của những khuôn khổ (ví dụ:. , Java/Tomcat và tôi chắc như đinh. net/ASP) khiến tôi cảm thấy như nội dung bài viết này bị vấy bẩn và không đại diện cho việc thật về những lựa chọn thay thế. Liên quan đến việc vô hiệu tâm lý Yêu cầu/Phản hồi - nhiều khung hiện tại đã và đang thực hiện điều này và tạo ra một kiến ​​trúc hướng thành phần tương hỗ những bản update nhờ vào quy mô không đồng bộ. ví dụ. , Java Wicket hoặc Angular JS. Nó gần in như chạy JS (một loại ngôn từ không bảo vệ an toàn và đáng tin cậy, không phải OO - nếu bạn là người tin tưởng rằng tính thừa kế 'nguyên mẫu' thủ công, tự lắp ráp theo đúng tinh thần OO thực sự) trên sever không phải là một khái niệm có đủ giá trị mà không cần xoắn . Nó là như vậy hoặc hoàn toàn có thể nó là như vậy

      người chơi gôn484

      Điểm hay Adin - Tôi sắp làm những cái giống nhau. Liên quan đến tuyên bố của bài báo rằng những khung truyền thống "sinh ra một luồng mới cho từng link (yêu cầu)". Vì vậy, rất sai. Chắc hẳn đã khiến nhiều người tức giận khi thấy một lỗi như vậy mà a) tác giả biết rõ ràng là sai và kiên trì với quan điểm hoặc b) chưa bao giờ sử dụng bất kỳ khung phụ trợ nào khác và vì vậy không sở hữu và nhận ra rằng tôi đã sai. Sự phối hợp của link với yêu cầu cũng rất thú vị. Kiến thức của anh ấy không mở rộng để hiểu khái niệm link "keep lives". Một link không còn quan hệ 1-1 với những yêu cầu như anh ấy đề xuất. Loại quan điểm sai lệch, méo mó này về mức độ thông minh, trưởng thành, phát triển cao của những khuôn khổ (ví dụ:. , Java/Tomcat và tôi chắc như đinh. net/ASP) khiến tôi cảm thấy như nội dung bài viết này bị vấy bẩn và không đại diện cho việc thật về những lựa chọn thay thế. Liên quan đến việc vô hiệu tâm lý Yêu cầu/Phản hồi - nhiều khung hiện tại đã và đang thực hiện điều này và tạo ra một kiến ​​trúc hướng thành phần tương hỗ những bản update nhờ vào quy mô không đồng bộ. ví dụ. , Java Wicket hoặc Angular JS. Nó gần in như chạy JS (một loại ngôn từ không bảo vệ an toàn và đáng tin cậy, không phải OO - nếu bạn là người tin tưởng rằng tính thừa kế 'nguyên mẫu' thủ công, tự lắp ráp theo đúng tinh thần OO thực sự) trên sever không phải là một khái niệm có đủ giá trị mà không cần xoắn . Nó là như vậy hoặc hoàn toàn có thể nó là như vậy

      người chơi gôn484

      Không phải mọi người tiêu dùng có phiên hoạt động và sinh hoạt giải trí đều cần phải phân bổ chuỗi riêng của tớ - những chuỗi được chia sẻ và từng người tiêu dùng chỉ việc một chuỗi cho những yêu cầu dịch vụ. Các yêu cầu đến trong những đợt ngắn và tránh việc phải link một luồng quá lâu nếu mã phía sau đang thực thi bằng ngôn từ được biên dịch, tối ưu hóa cao và cơ sở tài liệu nhanh. Vì nguyên do này, bạn không thể nói "Hệ thống A hoàn toàn có thể tương hỗ 10.000 luồng do đó khối mạng lưới hệ thống chỉ hoàn toàn có thể tương hỗ 10.000 máy khách". Số rất đông người tiêu dùng được tương hỗ là những đơn đặt hàng to hơn số lượng luồng có sẵn do tính đa dạng. Hầu hết những giao diện người tiêu dùng, nếu được viết tốt, chỉ 'điện thoại về nhà' cho sever khi thực sự thiết yếu - không phải "mọi lúc"

      người chơi gôn484

      Không phải mọi người tiêu dùng có phiên hoạt động và sinh hoạt giải trí đều cần phải phân bổ chuỗi riêng của tớ - những chuỗi được chia sẻ và từng người tiêu dùng chỉ việc một chuỗi cho những yêu cầu dịch vụ. Các yêu cầu đến trong những đợt ngắn và tránh việc phải link một luồng quá lâu nếu mã phía sau đang thực thi bằng ngôn từ được biên dịch, tối ưu hóa cao và cơ sở tài liệu nhanh. Vì nguyên do này, bạn không thể nói "Hệ thống A hoàn toàn có thể tương hỗ 10.000 luồng do đó khối mạng lưới hệ thống chỉ hoàn toàn có thể tương hỗ 10.000 máy khách". Số rất đông người tiêu dùng được tương hỗ là những đơn đặt hàng to hơn số lượng luồng có sẵn do tính đa dạng. Hầu hết những giao diện người tiêu dùng, nếu được viết tốt, chỉ 'điện thoại về nhà' cho sever khi thực sự thiết yếu - không phải "mọi lúc"

      người chơi gôn484

      Nó in như nút. js mọi người nghĩ rằng JS là ngôn từ duy nhất tương hỗ đồng thời (tuy nhiên họ quảng bá giải pháp sever web một luồng -WTF?) và không chặn I/O - tất nhiên không phải vậy nhưng bạn có vẻ như rất hào hứng với những thứ như vậy mà tôi hoàn toàn có thể

      người chơi gôn484

      Nó in như nút. js mọi người nghĩ rằng JS là ngôn từ duy nhất tương hỗ đồng thời (tuy nhiên họ quảng bá giải pháp sever web một luồng -WTF?) và không chặn I/O - tất nhiên không phải vậy nhưng bạn có vẻ như rất hào hứng với những thứ như vậy mà tôi hoàn toàn có thể

      Tomislav Capan

      Tất nhiên bạn hiểu đây là hình minh họa. Trong thực tế, đó là một nhóm luồng, bị số lượng giới hạn bởi bộ nhớ khả dụng và có độ lớn theo thứ tự nhỏ hơn những gì giao diện sự kiện hoàn toàn có thể tương hỗ. Cảm ơn vì nhận xét, tuy nhiên

      Tomislav Capan

      Tất nhiên bạn hiểu đây là hình minh họa. Trong thực tế, đó là một nhóm luồng, bị số lượng giới hạn bởi bộ nhớ khả dụng và có độ lớn theo thứ tự nhỏ hơn những gì giao diện sự kiện hoàn toàn có thể tương hỗ. Cảm ơn vì nhận xét, tuy nhiên

      Trưởng khoa Radcliffe

      Chết tiệt, đây là một oldie nhưng goodie. Tôi nói chuyện như vậy này, và hoàn toàn có thể mượn slide của bạn. Theo những ý định ban đầu này của nút để thực hiện những điều tuyệt vời như ghi db theo hàng đợi và đẩy sever, thật đáng ngạc nhiên là hầu hết những ứng dụng nút ngày này vẫn được xây dựng trên quy mô yêu cầu/phản hồi và chờ đón ghi db một cách đồng bộ (nhưng không theo khối)

      Trưởng khoa Radcliffe

      Chết tiệt, đây là một oldie nhưng goodie. Tôi nói chuyện như vậy này, và hoàn toàn có thể mượn slide của bạn. Theo những ý định ban đầu này của nút để thực hiện những điều tuyệt vời như ghi db theo hàng đợi và đẩy sever, thật đáng ngạc nhiên là hầu hết những ứng dụng nút ngày này vẫn được xây dựng trên quy mô yêu cầu/phản hồi và chờ đón ghi db một cách đồng bộ (nhưng không theo khối)

      Ulyana

      Nội thất tuyệt vời, cảm ơn vì nội dung bài viết. Nút. js có rất nhiều lợi thế. nó nhẹ, hiệu suất cao và đáp ứng kĩ năng sử dụng Javascript trên cả giao diện người tiêu dùng và phụ trợ mở ra những kĩ năng mới. Tuy nhiên, nó cũng luôn có thể có nhược điểm bạn cần lưu ý. Chúng tôi đã nỗ lực mô tả một số trong những trong nội dung bài viết https. //www. Chuyên Viên mạng. co/blog/pros-cons-use-node. js-backend Ý kiến ​​​​của bạn sẽ được đánh giá cao

      Ulyana

      Nội thất tuyệt vời, cảm ơn vì nội dung bài viết. Nút. js có rất nhiều lợi thế. nó nhẹ, hiệu suất cao và đáp ứng kĩ năng sử dụng Javascript trên cả giao diện người tiêu dùng và phụ trợ mở ra những kĩ năng mới. Tuy nhiên, nó cũng luôn có thể có nhược điểm bạn cần lưu ý. Chúng tôi đã nỗ lực mô tả một số trong những trong nội dung bài viết https. //www. Chuyên Viên mạng. co/blog/pros-cons-use-node. js-backend Ý kiến ​​​​của bạn sẽ được đánh giá cao

      Maq Said

      Điều tuyệt vời. MongoDB tôi chưa bao giờ mày mò. Bạn hoàn toàn có thể nói rằng thêm về nó không và tại sao nó hoạt động và sinh hoạt giải trí tốt với Node. js

      Maq Said

      Điều tuyệt vời. MongoDB tôi chưa bao giờ mày mò. Bạn hoàn toàn có thể nói rằng thêm về nó không và tại sao nó hoạt động và sinh hoạt giải trí tốt với Node. js

      Misha Kov

      Đây đúng là nội dung bài viết tôi đang tìm kiếm, Ví dụ về nơi Node. js hoàn toàn có thể được sử dụng. Cảm ơn

      Misha Kov

      Đây đúng là nội dung bài viết tôi đang tìm kiếm, Ví dụ về nơi Node. js hoàn toàn có thể được sử dụng. Cảm ơn

      Jessica Barnes

      Node.js has the concept of asynchronous execution of Input-output based events through a thread pool. And it concentrates in execution and topping well for low-CPU, highly I/O-bound operations. Just starting to work on Node.js will allow a developers to analyze how to exploit it for maximum performance.

      Jessica Barnes

      Node.js has the concept of asynchronous execution of Input-output based events through a thread pool. And it concentrates in execution and topping well for low-CPU, highly I/O-bound operations. Just starting to work on Node.js will allow a developers to analyze how to exploit it for maximum performance.

      Janguk James Lee

      Đây là một nội dung bài viết khá hay thúc đẩy tôi tiếp nhận Node. js

      Janguk James Lee

      Đây là một nội dung bài viết khá hay thúc đẩy tôi tiếp nhận Node. js

      Magdalena Mbn

      nếu họ không thể học cách xử lý con trỏ thì họ không thể lập trình

      Magdalena Mbn

      nếu họ không thể học cách xử lý con trỏ thì họ không thể lập trình

      web đặt hàng

      TwaT - bạn hoàn toàn có thể cho tôi biết quán rượu / quán bar nào bạn ghé thăm để tôi hoàn toàn có thể tránh bạn không. Tôi sẽ không ngạc nhiên nếu bạn OrgASM khi bạn đọc lại phản hồi của tớ

      web đặt hàng

      TwaT - bạn hoàn toàn có thể cho tôi biết quán rượu / quán bar nào bạn ghé thăm để tôi hoàn toàn có thể tránh bạn không. Tôi sẽ không ngạc nhiên nếu bạn OrgASM khi bạn đọc lại phản hồi của tớ

      philippe

      Tôi muốn có nhiều Java hơn cho phía máy khách hơn là nhiều Javascript hơn cho phía sever. Tái cấu trúc Javascript là một cơn ác mộng. Bạn nào làm phần mềm 4000 - 10000 class như mình thì biết mình đang nói cái gì. Tôi thấy việc quản lý luồng là một điểm cộng (nếu bạn nhắm tiềm năng chạy một trang web như Meta thì bạn không quan tâm. Nội dung tĩnh của bạn sẽ sử dụng đám mây bùng phát là 4000 link CÙNG LÚC chỉ là lưu lượng truy vấn điên cuồng nên tôi sẽ không ảnh hưởng đến kĩ năng bảo dưỡng VS kĩ năng mở rộng) Ít nhất là không hợp lệ từ những ứng dụng mạng nội bộ. Tôi tò mò liệu phiên bản tương lai của Tomcat có sử dụng mẫu lò phản ứng hay là không, bản thân Java cũng đáp ứng tương hỗ cho việc này. Bạn hoàn toàn có thể xử lý nội dung tĩnh bằng Nginx có mẫu lò phản ứng được triển khai https. //www. pascaldimassimo. com/2011/02/10/java-and-the-reactor-pattern Vẫn cho những trang động, tôi chưa tìm thấy bất kỳ manh mối nào. A thread does not hold the session context so i am really skeptical about having 2Mb in there. Trừ khi được mã hóa kém

      philippe

      Tôi muốn có nhiều Java hơn cho phía máy khách hơn là nhiều Javascript hơn cho phía sever. Tái cấu trúc Javascript là một cơn ác mộng. Bạn nào làm phần mềm 4000 - 10000 class như mình thì biết mình đang nói cái gì. Tôi thấy việc quản lý luồng là một điểm cộng (nếu bạn nhắm tiềm năng chạy một trang web như Meta thì bạn không quan tâm. Nội dung tĩnh của bạn sẽ sử dụng đám mây bùng phát là 4000 link CÙNG LÚC chỉ là lưu lượng truy vấn điên cuồng nên tôi sẽ không ảnh hưởng đến kĩ năng bảo dưỡng VS kĩ năng mở rộng) Ít nhất là không hợp lệ từ những ứng dụng mạng nội bộ. Tôi tò mò liệu phiên bản tương lai của Tomcat có sử dụng mẫu lò phản ứng hay là không, bản thân Java cũng đáp ứng tương hỗ cho việc này. Bạn hoàn toàn có thể xử lý nội dung tĩnh bằng Nginx có mẫu lò phản ứng được triển khai https. //www. pascaldimassimo. com/2011/02/10/java-and-the-reactor-pattern Vẫn cho những trang động, tôi chưa tìm thấy bất kỳ manh mối nào. A thread does not hold the session context so i am really skeptical about having 2Mb in there. Trừ khi được mã hóa kém

      Cody Donelson

      Sự kiện tuy nhiên nội dung bài viết đã được vài năm nhưng nó đưa ra một số trong những điểm tuyệt vời về Node. js. Đọc qua những phản hồi, tôi đã thấy một số trong những bài đăng về cách Node. js là một điều tuyệt vời và những thứ khác về cách những ngôn từ số 1 là C#, Java hoặc Ruby. Chúng tôi biết rằng JavaScript sẽ mang lại một số trong những phức tạp vì nó liên quan đến Lập trình hướng đối tượng, Ánh xạ quan hệ đối tượng, cơ sở tài liệu quan hệ, v.v. Tôi nghĩ rằng hầu hết những nhà phát triển/người quản lý dự án công trình bất Động sản đang đánh mất điều gì tạo nên JavaScript và Node. js (cũng như AngularJS) thật tuyệt vời. Chúng tôi hoàn toàn có thể triển khai ngôn từ phía máy khách ở phía sever và làm cho nó thực hiện đúng chuẩn như bất kỳ ngôn từ phía sever nào khác. I personally love using Node. js, tuy nhiên thật khó để tôi hoàn toàn chìm đắm trong một ngôn từ không còn kiểu chữ. Một khi tôi nắm bắt được thực tế rằng khung trời là số lượng giới hạn khi nói đến những đối tượng của tôi và tôi không phải ánh xạ những đối tượng của tớ từ loại này sang loại khác (như bạn làm trong C# hoặc Java), kĩ năng viết mã của tôi đã thực hiện . Gần đây tôi đã dạy một vài kỹ thuật viên PC tại công ty mà tôi thao tác về lập trình. Sếp của tôi rất nhất quyết rằng Node. js là con phố của tương lai (đặc biệt là việc ngừng sử dụng những trình cắm Java trong trong năm tới) Tôi có xu hướng đồng ý. Tôi không hiểu tại sao lại sở hữu một cuộc tranh luận như vậy khi có liên quan đến những đối tượng trong Node. js/JavaScript. Tôi thấy việc sử dụng những đối tượng thuận tiện và đơn giản hơn và tôi hoàn toàn có thể sử dụng chúng linh hoạt hơn VÌ có JavaScript. Tôi sẽ sớm triển khai những thuộc tính HTML trong những đối tượng cho những ứng dụng Express 4 của tớ. Tôi nhận thấy rằng PUG (trước đây là Jade) cực kỳ hoàn toàn có thể xử lý những đối tượng và mảng, do đó, giúp ai đó thuận tiện và đơn giản thay đổi động loại, giá trị hoặc thẻ nhờ vào đối tượng được gửi qua GET hoặc . Tôi tin rằng một khi mọi người tham gia với sự hiểu biết về cách Node. js hoạt động và sinh hoạt giải trí, cách bạn hoàn toàn có thể triển khai hiệu suất cao những tiêu chuẩn thường được thực thi bằng ngôn từ đánh máy và thực tế là Node. js có một số trong những điều kỳ quặc về nó, liệu tất cả chúng ta có thực sự hoàn toàn có thể tiến lên phía trước và làm cho ngôn từ này trở nên mạnh mẽ và tự tin như những ngôn từ trước nó không. Cuối cùng, tôi sẽ nói thêm rằng kĩ năng sử dụng Node. js hầu như ở mọi nơi làm cho nó tốt hơn nhiều. Cho dù đó là ứng dụng Express được triển khai trên sever Linux, ứng dụng Electron được triển khai trên sever đầu cuối, Node. js thực tế là một sự phù hợp hoàn hảo nhất cho bất kỳ khối lượng việc làm nào nên phải hoàn thành xong

      Cody Donelson

      Sự kiện tuy nhiên nội dung bài viết đã được vài năm nhưng nó đưa ra một số trong những điểm tuyệt vời về Node. js. Đọc qua những phản hồi, tôi đã thấy một số trong những bài đăng về cách Node. js là một điều tuyệt vời và những thứ khác về cách những ngôn từ số 1 là C#, Java hoặc Ruby. Chúng tôi biết rằng JavaScript sẽ mang lại một số trong những phức tạp vì nó liên quan đến Lập trình hướng đối tượng, Ánh xạ quan hệ đối tượng, cơ sở tài liệu quan hệ, v.v. Tôi nghĩ rằng hầu hết những nhà phát triển/người quản lý dự án công trình bất Động sản đang đánh mất điều gì tạo nên JavaScript và Node. js (cũng như AngularJS) thật tuyệt vời. Chúng tôi hoàn toàn có thể triển khai ngôn từ phía máy khách ở phía sever và làm cho nó thực hiện đúng chuẩn như bất kỳ ngôn từ phía sever nào khác. I personally love using Node. js, tuy nhiên thật khó để tôi hoàn toàn chìm đắm trong một ngôn từ không còn kiểu chữ. Một khi tôi nắm bắt được thực tế rằng khung trời là số lượng giới hạn khi nói đến những đối tượng của tôi và tôi không phải ánh xạ những đối tượng của tớ từ loại này sang loại khác (như bạn làm trong C# hoặc Java), kĩ năng viết mã của tôi đã thực hiện . Gần đây tôi đã dạy một vài kỹ thuật viên PC tại công ty mà tôi thao tác về lập trình. Sếp của tôi rất nhất quyết rằng Node. js là con phố của tương lai (đặc biệt là việc ngừng sử dụng những trình cắm Java trong trong năm tới) Tôi có xu hướng đồng ý. Tôi không hiểu tại sao lại sở hữu một cuộc tranh luận như vậy khi có liên quan đến những đối tượng trong Node. js/JavaScript. Tôi thấy việc sử dụng những đối tượng thuận tiện và đơn giản hơn và tôi hoàn toàn có thể sử dụng chúng linh hoạt hơn VÌ có JavaScript. Tôi sẽ sớm triển khai những thuộc tính HTML trong những đối tượng cho những ứng dụng Express 4 của tớ. Tôi nhận thấy rằng PUG (trước đây là Jade) cực kỳ hoàn toàn có thể xử lý những đối tượng và mảng, do đó, giúp ai đó thuận tiện và đơn giản thay đổi động loại, giá trị hoặc thẻ nhờ vào đối tượng được gửi qua GET hoặc . Tôi tin rằng một khi mọi người tham gia với sự hiểu biết về cách Node. js hoạt động và sinh hoạt giải trí, cách bạn hoàn toàn có thể triển khai hiệu suất cao những tiêu chuẩn thường được thực thi bằng ngôn từ đánh máy và thực tế là Node. js có một số trong những điều kỳ quặc về nó, liệu tất cả chúng ta có thực sự hoàn toàn có thể tiến lên phía trước và làm cho ngôn từ này trở nên mạnh mẽ và tự tin như những ngôn từ trước nó không. Cuối cùng, tôi sẽ nói thêm rằng kĩ năng sử dụng Node. js hầu như ở mọi nơi làm cho nó tốt hơn nhiều. Cho dù đó là ứng dụng Express được triển khai trên sever Linux, ứng dụng Electron được triển khai trên sever đầu cuối, Node. js thực tế là một sự phù hợp hoàn hảo nhất cho bất kỳ khối lượng việc làm nào nên phải hoàn thành xong

      Gage Poon

      Nhanh như chớp, nhẹ, phát triển mượt mà và hiệu suất tốt hơn, đây là một số trong những thay đổi mang tính chất chất cách mạng do Node js mang lại trong nghành phát triển web. Node js mang lại sự tự do sáng tạo, nguồn tài nguyên phong phú như NPM (Trình quản lý gói nút), là thư viện chia sẻ những mô-đun và công cụ. Ngoài ra, những ứng dụng web được phát triển bằng khung phát triển web này hoàn toàn có thể mở rộng hơn. Khung JavaScript này rất phổ biến trong số những phần khởi động. Tuy nhiên, những tên tuổi lớn như Netflix, Paypal, eBay, Microsoft, Uber, DivBox. trong vv. cũng đang sử dụng khung phát triển web giàu tính năng này

      Gage Poon

      Nhanh như chớp, nhẹ, phát triển mượt mà và hiệu suất tốt hơn, đây là một số trong những thay đổi mang tính chất chất cách mạng do Node js mang lại trong nghành phát triển web. Node js mang lại sự tự do sáng tạo, nguồn tài nguyên phong phú như NPM (Trình quản lý gói nút), là thư viện chia sẻ những mô-đun và công cụ. Ngoài ra, những ứng dụng web được phát triển bằng khung phát triển web này hoàn toàn có thể mở rộng hơn. Khung JavaScript này rất phổ biến trong số những phần khởi động. Tuy nhiên, những tên tuổi lớn như Netflix, Paypal, eBay, Microsoft, Uber, DivBox. trong vv. cũng đang sử dụng khung phát triển web giàu tính năng này

      rajivkumar bonam

      what is node js how to write code in node js

      rajivkumar bonam

      what is node js how to write code in node js

      Chế độ quân chủ dẫn đến tự do

      Bài báo tuyệt vời, cảm ơn

      Chế độ quân chủ dẫn đến tự do

      Bài báo tuyệt vời, cảm ơn

      csps1343

      Nice node.js tutorials, thanks for sharing.

      csps1343

      Nice node.js tutorials, thanks for sharing.

      Rahul Raut

      thank you so much. learn node https://monkelite.com/what-is-node-js-learn-step-by-step/

      Rahul Raut

      thank you so much. learn node https://monkelite.com/what-is-node-js-learn-step-by-step/

      Chương 247- Nhà Phát Triển Phần Mềm

      "Why The Hell Would I Use Node.js? A Case-by-Case Tutorial". Every beginner must required to read this article. It's so easy to understand main Node.Js concept and programming overviews. Hire Node js development company

      Sam Watt

      Wow, đây là một nội dung bài viết rất rõ ràng và sâu sắc nhờ vào những trường hợp. Tôi thích đọc nó, và kỳ vọng sẽ thấy nhiều bài báo như vậy. Cảm ơn bạn

      ThinkStart Pvt Ltd

      bài hữu ích. Cảm ơn bạn đã chia sẻ thông tin tuyệt vời này

      w3villa

      Hi, I like to read your informative blog. Cám ơn vì đã chia sẻ

      marie adams

      I made several successful investments with this broker before losing 40% of my savings to the trading scam. Tôi đã tốn rất nhiều tiền và đau đớn khi đầu tư vào một khoản vốn thậm chí không còn thật. Tôi đã hoàn toàn có thể thu hồi phần lớn số tiền và chúng tôi vẫn đang nỗ lực thu hồi phần còn sót lại. Tôi thực sự khuyên bạn nên AN TOÀN ĐỂ ĐẦU TƯ TỐT cho bất kỳ ai tham gia vào một vụ lừa đảo thanh toán giao dịch thanh toán trực tuyến Lừa đảo và chiếm đoạt tài sản thanh toán giao dịch thanh toán đã thu hồi 350.000 đô la DƯỚI ĐÂY LÀ LIÊN HỆ CỦA HỌ. [email protected] comcall/whatsapp. +14638887391

      marie adams

      Tôi đã thực hiện một số trong những khoản vốn thành công với nhà môi giới này trước khi mất 40% số tiền tiết kiệm của tớ vì trò lừa đảo thanh toán giao dịch thanh toán. Tôi đã tốn rất nhiều tiền và đau đớn khi đầu tư vào một khoản vốn thậm chí không còn thật. I was able to recover the majority of the funds, and we are still attempting to recover the rest. I highly recommend SECURE TO INVEST WELL for anyone involved in an online trading scam Trading scam $350,000 recovered BELOW IS THEIR CONTACT. [email protected] cuộc gọi / whatsapp. +14638887391

      Joshua Flynn

      Viết rất hay nhưng bạn hoàn toàn có thể làm điều tương tự bằng phương pháp sử dụng ngăn xếp đèn thông thường với lệnh gọi JQuery thông qua AJAX in như tất cả những trình nhắn tin tức thời trước đây đã thực hiện mà không gặp rắc rối nào không? . Tôi đã đọc hàng trăm bài báo trên web về nguyên do tại sao ai đó nên sử dụng nút nhưng tất cả chúng đều đề cập đến điều gì đó hoàn toàn có thể được thực hiện với công nghệ tiên tiến mà chúng tôi đã có từ trong năm 90. Vậy nút có gì đặc biệt mà tôi nên tìm hiểu về nó với công nghệ tiên tiến 30 năm tuổi đã tương hỗ nhiều chủng loại ứng dụng in như bạn đã đề cập trong nội dung bài viết này 15 năm trước khi nút xuất hiện và quay trở lại khi quay số nhanh. Vì vậy, nếu nó đủ nhanh để thực hiện điều tương tự qua link quay số thì nút đã làm gì để cải tổ hệ sinh thái của internet

      Tải thêm tài liệu liên quan đến nội dung bài viết Nodejs lấy url gốc programming nodejs

      Review Nodejs lấy url gốc ?

      Bạn vừa Read tài liệu Với Một số hướng dẫn một cách rõ ràng hơn về Video Nodejs lấy url gốc tiên tiến nhất

      Share Link Cập nhật Nodejs lấy url gốc miễn phí

      Quý khách đang tìm một số trong những Chia SẻLink Tải Nodejs lấy url gốc miễn phí.

      Hỏi đáp thắc mắc về Nodejs lấy url gốc

      Nếu sau khi đọc nội dung bài viết Nodejs lấy url gốc vẫn chưa hiểu thì hoàn toàn có thể lại Comment ở cuối bài để Mình lý giải và hướng dẫn lại nha #Nodejs #lấy #url #gốc