nodeRunner | JavaScript app that runs scripts every second | Runtime Evironment library
kandi X-RAY | nodeRunner Summary
kandi X-RAY | nodeRunner Summary
nodeRunner is a Node.js server app that runs scripts every second, minute, hour or overnight, each group in its own folder. It's the first of a series of "server snacks" that came out in early 2015. Copy noderunner.js to a folder with a single sub-folder: scripts. In scripts, there are four sub-folders, everySecond, everyMinute, everyHour, overnight and startup. You can use the examples in the scripts folder here as examples to help you get started. Any file with a .js extension in those folders are loaded and run when it's their time. All other files are ignored. The files are not cached, so you can make changes while nodeRunner is running. They share data through a structure called localStorage, which works more or less like localStorage in browsers. It doesn't have a file size limit, but it's a good idea to keep it small, because it's potentially saved every second. It automatically creates the folders it needs when it boots up. The server provides three endpoints: version, now and status, that tell you what version is running, what the current time is on the server, and echoes the contents of the prefs and stats structs. I like file sharing software like Dropbox, Box, Google Drive, OneDrive, BT Sync. I've built a few pieces of software over the years based on the idea of storing all the data in folder structures. This means that pieces of the app can easily be distributed among a variety of machines, or moved. With folders, I can manage my scripts from any of my sharing-capable computers, which includes my desktop, laptop, tablet and smartphone. This is an adaptation of a core feature in Frontier, a scripting and object database environment I led the development of. Now that I'm working primarily in Node, I wanted the same ability to quickly add and edit scripts that are constantly running on net-accessible systems. I've iterated over the code to try to make it good sample code for JavaScript projects. I wanted to make code that could be used for people who are just getting started with Node, to help make the process easier. There will always be more work to do here. ;-). Moved the example scripts into a new folder. When you install a noderRunner it should come with no scripts running. Added support for Amazon S3. There are new built-in routines that create and read files, set metadata, list the objects in a bucket. Code reorg. There's now a lib folder, and it contains a module called utils.js. This simplifies noderunner.js, and makes it easier for nodeRunner to share code with other projects. New environment variable, noderunnerFolderPath, lets you set the folder nodeRunner runs from, i.e. where it looks for scripts, prefs, and where it stores its data. See this blog post on this release, including general philosophy of nodeRunner. Please post a note on the Server Snacks mail list.
Support
Quality
Security
License
Reuse
Top functions reviewed by kandi - BETA
- Make sure a path exists
nodeRunner Key Features
nodeRunner Examples and Code Snippets
Community Discussions
Trending Discussions on nodeRunner
QUESTION
TLDR: I set a flag in a callback and its value doesn't change in the main loop.
Unfortunately I have to make a simplified version of the code since the original is quite large, but here is the problem I am facing, in a nutshell:
...ANSWER
Answered 2021-Jan-23 at 23:04You may need to use Volatile
or Interlocked
for the modifications to keepGoing
to be immediately visible across threads.
Since keepGoing
is not a field you can't apply []
so you could pass it to the Volatile
methods by reference as follows:
Community Discussions, Code Snippets contain sources that include Stack Exchange Network
Vulnerabilities
No vulnerabilities reported
Install nodeRunner
Support
Reuse Trending Solutions
Find, review, and download reusable Libraries, Code Snippets, Cloud APIs from over 650 million Knowledge Items
Find more librariesStay Updated
Subscribe to our newsletter for trending solutions and developer bootcamps
Share this Page