Developers are expected to write efficient code that both tests well and then performs in production under variable load conditions — and do it fast. Common challenges include identifying and resolving performance bottlenecks before code is deployed in production
Unfortunately, the tools currently available to Node.js developers only partially address these issues. And they typically come with additional drawbacks like requiring devs to either instrument their code directly or attempt “monkey-patching” (where the tool automatically instruments the code). Worse, there is a significant performance overhead that renders these tools problematic for use in production at scale, and visualization is generally either non-intuitive or even lacking entirely.
NodeSource’s release of N|Solid v2.2 aims to speed the development cycle and conquer these challenges by vanquishing lengthy debugging cycles and post-production performance issues. “By making it simple and cost-effective to directly send data to statsd-compliant systems, we help Node.js teams obtain deep and actionable insights, increasing the time-to-value while simultaneously ensuring security,” said NodeSource founder and CEO Joe McCann.
The N|Solid runtime serves as a drop-in replacement for open source Node and enables the capture of highly detailed performance data — including some metrics not available via the original Node.js runtime.
On top of N|Solid’s existing bona fides — hardening Node.js with package monitoring, policies and 24-hour security response — this new version of N|Solid adds streamlined integration with statsd-compliant systems, providing an easy way to integrate Node-specific metrics.
“If you’re using a StatsD-compliant metrics analysis/visualization tool like Graphite, DataDog and Grafana, it’s now simple to configure N|Solid to dispatch metrics to your existing tooling,” explained Pravin Halady, NodeSource product manager, in a blog post on the new release.
Earlier versions could be configured to dispatch metrics but required a manual and relatively complex setup. The driving force behind developing v2.2 was to streamline this process, allowing users to start seeing, and using, application data right away.
- N|Solid v2.2 Cluster View
“Organizations currently running Node can swap in the N|Solid v2.2 runtime and have access to data they can’t already get or don’t already have, without a long implementation cycle or changes to existing application code,” McCann said. Teams can now maintain existing workflows and monitoring/reporting infrastructure without disruption, easily integrating with popular statsd-compliant cloud platforms like AWS’ CloudWatch, or Google’s Stackdriver.
- N|Solid v2.2 shows clearly and intuitively where new memory is being allocated in your JS heap
NodeSource’s client list includes progressive Node.js adopters such as PayPal, Uber and NASA — whose engineering team offered this endorsement of N|Solid:
“At NASA, mission-critical code is the rule, not the exception. Our astronauts put their lives in the hands of our software on every mission. As we transition from a legacy environment to a modern Node-based architecture, N|Solid, along with the support of NodeSource, is proving invaluable by allowing us to scale rapidly while staying focused on our core mission.”
The fully-compatible Node.js runtime is available as a free trial.
Feature image: N|Solid v2.2 CPU Profile (N|Solid)