Pitchfork: Rack HTTP server for shared-nothing architecture

This page summarizes the projects mentioned and recommended in the original post on news.ycombinator.com

InfluxDB - Power Real-Time Data Analytics at Scale
Get real-time insights from all types of time series data with InfluxDB. Ingest, query, and analyze billions of data points in real-time with unbounded cardinality.
www.influxdata.com
featured
SaaSHub - Software Alternatives and Reviews
SaaSHub helps you find the best software and product alternatives
www.saashub.com
featured
  • pitchfork

  • Puma

    A Ruby/Rack web server built for parallelism

  • I'm the author of the original 'refork' feature introduced to Puma a couple years ago [1], that served as an inspiration for this project.

    As I understand it, Pitchfork is an implementation of a reforking feature on top of Unicorn, a single-threaded multi-process Rack HTTP server.

    The general idea of 'reforking' is that in addition to pre-forking worker processes at initialization time, you re-fork them on an ongoing basis, in order to optimize copy-on-write efficiency across processes, especially for memory allocations that might happen after initialization. The Pitchfork author mentions sharing YJIT machine code as a particularly important use-case [2], one that has become relevant in recent Ruby releases.

    I never saw much interest in the concept when I originally introduced the reforking feature to Puma, and it remained a kind of interesting experiment that never saw much production uptake. I'm thrilled that Shopify is iterating on the concept through this project and I hope the technique will continue to be refined and developed, and see broader adoption as a result.

    [1] https://github.com/puma/puma/pull/2099

  • InfluxDB

    Power Real-Time Data Analytics at Scale. Get real-time insights from all types of time series data with InfluxDB. Ingest, query, and analyze billions of data points in real-time with unbounded cardinality.

    InfluxDB logo
  • c2rust

    Migrate C code to Rust

  • There are some tools specific to some transformations at least:

    https://c2rust.com/

  • falcon

    A high-performance web server for Ruby, supporting HTTP/1, HTTP/2 and TLS. (by socketry)

  • Could you command on any projects within Shopify that are helping Ruby's concurrency story? I'm aware of Ractors (https://docs.ruby-lang.org/en/master/ractor_md.html) and Fibers, but it's unclear to how feasible these primitives currently are to build the necessary abstractions on top of them that would make Rails more concurrent.

    https://github.com/socketry/falcon is an interesting project, but again, it's not clear how difficult it would be deploying a Rails app on top of this.

    There's a lot of really great projects happening and plenty to be hopeful about, but when that stuff will land or the changes the rest of the community and ecosystem should think about making still isn't clear.

  • FrameworkBenchmarks

    Source for the TechEmpower Framework Benchmarks project

  • PHP vs Ruby in web benchmark across multiple frameworks.

    https://www.techempower.com/benchmarks/#section=data-r21&l=z...

  • SaaSHub

    SaaSHub - Software Alternatives and Reviews. SaaSHub helps you find the best software and product alternatives

    SaaSHub logo
NOTE: The number of mentions on this list indicates mentions on common posts plus user suggested alternatives. Hence, a higher number means a more popular project.

Suggest a related project

Related posts

  • Would you consider Rails as stable nowadays ?

    2 projects | /r/rails | 8 Dec 2023
  • Hosting Rails App on AWS

    2 projects | /r/rails | 27 Jun 2023
  • Recommended way to implement Puma plugin configuration

    1 project | /r/ruby | 2 Jun 2023
  • Write your own Domain Specific Language in Ruby

    2 projects | dev.to | 6 Feb 2023
  • Welcome to Puma 6: Sunflower

    1 project | /r/hypeurls | 22 Oct 2022