Hacker Newsnew | past | comments | ask | show | jobs | submit | xiljin's commentslogin

There are several options but Puma seems to be the most popular at the moment.

A derivative of Unicorn named Pitchfork is also in the works from Shopify - https://github.com/Shopify/pitchfork


Megadosing B6 can lead to B6 toxicity/syndrome as a result of its longer half life and ability to accumulate in the system. Between multivitamins, energy drinks, preworkouts and food, it's very easy to go well above the recommended amount. I'm currently recovering from B6 induced peripheral neuropathy (tingling in my feet) caused by 20-50mg/day over several years.

https://en.wikipedia.org/wiki/Megavitamin-B6_syndrome


I've been using Sidekiq for years, rock solid and no complaints.

However, this recent addition to the space seems to be gaining traction and appears to have an excellent feature set -

https://github.com/bensheldon/good_job


Yeah I'm a big fan of Good Job too.

As long as you stick to pure ActiveJob features it really shouldn't be too difficult to scale from in memory based queue to PostgresSQL backed Good Job and then to Redis backed Sidekiq if and only if you need to.


Yes, I wanted a PG-based one and reached for Good Job on a new project since it was recently created and with Active Job in mind from the start. Check out the intro:

https://island94.org/2020/07/introducing-goodjob-1-0


The problem with postgres-backed queues is they can't be used with connection pooling, so your workers are unnecessarily using up DB connections.


I thought that was an ActiveRecord problem. We use MYSQL and have a lot of long-lived connections.


Not sure how it works with MySQL, but with postgres the most common pooling options use transactional mode, which doesn't support LISTEN/NOTIFY.


rocket job is pretty solid too, has a lot of the pro sidekiq features for free https://rocketjob.io/


Without the pro version it's not reliable:

> If a Sidekiq process crashes while processing a job, that job is lost. [0]

We use Sidekiq Pro at work but I find it unfortunate that reliability is a pro feature. It's really hard to tell a product owner: Yeah, we might lose a few jobs once in a while.

[0] https://sidekiq.org/products/pro.html


Seems like a good reason to pay Mike.


agree. its not a lot of money, or it didn't used to be last time I looked. If your org relies heavily on it just pay


I just looked this up. It's $995/year, or approximately 4% of the fully loaded cost of an FTE software engineer at most companies. i.e. about 3 weeks of a developer's time.


I understand paying extra for niche features. Isn't reliability a core feature of background job software?


We do pay for it.

Perhaps you could address my point? Open source background job software that isn't reliable by default? That makes sense?


Back around 2000, I was writing software patches for a large telecom company. These patches had to be applied to live, inservice telephone switches and equipment that were powering public phone services - restarts and downtimes were not an option. Needless to say, careful consideration had to be given with regard to how a patch was developed and applied.

I don't recall the specifics, but one fateful patch had a very large compound boolean expression that included an invalid condition. For whatever reason, that expression didn't or couldn't receive 100% test coverage.

When applied, this patch took down the entire phone service (including emergency 911) for the island of Newfoundland Canada and all its residents (maybe 300-500k people).

The immediate fix was simply a new patch that reverted the bad patch. Unfortunately, it took several hours from the point we learned of the issue to writing, delivering and applying the fix.

I've heard that Newfoundlanders have a reputation for being very friendly, so I like to believe that all has been forgiven and forgotten and that I may one day visit the island in peace.


I discovered PostgreSQL in a similar happenstance sort of way - working at a large telecom directly out of college in the late 90s, tasked with setting up a MySQL backed webapp to manage some internal processes. Fortunately, I was unable to compile MySQL on our HPUX workstations (issue with threads IIRC), PostgreSQL to the rescue. Been using it ever since.


Self-Monitoring, Analysis and Reporting Technology for HDDs -

https://en.wikipedia.org/wiki/S.M.A.R.T.


Don't forget that he was also quite a wordsmith (NSFW) -

http://textfiles.com/groups/CDC/cDc-0050.txt


Warning: NSFW ^

(though cool, NSFW)


We're currently using Crystal 0.25.1 with the Kemal web framework to provide an online paycheck calculator for US based employees (it's basically a demo/tool for our SaaS based accounting, payroll and fund raising app).

Really impressed with the language so far and hope to expand its use within our organization.


I'm the creator of Kemal, glad to see that you're liking it :)


We use FreeBSD in production (SaaS accounting/payroll app) as a load balancing proxy/web server (Nginx) and outgoing mail server (OpenSMTPD) because it's a stable, proven OS with sane defaults. Thanks to OpenBSD, we get an awesome firewall (PF) and dead simple OpenSMTPD mail server (total config is around 25 lines which gives us DKIM signing and PKI with no additional software).

At home, FreeBSD is used as a HTPC (Kodi), file server and backup box (it acts like a Time Machine for our Macs via netatalk and for Linux we use rsnapshot over NFS).


For me, also a VIM kind of guy, Atom lets me use VIM movement keys in the file/project pane which grants me total mouse freedom.

Another Atom bonus is that file additions, deletions and changes are flagged in the file/project pane.


> Atom lets me use VIM movement keys

Really!? That's neat, I didn't know that one. So it makes it modal, like you have to do 'i' to change to insert mode?

Movement keys, but what about editing? I frequently use 'y'ank and 'p'aste, 'C'hange/'c'hange un't'il.


Check out https://atom.io/packages/vim-mode-plus (fork of the deprecated vim-mode plugin) plus https://atom.io/packages/ex-mode or https://atom.io/packages/vim-mode-plus-ex-mode, if you want to use the `:` key.

These do a good job of providing VIM mode, but I just learned about the file/project pane vim mode. Will try that out latter.

You will have to do some config changes if you want the commands from other plugins to feel more natural in vim-mode.

---

Sidenote: I love vim, and use Atom for certain types of projects, but the vim-mode in Atom just never felt right, so I don't use it any more. Now that I know about some of the other neat things it can do, plus the ex-mode support, I might go back to using it again. The second I start using vim mode, I naturally start thinking I am in vim itself, and commands like `:wq` are muscle memory. Hate it when there is a commit message with `:wq` at the end, or I run the program and a crash occurs because of a rogue `:wq`.


There are a few vim extensions for vscode that are pretty good.


Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: