Support for Asynchronous operations in script

classic Classic list List threaded Threaded
3 messages Options
Reply | Threaded
Open this post in threaded view
|

Support for Asynchronous operations in script

Bogdan-Andrei Iancu-2
Hello all,

I'm glad to let you know that a new feature is now available in OpenSIPS 2.1 devel : the ability to perform, from script level, various operations in the asynchronous mode.

That's it: bye, bye I/O blocking !! Now you can run DB queries, REST queries or external scripts without the blocking penalty !

The OpenSIPS config file allows you to use certain functions in async way (via a dedicated statement). The suspending and resuming is done at script level. A detailed description of how the async support works in 2.1 is available here:
    http://www.opensips.org/Documentation/Script-Async-2-1

The async scripting support is just the tip of the iceberg (when comes to the work which has been done). To make this possible, radical changes were implemented in OpenSIPS 2.1 (most of them imported from OpenSIPS experimental branch):
    - per-process I/O reactors
    - timer jobs dispatched across all SIP workers (versus dedicated timer procs)
    - updatable transactions in TM (to be able to use the transactions as contexts for the async jump)
    - transaction based async support in TM module
    - processing context (to make it easier to suspend and resume the script execution)

And finally, the first modules providing async functions:
    - avpops for DB queries
    - exec for script execution
    - rest_client for REST queries

Step by step, we will migrate all the functions performing I/O ops to the async support.

The async support is still in beta, it still needs to be heavily tested, so any feedback and help from your side will be greatly appreciated.

In the meanwhile, welcome to the OpenSIPS Async World :)

Best regards,
-- 
Bogdan-Andrei Iancu
OpenSIPS Founder and Developer
http://www.opensips-solutions.com

_______________________________________________
Devel mailing list
[hidden email]
http://lists.opensips.org/cgi-bin/mailman/listinfo/devel
Reply | Threaded
Open this post in threaded view
|

Re: Support for Asynchronous operations in script

Saúl Ibarra Corretgé

On 26 Jan 2015, at 17:27, Bogdan-Andrei Iancu <[hidden email]> wrote:

> Hello all,
>
> I'm glad to let you know that a new feature is now available in OpenSIPS 2.1 devel : the ability to perform, from script level, various operations in the asynchronous mode.
>
> That's it: bye, bye I/O blocking !! Now you can run DB queries, REST queries or external scripts without the blocking penalty !
>
> The OpenSIPS config file allows you to use certain functions in async way (via a dedicated statement). The suspending and resuming is done at script level. A detailed description of how the async support works in 2.1 is available here:
>     http://www.opensips.org/Documentation/Script-Async-2-1
>
> The async scripting support is just the tip of the iceberg (when comes to the work which has been done). To make this possible, radical changes were implemented in OpenSIPS 2.1 (most of them imported from OpenSIPS experimental branch):
>     - per-process I/O reactors
>     - timer jobs dispatched across all SIP workers (versus dedicated timer procs)
>     - updatable transactions in TM (to be able to use the transactions as contexts for the async jump)
>     - transaction based async support in TM module
>     - processing context (to make it easier to suspend and resume the script execution)
>
> And finally, the first modules providing async functions:
>     - avpops for DB queries
>     - exec for script execution
>     - rest_client for REST queries
>
> Step by step, we will migrate all the functions performing I/O ops to the async support.
>
> The async support is still in beta, it still needs to be heavily tested, so any feedback and help from your side will be greatly appreciated.
>
> In the meanwhile, welcome to the OpenSIPS Async World :)
>
Great work Bogdan and team!

Onwards and upwards!


Cheers,

--
Saúl Ibarra Corretgé
AG Projects




_______________________________________________
Devel mailing list
[hidden email]
http://lists.opensips.org/cgi-bin/mailman/listinfo/devel

signature.asc (859 bytes) Download Attachment
Reply | Threaded
Open this post in threaded view
|

Re: [OpenSIPS-News] Support for Asynchronous operations in script

Ovidiu Sas
In reply to this post by Bogdan-Andrei Iancu-2
We need to add async functions to the wiki.
It should be listed under the "Core functions" section.
http://www.opensips.org/Documentation/Script-CoreFunctions-2-1

-ovidiu

On Mon, Jan 26, 2015 at 11:27 AM, Bogdan-Andrei Iancu
<[hidden email]> wrote:

> Hello all,
>
> I'm glad to let you know that a new feature is now available in OpenSIPS 2.1
> devel : the ability to perform, from script level, various operations in the
> asynchronous mode.
>
> That's it: bye, bye I/O blocking !! Now you can run DB queries, REST queries
> or external scripts without the blocking penalty !
>
> The OpenSIPS config file allows you to use certain functions in async way
> (via a dedicated statement). The suspending and resuming is done at script
> level. A detailed description of how the async support works in 2.1 is
> available here:
>     http://www.opensips.org/Documentation/Script-Async-2-1
>
> The async scripting support is just the tip of the iceberg (when comes to
> the work which has been done). To make this possible, radical changes were
> implemented in OpenSIPS 2.1 (most of them imported from OpenSIPS
> experimental branch):
>     - per-process I/O reactors
>     - timer jobs dispatched across all SIP workers (versus dedicated timer
> procs)
>     - updatable transactions in TM (to be able to use the transactions as
> contexts for the async jump)
>     - transaction based async support in TM module
>     - processing context (to make it easier to suspend and resume the script
> execution)
>
> And finally, the first modules providing async functions:
>     - avpops for DB queries
>     - exec for script execution
>     - rest_client for REST queries
>
> Step by step, we will migrate all the functions performing I/O ops to the
> async support.
>
> The async support is still in beta, it still needs to be heavily tested, so
> any feedback and help from your side will be greatly appreciated.
>
> In the meanwhile, welcome to the OpenSIPS Async World :)
>
> Best regards,
>
> --
> Bogdan-Andrei Iancu
> OpenSIPS Founder and Developer
> http://www.opensips-solutions.com
>
>
> _______________________________________________
> News mailing list
> [hidden email]
> http://lists.opensips.org/cgi-bin/mailman/listinfo/news
>



--
VoIP Embedded, Inc.
http://www.voipembedded.com

_______________________________________________
Devel mailing list
[hidden email]
http://lists.opensips.org/cgi-bin/mailman/listinfo/devel