Skip to main content

Subscribe, Acquire, and Re-Advertise products.

Project description

MetPX-Sarracenia

PyPI version Supported Python versions License (GPLv2) Issue Tracker Build Status

[ Guides ] [ Manual Pages ]

[ Orientation ] [ Référence ]

MetPX-sr3 (Sarracenia v3) is a data duplication or distribution pump that leverages existing standard technologies (web servers and the AMQP brokers) to achieve real-time message delivery and end-to-end transparency in file transfers. Data sources establish a directory structure which is carried through any number of intervening pumps until they arrive at a client. The client can provide explicit acknowledgement that propagates back through the network to the source. Whereas traditional file switching is a point-to-point affair where knowledge is only between each segment, in Sarracenia, information flows from end-to- end in both directions.

At its heart, Sarracenia exposes a tree of web accessible folders (WAF), using any standard HTTP server (tested with apache). Weather applications are soft real-time, where data should be delivered as quickly as possible to the next hop, and minutes, perhaps seconds, count. The standard web push technologies, ATOM, RSS, etc… are actually polling technologies that when used in low latency applications consume a great deal of bandwidth and overhead. For exactly these reasons, those standards stipulate a minimum polling interval of five minutes. Advanced Message Queueing Protocol (AMQP) messaging brings true push to notifications, and makes real-time sending far more efficient.

MetPX-sr3 (Sarracenia v3) est un engin de copie et de distribution de données qui utilise des technologies standards (tel que les services web et le courtier de messages AMQP) afin d’effectuer des transferts de données en temps réel tout en permettant une transparence de bout en bout. Alors que chaque commutateur Sundew est unique en soit, offrant des configurations sur mesure et permutations de données multiples, Sarracenia cherche à maintenir l’intégrité de la structure des données, tel que proposée et organisée par la source jusqu’à destination. Le client peut fournir des accusés de réception qui se propagent à travers tous les noeuds de la chaîne, en sens inverse jusqu’à la source. Tandis qu’un commutateur traditionnel échange les données de point à point, Sarracenia permet le passage des données d’un bout à l’autre du réseau, tant dans une direction que dans l’autre.

Sarracenia, à sa plus simple expression, expose une arborescence de dossiers disponibles sur la toile (“Web Accessible Folders”). Le temps de latence est une composante névralgique des applications météo: les minutes, et parfois les secondes, sont comptées. Les technologies standards, telles que ATOM et RSS, sont des technologies qui consomment beaucoup de bande passante et de ressouces lorsqu’elles doivent répondre à ces contraintes. Ces standards limitent la fréquence maximale de vérification du serveur à cinq minutes. Le protocole de séquencement de messages avancés (Advanced Message Queuing Protocol, AMQP) est une approche beaucoup plus efficace pour la livraison d’annonces de nouveaux produits.

An initiative of Shared Services Canada http://ssc-spc.gc.ca in support of internal needs of the Government of Canada

Une initiative de Services partagés Canada https://ssc-spc.gc.ca pour appuyer les opérations du gouvernement du Canada

page web / homepage: http://github.com/MetPX/sarracenia

Concepts: Sarracenia in 10 Minutes Video (anglais seulement)

Release Notes

lists all changes between versions.

git repo

v03_wip … still in development, too many changes to list. unstable, breaking changes possible, only for experimental use.

Peter Silva <peter.silva@canada.ca>

Project Prime mover, Manager & Evangelist. A lot of Documentation, and Review of Docs. Much discussion with Michel. Small bug fixes. wrote none of the code in v2, except most (all?) plugins included with package. added the ‘plugin’ model to v2. Did all work for sr3.

Benoit Lapointe <Benoit.Lapointe@canada.ca>

Improving testing frameworks/ Design documentation / code hygiene. Some MQTT interop work.

Michel Grenier <michel.grenier@IamRetiredNow.ca> (Retired)

dd_subscribe, sr_subscribe, sr_sarra, sr_post, All of the code until 2016/03. A lot of the code, until 2017/08-2018/05 (major refactoring.) Retired now… none of the code since sr3, but a lot was copy/pasted.

Jun Hu <jun.hu3@canada.ca>

Documentation Diagrams, lead on some deployments (head tester!) plugin work.

Noureddine Habili <Noureddine.Habili@canada.ca>

lead on other deployments ( project lead on Sarrasemina ) plugin work.

Khosrow Ebrahimpour <khosrow@ChangedJobs.ca> (no long involved.)

Packaging & Process (Debian, Launchpad, some pypi, the vagrant self-test) originally proposed migration to github.

Daluma Sen <Daluma.Sen@canada.ca>

some work on sr_watch, and worked on sr_post as well for caching.

Murray Rennie <Murray.Rennie@canada.ca>

sr_winnow, worked on that with Michel. lots of work on plugins and LDM bridge for UNIDATA and NOAAPORT ingest.

Dominic.Racette <Dominic.Racette@canada.ca>

actually a client, not really an author, but participation was crucial. for five years of patient testing in a very large deployment scenario.

credit for Sarracenia image used as github avatar photo

Jay Lechtman jay.lechtman@gmail.com - www.horrorculture.weebly.com

Project details


Release history Release notifications | RSS feed

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distributions

No source distribution files available for this release.See tutorial on generating distribution archives.

Built Distribution

metpx_sr3-3.0.11-py3-none-any.whl (314.2 kB view hashes)

Uploaded Python 3

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page