1.0.9 • Published 10 months ago

nv-random-uson-stream v1.0.9

Weekly downloads
-
License
ISC
Repository
-
Last release
10 months ago

nv-random-uson-stream

  • slowly generate a random very big nested uson file (which can NOT be load by js, but can handle by c++) for test using
  • slow , about 32M/s for sync.
  • very slow, about 100K/s for async
  • number only support uint32, string only ascii
  • more faster than nv-random-json-stream (coz use a simple random-string generator)

install

  • npm install nv-random-uson-stream

usage

  const {
      sync_to_stream,    sync_to_file,
      async_to_stream,   async_to_file,
  }   = require("nv-random-uson-stream");

example

sync

  // although named sync, also need await (await the 'end' event) 
  const to_stream = (wstream,estimated_maxsz=1024*1024) => {
  const to_file = (fn="./rnd.json",estimated_maxsz=1024*1024,flags="w",start=0)=> {

async

 const to_stream = async (wstream,estimated_maxsz=1024*1024*8) => {
 const to_file = (fn="./rnd.json",estimated_maxsz=1024*1024*8,flags="w",start=0)=> {

TEST

	# node tst-sync.js 
	36,152             //---cost 36 sec to generate a 1G nested-json (very deep)
	1075793629
	# ls -l | egrep sync.json 
	-rw-r--r-- 1 root root 1008132529 Aug  3 07:47 sync.json


           nodejs cant load the generated json :(coz max-memory limit):
                 1G:
			Uncaught Error: Cannot create a string longer than 0x1fffffe8 characters

			   OR 
             256M:			   
			<--- JS stacktrace --->
			FATAL ERROR: Ineffective mark-compacts near heap limit Allocation failed - JavaScript heap out of memory

           you need a c/c++ binding OR  wasm64 to load the generated json for test your runtime:

             

METHODS

APIS

LICENSE

  • ISC
1.0.9

10 months ago

1.0.8

10 months ago

1.0.4

10 months ago