<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Celery on Caktus Group</title><link>https://www.caktusgroup.com/tags/celery/</link><description>Recent content in Celery on Caktus Group</description><generator>Hugo</generator><language>en</language><lastBuildDate>Mon, 09 Dec 2024 23:00:00 +0000</lastBuildDate><atom:link href="https://www.caktusgroup.com/tags/celery/index.xml" rel="self" type="application/rss+xml"/><item><title>Getting Started with Dagster</title><link>https://www.caktusgroup.com/blog/2024/12/09/getting-started-dagster/</link><pubDate>Mon, 09 Dec 2024 23:00:00 +0000</pubDate><guid>https://www.caktusgroup.com/blog/2024/12/09/getting-started-dagster/</guid><description>&lt;p>Recently, Caktus has been using Tailscale to manage VPN connections
between Android tablets and a central server. We wanted to report on the
devices connected to the network using the Tailscale API. While we could
use tools like &lt;a href="https://docs.celeryq.dev/en/stable/" target="_blank" rel="noopener noreferrer">Celery&lt;/a> to fetch
data from the API and load it into a database&amp;mdash;given its widespread use
in the Django ecosystem&amp;mdash;we also wanted to explore other options.&lt;/p></description></item><item><title>How to Use Celery for Scheduling Tasks</title><link>https://www.caktusgroup.com/blog/2021/08/11/using-celery-scheduling-tasks/</link><pubDate>Wed, 11 Aug 2021 18:14:40 +0000</pubDate><guid>https://www.caktusgroup.com/blog/2021/08/11/using-celery-scheduling-tasks/</guid><description>&lt;p>There are multiple ways to schedule tasks in your Django app, but there
are some advantages to using Celery. It&amp;rsquo;s supported, scales well, and
works nicely with Django. Given its wide use, there are also lots of
resources for learning more about it, and once learned, that knowledge
is likely to be useful on other projects.&lt;/p></description></item><item><title>How to Schedule Tasks Using Celery Beat in a Container</title><link>https://www.caktusgroup.com/blog/2020/05/14/how-schedule-tasks-using-celery-beat-container/</link><pubDate>Thu, 14 May 2020 12:30:00 +0000</pubDate><guid>https://www.caktusgroup.com/blog/2020/05/14/how-schedule-tasks-using-celery-beat-container/</guid><description>&lt;p>When running services in a container, changes to files can be discarded
at any time, but the Celery beat default scheduler keeps its state in a
file.&lt;/p></description></item><item><title>Don't keep important data in your Celery queue</title><link>https://www.caktusgroup.com/blog/2016/10/18/dont-keep-important-data-your-celery-queue/</link><pubDate>Tue, 18 Oct 2016 19:53:34 +0000</pubDate><guid>https://www.caktusgroup.com/blog/2016/10/18/dont-keep-important-data-your-celery-queue/</guid><description>&lt;p>The Celery library (&lt;a href="https://www.caktusgroup.com/blog/tags/celery/">previous posts&lt;/a>) makes it as
easy to schedule a task to run later as calling a function. Just change:&lt;/p></description></item><item><title>PyCoder's Weekly: Caktus Included in Top Projects and Articles of 2014</title><link>https://www.caktusgroup.com/blog/2015/01/16/pycoders-weekly-caktus-included-top-projects-and-articles-2014/</link><pubDate>Fri, 16 Jan 2015 20:02:09 +0000</pubDate><guid>https://www.caktusgroup.com/blog/2015/01/16/pycoders-weekly-caktus-included-top-projects-and-articles-2014/</guid><description>&lt;p>The weekly Python e-mail newsletter, &lt;a href="http://pycoders.com/" target="_blank" rel="noopener noreferrer">Pycoder’s Weekly&lt;/a> included Caktus Developer Dan Poirier’s post, &lt;a href="http://www.caktusgroup.com/blog/2014/09/29/celery-production/" target="_blank" rel="noopener noreferrer">Celery in Production&lt;/a> on their list of the best articles and projects of 2014! &lt;a href="http://pycoders.com/2014/" target="_blank" rel="noopener noreferrer">Take a look at their list&lt;/a> and be sure to revisit &lt;a href="http://www.caktusgroup.com/blog/2014/09/29/celery-production/" target="_blank" rel="noopener noreferrer">Dan&amp;rsquo;s post&lt;/a>.&lt;/p></description></item><item><title>Celery in Production</title><link>https://www.caktusgroup.com/blog/2014/09/29/celery-production/</link><pubDate>Mon, 29 Sep 2014 12:00:00 +0000</pubDate><guid>https://www.caktusgroup.com/blog/2014/09/29/celery-production/</guid><description>&lt;p>(Thanks to &lt;a href="https://www.caktusgroup.com/about/mark-lavin/">Mark Lavin&lt;/a> for significant
contributions to this post.)&lt;/p>
&lt;p>In a &lt;a href="https://www.caktusgroup.com/blog/2014/06/23/scheduling-tasks-celery/">previous post&lt;/a>, we
introduced using Celery to schedule tasks.&lt;/p>
&lt;p>In this post, we address things you might need to consider when planning
how to deploy Celery in production.&lt;/p></description></item><item><title>PyOhio Recap: Celery with Python</title><link>https://www.caktusgroup.com/blog/2014/08/11/PyOhio-Recap-Celery-with-Python/</link><pubDate>Mon, 11 Aug 2014 11:07:39 +0000</pubDate><guid>https://www.caktusgroup.com/blog/2014/08/11/PyOhio-Recap-Celery-with-Python/</guid><description>&lt;p>&lt;a href="http://www.caktusgroup.com/about/caleb-smith" target="_blank" rel="noopener noreferrer">Caleb Smith&lt;/a> recently gave a talk, “Intro to Celery,” at PyOhio (video below). Celery is a pretty &lt;a href="http://www.caktusgroup.com/blog/search/?q=celery" target="_blank" rel="noopener noreferrer">popular topic&lt;/a> for us here at Caktus. We use it often in our client work and find it very handy. So we were happy Caleb was out in the world, promoting its use. We sat down with him to hear more about &lt;a href="http://www.pyohio.org/" target="_blank" rel="noopener noreferrer">PyOhio&lt;/a> and Celery.&lt;/p></description></item><item><title>Getting Started Scheduling Tasks with Celery</title><link>https://www.caktusgroup.com/blog/2014/06/23/scheduling-tasks-celery/</link><pubDate>Mon, 23 Jun 2014 11:00:00 +0000</pubDate><guid>https://www.caktusgroup.com/blog/2014/06/23/scheduling-tasks-celery/</guid><description>&lt;p>&lt;strong>UPDATE:&lt;/strong> &lt;a href="https://www.caktusgroup.com/blog/2021/08/11/using-celery-scheduling-tasks/">A newer version of this blog post is available for Celery
Version
5.0.x&lt;/a>.&lt;/p>
&lt;h2 id="getting-started-using-celery-for-scheduling-tasks">Getting Started Using Celery for Scheduling Tasks&lt;/h2>
&lt;p>Many Django applications can make good use of being able to schedule
work, either periodically or just not blocking the request thread.&lt;/p></description></item><item><title>Using strace to Debug Stuck Celery Tasks</title><link>https://www.caktusgroup.com/blog/2013/10/30/using-strace-debug-stuck-celery-tasks/</link><pubDate>Wed, 30 Oct 2013 19:56:31 +0000</pubDate><guid>https://www.caktusgroup.com/blog/2013/10/30/using-strace-debug-stuck-celery-tasks/</guid><description>&lt;p>&lt;a href="http://www.celeryproject.org/" target="_blank" rel="noopener noreferrer">Celery&lt;/a> is a great tool for background
task processing in &lt;a href="https://www.djangoproject.com/" target="_blank" rel="noopener noreferrer">Django&lt;/a>. We use it
in a lot of the custom web apps we build at Caktus, and it's quickly
becoming the standard for all variety of task scheduling work loads,
from simple to highly complex.&lt;/p></description></item><item><title>Using Django and Celery with Amazon SQS</title><link>https://www.caktusgroup.com/blog/2011/12/19/using-django-and-celery-amazon-sqs/</link><pubDate>Mon, 19 Dec 2011 16:26:48 +0000</pubDate><guid>https://www.caktusgroup.com/blog/2011/12/19/using-django-and-celery-amazon-sqs/</guid><description>&lt;p>Amazon's &lt;a href="http://aws.amazon.com/sqs/" target="_blank" rel="noopener noreferrer">Simple Queue Service&lt;/a> (SQS) is a
relatively new offering in the family of Amazon Web Services (AWS).
It's also an appealing one, because it proposes to quickly and easily
replace a common component of the stack in a typical web application,
thereby obviating the need to run a separate queue server like
&lt;a href="http://www.rabbitmq.com/" target="_blank" rel="noopener noreferrer">RabbitMQ&lt;/a>. While RabbitMQ &amp;mdash; the typical
favorite for Celery users &amp;mdash; is not necessarily difficult to install or
maintain, removing it from the stack of a web application means one less
component that might fail, offloading that service to AWS &amp;mdash; especially
for applications with a small to moderate queue volume &amp;mdash; might prove
financially advantageous.&lt;/p></description></item><item><title>An alternative RapidSMS router implementation (with Celery!)</title><link>https://www.caktusgroup.com/blog/2011/07/18/alternative-rapidsms-router-implementation-celery/</link><pubDate>Mon, 18 Jul 2011 18:00:00 +0000</pubDate><guid>https://www.caktusgroup.com/blog/2011/07/18/alternative-rapidsms-router-implementation-celery/</guid><description>&lt;p>We've been using &lt;a href="http://www.rapidsms.org/" target="_blank" rel="noopener noreferrer">RapidSMS&lt;/a>, a Django-powered
SMS framework, &lt;a href="http://www.caktusgroup.com/mobile-health/" target="_blank" rel="noopener noreferrer">more&lt;/a> and
&lt;a href="http://www.caktusgroup.com/blog/2010/12/29/hiv-results-birth-reminders-and-clinic-communication-malawi/" target="_blank" rel="noopener noreferrer">more&lt;/a>
frequently here at Caktus. It's evolved a lot over the past year--
from being reworked to feel more like a Django app, to
&lt;a href="http://groups.google.com/group/rapidsms/browse_thread/thread/526a752d695e85d2/c1075330937e1791?lnk=gst&amp;amp;q=core#c1075330937e1791" target="_blank" rel="noopener noreferrer">merging&lt;/a>
the rapidsms-core-dev and rapidsms-contrib-apps-dev repositories into a
single codebase (no more submodules!), to finally becoming installable
via
&lt;a href="http://groups.google.com/group/rapidsms/browse_thread/thread/19820972177b7845/1d1886cae96eb0c8?lnk=gst&amp;amp;q=pypi#1d1886cae96eb0c8" target="_blank" rel="noopener noreferrer">pypi&lt;/a>.
The &amp;quot;new core&amp;quot; is in a great state now and is much easier to work
with. However, one particular aspect of RapidSMS, the route process, has
always been complicated and confusing to deal with. Tobias began the
conversation on this
&lt;a href="http://groups.google.com/group/rapidsms/browse_thread/thread/18b053d468e699f3#" target="_blank" rel="noopener noreferrer">issue&lt;/a>
after returning from a 6-week long UNICEF project in Zambia.
He &lt;a href="https://github.com/rapidsms/rapidsms/wiki/Router-decoupling-and-HTTP-message-processing" target="_blank" rel="noopener noreferrer">summarized&lt;/a> the
route process like so:&lt;/p></description></item></channel></rss>