Shopify / Shopify/shipit-engine

Production Guidance

Open
#854 5 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
Ruby
Stars
1.5k
Forks
154
Avg merge
2h 26m
Merged PRs (30d)
3

Description

Is there any sort of guidance available for deploying a shipit installation to production? We got our shipit installation up and running, and for all intents and purposes it seems to work.

However, there seems to be something going on when we launch this in production behind nginx and a load balancer. After a handful of requests, the shipit application seems to hang. I suspect this has to do with my configuration of Puma and nginx, but I'm not entirely sure how to resolve it.

I see a bunch of logs like this:

I, [2018-12-07T19:59:46.960891 #8060]  INFO -- : [Pubsubstub::StreamAction] Starting heartbeat
I, [2018-12-07T19:59:46.961431 #8060]  INFO -- : [Pubsubstub::Subscription] Connecting client #7750495252574393681 (stack.4)
D, [2018-12-07T19:59:46.961553 #8060] DEBUG -- : [Pubsubstub::Subscription] Sending event #1544212786961 to client #7750495252574393681
I, [2018-12-07T19:59:46.961000 #8060]  INFO -- : [Pubsubstub::StreamAction] Starting subscriber
I, [2018-12-07T19:59:46.965115 #8060]  INFO -- : [Pubsubstub::Subscriber] Subscribed to *.pubsub
I, [2018-12-07T19:59:51.095810 #8060]  INFO -- : [Pubsubstub::Subscription] Connecting client #12530072831261279246 (stack.4)
D, [2018-12-07T19:59:51.095899 #8060] DEBUG -- : [Pubsubstub::Subscription] Sending event #1544212791095 to client #12530072831261279246
I, [2018-12-07T19:59:54.324114 #8060]  INFO -- : [Pubsubstub::Subscription] Connecting client #4240903384686625976 (stack.4)
D, [2018-12-07T19:59:54.324189 #8060] DEBUG -- : [Pubsubstub::Subscription] Sending event #1544212794324 to client #4240903384686625976
I, [2018-12-07T19:59:55.794921 #8060]  INFO -- : [Pubsubstub::Subscription] Connecting client #1068417308053608841 (stack.4)
D, [2018-12-07T19:59:55.795003 #8060] DEBUG -- : [Pubsubstub::Subscription] Sending event #1544212795794 to client #1068417308053608841
I, [2018-12-07T19:59:58.054863 #8060]  INFO -- : [Pubsubstub::Subscription] Connecting client #15653348681481192242 (stack.4)
D, [2018-12-07T19:59:58.054943 #8060] DEBUG -- : [Pubsubstub::Subscription] Sending event #1544212798054 to client #15653348681481192242
D, [2018-12-07T20:00:01.961373 #8060] DEBUG -- : [Pubsubstub::Subscription] Sending event #1544212801961 to client #1068417308053608841
D, [2018-12-07T20:00:01.961484 #8060] DEBUG -- : [Pubsubstub::Subscription] Sending event #1544212801961 to client #4240903384686625976
D, [2018-12-07T20:00:01.961572 #8060] DEBUG -- : [Pubsubstub::Subscription] Sending event #1544212801961 to client #7750495252574393681
D, [2018-12-07T20:00:01.961624 #8060] DEBUG -- : [Pubsubstub::Subscription] Sending event #1544212801961 to client #15653348681481192242
D, [2018-12-07T20:00:01.961756 #8060] DEBUG -- : [Pubsubstub::Subscription] Sending event #1544212801961 to client #12530072831261279246
D, [2018-12-07T20:00:16.961546 #8060] DEBUG -- : [Pubsubstub::Subscription] Sending event #1544212816961 to client #7750495252574393681
D, [2018-12-07T20:00:16.961862 #8060] DEBUG -- : [Pubsubstub::Subscription] Sending event #1544212816961 to client #4240903384686625976
I, [2018-12-07T20:00:16.961960 #8060]  INFO -- : [Pubsubstub::Subscription] Disconnecting client #7750495252574393681
I, [2018-12-07T20:00:16.962196 #8060]  INFO -- : [Pubsubstub::Subscription] Disconnecting client #4240903384686625976
D, [2018-12-07T20:00:16.961659 #8060] DEBUG -- : [Pubsubstub::Subscription] Sending event #1544212816961 to client #15653348681481192242
D, [2018-12-07T20:00:16.961737 #8060] DEBUG -- : [Pubsubstub::Subscription] Sending event #1544212816961 to client #12530072831261279246
D, [2018-12-07T20:00:16.961778 #8060] DEBUG -- : [Pubsubstub::Subscription] Sending event #1544212816961 to client #1068417308053608841
I, [2018-12-07T20:00:16.971113 #8060]  INFO -- : [Pubsubstub::Subscription] Disconnecting client #12530072831261279246
I, [2018-12-07T20:00:16.971196 #8060]  INFO -- : [Pubsubstub::Subscription] Disconnecting client #1068417308053608841

Any advice?

Contributor guide

No contributing guide indexed for this repository

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

The issue names no repository files, tests, or entry points. Start by reviewing the production deployment configuration involving Puma, nginx, the load balancer, and the reported Pubsubstub logs. Done means providing actionable production deployment guidance and clarifying the cause or resolution of the application hang.

Written by the indexing model from the issue text.

Assessment

Tech stack
nginx, ruby
Domain
devops, infrastructure
Issue type
Documentation
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
20/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.