A HTTP client that is also a scripting language/test framework. Can be used as an external framework for testing Web APIs as well as a tool for scraping static web pages.
GNU General Public License v3.0
2
stars
0
forks
source link
Implemented a new (and hopefully more optimal) Batch statement #1
This new batch statement will start its workers before executing the
first pass. The interpreter will then enqueue each MethodCall it finds
in the first pass as a unit of work for the worker pool to execute.
Whenever a worker produces a result it will be enqueued in the result
queue. Results in this queue are then consumed by a consumer that pushes
each result onto the Results heap (heap.Interface).
Once the first pass has completed the interpreter is blocked until the
BatchSuite has executed all of its work. After this the execution is
similar to the old batch statement.
From inital benchmarking this implementation is around 50% faster
overall than the old batch statement implementation. More testing needs
to be done, however...
This new batch statement will start its workers before executing the first pass. The interpreter will then enqueue each MethodCall it finds in the first pass as a unit of work for the worker pool to execute.
Whenever a worker produces a result it will be enqueued in the result queue. Results in this queue are then consumed by a consumer that pushes each result onto the Results heap (heap.Interface).
Once the first pass has completed the interpreter is blocked until the BatchSuite has executed all of its work. After this the execution is similar to the old batch statement.
From inital benchmarking this implementation is around 50% faster overall than the old batch statement implementation. More testing needs to be done, however...