Uploaded image for project: 'mod_cluster'
  1. mod_cluster
  2. MODCLUSTER-556

Consider protobuf-c to replace shm slotmem and allow multiple httpd instances state sharing

    XMLWordPrintable

Details

    Description

      Lemme leave it here for future coding spree:

      • shm is PITA, any update of data model is very scary
      • the only description of data is in code, our structures and additional meta data like timestamps
      • adding and removing records from shm causes leftover artifacts that are not cleaned up
      • meticulous locking on shm access is a bottleneck, it is making httpd slower than Java Undertow implementation when it comes to huge concurrency
      • storing and loading data structures as Google Protocol Buffers would allow for httpd processes to behave as actors, sending and receiving messages and thus achieve much higher level of concurrency than locking a single shared mem file
      • furthermore, it would actually allow multiple httpd instances to share mod_proxy_cluster state, blurring the difference between httpd child processes and separate httpd instances
      • Google Protocol Buffers https://developers.google.com/protocol-buffers/
      • protobuf-c (plain C) https://github.com/protobuf-c/protobuf-c

      Attachments

        Activity

          People

            mbabacek1@redhat.com Michal Karm
            mbabacek1@redhat.com Michal Karm
            Votes:
            0 Vote for this issue
            Watchers:
            3 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: