Comments (3)
Quoting from @indutny:
Bud has a master->workers architecture. Each worker has a pipe shared with master (the pipe is technically a socketpair()). The master sends IPC messages on this pipe, which are usually just a one-byte kBudIPCBalance messages. However this channel may (and should) be used for transferring the config file and the keys too, and this is a blocker for a stdin configuration file.
Here is a relevant header file and some lines of it:
https://github.com/indutny/bud/blob/master/src/ipc.h#L25-L29
So, on a technical note, what needs to be performed (at least this how I see it):
Master sends some files on which the JSON configuration does depend (like keys, certs).
Worker stores them in some hashmap in memory
Master sends the configuration file itself
Worker loads it and, instead of loading files from disc, loads files from that hashmap (see config.c for all details)
from bud.
I think it is done now.
from bud.
👍 good stuff.
from bud.
Related Issues (20)
- DDoS resilience HOT 1
- bud not building again... HOT 2
- Add lets encrypt integration using sni challenge. HOT 4
- `npm i -g bud` requires legacy version of node? HOT 1
- Protocol agnostic? HOT 1
- Configuration for multiple frontends mapping 1:1 to multiple backends
- "gypkg build" encounter error HOT 1
- Getting client cert's distinguished name HOT 6
- Collecting data about bud usage HOT 5
- daemon flag causes bud not to run at all HOT 3
- bud build "succeeds" but the binary is not valid HOT 18
- Install fails on SmartOS: Ninja prebuild step does not detect platform HOT 1
- iOS Safari fails to connect when bud uses SNI/contexts and automatically disables SSL resumption cache HOT 2
- Lots of segfaults HOT 59
- Set non-random TLS ticket keys on dynamical SNI contexts.
- Retry async SNI requests
- Another segfault with SNI HOT 1
- bud leaks memory HOT 13
- SNI context LRU cache
- cert_cb not triggered when client sends valid TLS ticket HOT 1
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from bud.