Solace is pleased to announce the release of version 1.0.0 of a new Python client API for PubSub+ messaging applications. The API is available on our downloads page or through PyPi. To install via pip, simply type: pip install solace-pubsubplus

Depending on whose list you look at, Python is anywhere from 1st to 3rd in popularity, demand for developers, and use in popular projects among programming languages. This new API fits in nicely with the existing Solace native APIs in C, Java, .Net/C#, and JavaScript/NodeJS.

While the popularity of Python was certainly a factor in creating this new API, as well as customer demand, it’s also important as a way of opening up support for a number of use cases popular in the Python community such as event streams to analytics packages for real-time machine learning, AI, and data analysis.

An event mesh using Solace event brokers enables the distribution and federation of streaming events across your organization, regardless of where the applications live or the language you’re using. With the addition of PubSub+ Messaging API for Python, the event mesh can deliver events to your Python applications in Pandas, NumPy, TensorFlow, Keras, and more. Data is the lifeblood of data science, and event streaming data that is distributed across your event mesh makes that data real-time, up-to-date, and fresh.

If you are looking for a tutorial to learn how to use the Solace PubSub+ Messaging API for Python, you can get started by:

You can also subscribe to our channel on YouTube. There you will get a mix of topics such as using the PubSub+ Platform, event-driven architecture, customer testimonials, and, of course, technical content related to writing event-driven applications and the features of PubSub+ Event Broker.

Recently Tamimi, one of our terrific developer advocates, did a live coding session featuring an early access version of the Python API. It is well worth a view.

In addition to the resources above, it is interesting to look at ways that developers are using Python in event-driven applications in general and how they could be written using the Solace PubSub+ Messaging API for Python instead.

Just recently, Solace Developer Community member, Daniel Curtis wrote a blog post “Visualizing Live Streamed Data with Python and Solace PubSub+”. In it, Daniel articulates a use case of tracking NYC taxis using Pandas DataFrames, fed by a streaming subscription to a PubSub+ Event Broker topic, and visualized using Bokeh on a dashboard featuring a map. Daniel used the Paho MQTT Python API for this as the Solace PubSub+ Messaging API for Python was not yet available. He could just as easily have used the new API. The advantages of using Solace PubSub+ Messaging API for Python over an open standard protocol library like Paho MQTT is the ability to use advanced features of the broker that can’t be easily expressed using another open standard library.

Do you have an event-driven use case that would be best implemented in Python and fully utilize the power and breadth of the PubSub+ Platform? It is time to use our new PubSub+ Messaging API for Python!

And this 1.0.0 version of Solace PubSub+ Messaging API for Python is just the beginning. Future releases will add even more features such as request/reply helpers, Kerberos client authentication, session transactions and more. Solace developers are working hard on the Python API to enhance the feature set and cover more use cases. Stay tuned for future releases of this brand new API.

Andrew MacKenzie

Andrew is a Product Manager at Solace, mainly focusing on data movement to/from the PubSub+ Platform with connectors and APIs. Andrew brings over 25 years of enterprise software industry experience in business intelligence, digital content protection and supply chain analytics. Outside of work, Andrew is a fan of all things cycling (road, mountain biking, BMX), an avid PC gamer and a hobby developer who contributes to various open source software projects.

Join Our Developer Community

Join the Solace Developer Community to discuss and share PubSub+ API hints, new features, useful integrations, demos, and sample code!

JOIN THE DISCUSSION